常用的几种加密算法


 

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