日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

RSA算法原理——(1)目前常见加密算法简介

發布時間:2024/9/30 编程问答 31 豆豆
生活随笔 收集整理的這篇文章主要介紹了 RSA算法原理——(1)目前常见加密算法简介 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

??艾倫·麥席森·圖靈在二戰期間主要負責破譯德國人的密碼系統Enigma,破解密碼需要大量的計算,圖靈深知工欲善其事必先利其器的道理,于是一臺叫作CO-LOSSUS的計算機在1943年被研制出來,后來這種電子計算機總共生產了10臺,他們出色完成了密碼破譯工作。

??后來甚至有人將二戰勝利原因歸咎于圖靈機的誕生,雖然有些夸大,但圖靈機的誕生確實加快了二戰的結束這是不可否認的。而圖靈機戰勝的不是法西斯,而是戰勝了德國人的密碼系統Enigma,而1976年以前都是使用對稱加密的,所以圖靈機也就是戰勝了對稱加密算法。
(6.23號是艾倫·麥席森·圖靈的誕辰,感興趣的同學可以看看電影《模仿游戲》,影片改編自安德魯·霍奇斯編著的傳記《艾倫·圖靈傳》)

??故事講完了,而今天我要給大家講的是另外一種加密算法:非對稱加密。而RSA就是其中的一種,也是非對稱加密使用到最廣泛的一種。其實RSA算法只是非常簡單的一個公式,沒有學過高數的同學照樣可以搞懂其原理,只要你和我一樣有一顆喜歡探索的心!!!

我把內容主要分為了三大塊,為什么這么分呢?這樣可以讓我們循序漸進的去了解rsa,然后一步一步的揭開rsa的面紗。

一、目前常見加密算法簡介
二、RSA算法介紹及數論知識介紹
三、RSA加解密過程及公式論證

一、目前常見加密算法簡介

目前常見的加密算法可以分成三類,對稱加密算法,非對稱加密算法和Hash算法。

注意Base64編碼只是一種編碼格式并不是加密算法,它可用于在HTTP環境下傳遞較長的標識信息。

1.對稱加密

??1976年以前,所有的加密方法都是同一種模式即對稱加密,它采用了對稱密碼編碼技術。它的特點是文件加密和解密使用相同的密鑰,即加密密鑰也可以用作解密密鑰,這種方法在密碼學中叫做對稱加密算法,對稱加密算法使用起來簡單快捷,密鑰較短,且破譯困難,除了數據加密標準(DES),另一個對稱密鑰加密系統是國際數據加密算法(IDEA),它比DES的加密性好,而且對計算機功能要求也沒有那么高。IDEA加密標準由PGP(Pretty Good Privacy)系統使用。對稱加密又分為流加密與分組加密這里就不展開講了,感興趣的同學可以自行了解。

對稱加密的特點:

  • 優點:對稱加密算法的優點是算法公開、計算量小、加密速度快、加密效率高。
  • 缺點:在數據傳送前,發送方和接收方必須商定好秘鑰,然后雙方保存好秘鑰。如果一方的秘鑰被泄露,那么加密信息也就不安全了
  • 使用場景:本地數據加密、https通信、網絡傳輸等
  • 常見算法:AES、DES、3DES、DESX、Blowfish、IDEA、RC4、RC5、RC6

2.非對稱加密

??1976年,兩位美國計算機學家Whitfield Diffie 和 Martin Hellman,提出了一種嶄新構思,可以在不直接傳遞密鑰的情況下,完成解密。這被稱為“Diffie-Hellman密鑰交換算法”。這個算法啟發了其他科學家。人們認識到,加密和解密可以使用不同的規則,只要這兩種規則之間存在某種對應關系即可,這樣就避免了直接傳遞密鑰。這種新的加密模式被稱為”非對稱加密算法”。

非對稱加密特點:

  • 優點:非對稱加密與對稱加密相比其安全性更好
  • 缺點:加密和解密花費時間長、速度慢,只適合對少量數據進行加密。
  • 使用場景:https會話前期、CA數字證書、信息加密、登錄認證等
  • 常見算法:RSA、ECC(移動設備用)、Diffie-Hellman、El Gamal、DSA(數字簽名用)

3.Hash算法

??Hash算法特別的地方在于它是一種單向算法,用戶可以通過Hash算法對目標信息生成一段特定長度的唯一的Hash值,卻不能通過這個Hash值重新獲得目標信息。因此Hash算法常用在不可還原的密碼存儲、信息完整性校驗等。

hash算法特點:

  • 優點:不可逆、易計算、特征化
  • 缺點:可能存在散列沖突
  • 使用場景:文件或字符串一致性校驗、數字簽名、鑒權協議
  • 常見算法:MD2、MD4、MD5、HAVAL、SHA、SHA-1、HMAC、HMAC-MD5、HMAC-SHA1

加密算法的選擇

  • 對稱加密算法不能實現簽名,因此簽名只能非對稱算法。
  • 驗證文件或字符一致性用hash算法
  • 數據量大用對稱加密算法、小則可以用非對稱加密
  • 還可以非對稱與對稱集成,參考https請求原理
  • RSA建議采用1024位的數字,ECC建議采用160位,AES采用128為即可。

總結

以上是生活随笔為你收集整理的RSA算法原理——(1)目前常见加密算法简介的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。