常用的幾種加密算法


 

HTTPS加密傳輸使用的加密和HASH算法

非對稱加密算法:RSA,DSA/DSS

 

非對稱加密: 加密和解密的密鑰是不同的, 分為公鑰和密鑰。
私鑰只有一份,保存在收信人手中, 不會在通信中傳輸, 不會被泄露。公鑰可以有多份, 保存在寫信人手中。
假設客戶端A要與服務器B進行通信。A用公鑰加密, B用私鑰解密。
即使上述過程中公鑰和通信內容都被截獲, 由於沒有服務器B的私鑰, 第三方也無法解開通信內容。

對稱加密算法:AES,RC4,3DES

 

加密和解密的密鑰是相同的。
假設客戶端A與服務器B進行通信。A和B用同一個密鑰進行加密解密。
風險:密鑰一旦被截獲, 通信內容就能夠被破解。

 

HASH算法:MD5,SHA1,SHA256
使用HASH算法校驗內容是否被篡改。

RSA 是一種公鑰密碼算法(非對稱加密)

加密算法:密文 = (明文^E) mod N,其中公鑰為{E,N},即”求明文的E次方的對 N 的余數“
解密算法:明文 = (密文^D) mod N,其中秘鑰為{D,N},即”求密文的D次方的對 N 的余數“
例:我們已知公鑰為{5,323},私鑰為{29,323},明文為300,請寫出加密和解密的過程:

加密:密文 = 123 ^ 5 mod 323 = 225
解密:明文 = 225 ^ 29 mod 323 = [[(225 ^ 5) mod 323] * [(225 ^ 5) mod 323] * [(225 ^ 5) mod 323] * [(225 ^ 5) mod 323] * [(225 ^ 5) mod 323] * [(225 ^ 4) mod 323]] mod 323 = (4 * 4 * 4 * 4 * 4 * 290) mod 323 = 123

 

 

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM