總結下對稱加密算法

對稱加密算法

        全部的對稱加密都有一個共同的特色:加密和解密所用的密鑰是相同的。算法

  現代對稱密碼能夠分爲序列密碼和分組密碼兩類:序列密碼將明文中的每一個字符單獨加密後再組合成密文;而分組密碼將原文分爲若干個組,每一個組進行總體加密,其最終加密結果依賴於同組的各位字符的具體內容。也就是說,分組加密的結果不只受密鑰影響,也會受到同組其餘字符的影響。安全

 

 

序列密碼編碼

 

分組密碼加密

  序列密碼的安全性看上去要更弱一些,可是因爲序列密碼只須要對單個位進行操做,所以運行速度比分組加密要快得多。目前的分組密碼都比序列密碼要更安全一點。在實際運用中最常被使用的是分組密碼。這其中應用最經典和最普遍的就是數據加密標準(DES)和高級加密標準(AES)。spa

  在對稱加密算法中經常使用的算法有:DES3DES、AES、TDEA、Blowfish、RC2等。DES加密與AES加密其算法特徵爲:.net

明文 <-> 密鑰 <-> 密文
blog

因此和非對稱加密最大的不一樣就是它能經過密鑰「倒推」解密。ip

常見三種對稱加密算法對比圖以下:get

 

  • DES加密算法:1977年美國標準局(NBS)發佈的數據加密標準(DES),而且在20年內都是美國政府所使用的標準加密方式。它是一種分組密碼,以64位爲分組對數據加密,它的密鑰長度是56位,加密解密用同一算法。但不幸的是2000年高級加密標準AES出來後它就被幹掉了。
  • 3DES(Triple DES):是基於DES的對稱算法,對一塊數據用三個不一樣的密鑰進行三次加密,強度更高;
  • AES加密算法:AES至今仍然是最強大的對稱加密算法,目前還不存在從技術上有效破解AES的方法是密碼學中的高級加密標準,該加密算法採用對稱分組密碼體制,密鑰長度的最少支持爲12八、19二、256,分組長度128位,算法應易於各類硬件和軟件實現。這種加密算法是美國聯邦政府採用的區塊加密標準,AES標準用來替代原先的DES,已經被多方分析且廣爲全世界所使用。

 

使用DES/AES加密時須要瞭解一些參數:it

  • 密鑰長度:128-bit、192-bit、256-bit
  • 加密模式:CBC、ECB、CFB、OFB、CTR
  • 填充方式:pkcs5padding、pkcs7padding、zeropadding、iso102六、ansix923
  • 加密結果編碼方式:base64編碼、16進制編碼

不管什麼語言平臺,AES的算法老是相同的,但加密時設置的參數不一致會致使加密的結果不一樣,但都能用同一密鑰解密出同一個明文。

 

驗證: 在線DES/AES加密

相關文章
相關標籤/搜索