加密算法的安全級別

轉載的: html

今天在網上看到一個關於加密算法的安全性及破解複雜度的表格,特摘錄下來以便往後參考使用,原表是英文的,這裏直接翻譯成中文方便查閱。另外還找了一些關於密碼學相關的信息,附錄在後。 git

加密算法的安全級別(Security Level of Cryptographic Algorithms) 算法

安全級別
(Security Level)
安全

工做因素
(Work Factor)
函數

算法
(Algorithms)
性能

薄弱(Weak)加密

O(240)spa

DES, MD5翻譯

傳統(Legacy)htm

O(264)

RC4, SHA-1

基準(Baseline)

O(280)

3DES

標準(Standard)

O(2128)

AES-128, SHA-256

較高(High)

O(2192)

AES-192, SHA-384

超高(Ultra)

O(2256)

AES-256, SHA-512

注:上表中的"工做因素(Work Factor)"能夠理解爲破解的算法複雜度。

關於密碼學相關的一些信息:

密碼學散列散列函數
哈希算法MD4, MD5, SHA
對稱加密DES, IDEA, RC2, RC4, SKIPJACK, RC5, AES
非對稱加密RSA, ECC

  已經證明較容易破解的算法(不安全算法):MD4, MD5, SHA-0, SHA-1, DES

   理論上大部分的算法基本上都是能夠破解的,只是須要不少臺計算機並行運算很長時間才能破解。密鑰越長,須要耗費的資源越多,以此來提升破解的成本,因爲 成本太高致使不進行攻擊或採用旁道攻擊。同時密鑰越長加解密的成本也會隨之提升,因此能夠根據信息的價值和保密要求來選擇合適的算法。

  哈希算法是不可逆算法,可是存在碰撞可能,速度較快;對稱加密使用一個密鑰進行加解密;非對稱加密使用公鑰和私鑰進行加解密,速度比對稱加密要更慢,但較安全。一般哈希算法能夠選用 MD5 或 SHA,而對稱加密則能夠選用 3DES 或 AES,非對稱加密則能夠選用 RSA 或 ECC。

  另外須要說明的是,這裏的哈希算法和哈希表中用到的哈希算法稍有不一樣,哈希表中用到的哈希算法不須要高的安全性,可是須要高的性能和高的離散性,因此通常不會採用 MD5 或 SHA 等算法,而是採用更快的哈希算法。

經常使用的加密算法有哪些?

DES(Data Encryption Standard):對稱算法,數據加密標準,速度較快,適用於加密大量數據的場合;

  3DES(Triple DES):是基於DES的對稱算法,對一塊數據用三個不一樣的密鑰進行三次加密,強度更高;

  RC2和RC4:對稱算法,用變長密鑰對大量數據進行加密,比 DES 快;

  IDEA(International Data Encryption Algorithm)國際數據加密算法,使用 128 位密鑰提供很是強的安全性;

  AES(Advanced Encryption Standard):高級加密標準,對稱算法,是下一代的加密算法標準,速度快,安全級別高,如今 AES 標準的一個實現是 Rijndael 算法;  RSA:由 RSA 公司發明,是一個支持變長密鑰的公共密鑰算法,須要加密的文件塊的長度也是可變的,非對稱算法;  DSA(Digital Signature Algorithm):數字簽名算法,是一種標準的DSS(數字簽名標準),嚴格來講不算加密算法;  BLOWFISH,它使用變長的密鑰,長度可達448位,運行速度很快;  MD5:嚴格來講不算加密算法,只能說是摘要算法。MD5以512位分組來處理輸入的信息,且每一分組又被劃分爲16個32位子分組,通過了一系列的處理後,算法的輸出由四個32位分組組成,將這四個32位分組級聯後將生成一個128位散列值。  PKCS:The Public-Key Cryptography Standards (PKCS)是由美國RSA數據安全公司及其合做夥伴制定的一組公鑰密碼學標準,其中包括證書申請、證書更新、證書做廢表發佈、擴展證書內容以及數字籤 名、數字信封的格式等方面的一系列相關協議。  SSF33,SSF28,SCB2(SM1):國家密碼局的隱蔽不公開的商用算法,在國內民用和商用的,除這些都不允許使用外,其餘的均可以使用;  其它算法:ElGamal、Diffie-Hellman、新型橢圓曲線算法ECC等。

相關文章
相關標籤/搜索