非对称加密相关概念的学习。
1、摘要
摘要的概念:
1 | graph LR; |
摘要的算法:MD5
,SHA1
,SHA256
,SHA512
等
明文信息可以是任意长度,摘要则是定长。
2、非对称加密
最重要的两个概念,公钥
和私钥
公钥
和私钥
成对出现- 用
公钥
加密,只有私钥
能够解开 - 用
私钥
加密,只有公钥
能够解开
(1)对方用你的公钥加密信息,你收到后用私钥解开。只有你有私钥,所以只有你能解开,换句话说,有私钥才能看到信息,很安全。
(2)你拿私钥加密信息,对方收到后用你的公钥解开。公钥是公开的,所以其他人也可以看到你的信息,不保密。
(3)私钥加密,只有对应公钥能解开。既然用你的公钥能解开,说明加密一定是你的私钥。私钥只有你有,所以一定是你发送的,你不可抵赖。
3、数字签名
1 | graph LR |
我对数字签名的理解,就是利用私钥加密,只有对应的公钥才能解开
来运作的,目的就是确保是你发送的,但是无法确保信息不被窃取,因为公钥是公开的,大家都可以解开。
4、总结
- 公钥是公开的,私钥是私有的,不能泄露
- 使用公钥加密,私钥解密,信息是保密的,但是不保证不被掉包
- 使用私钥加密,公钥解密,可以确保信息是由私钥持有者发来的,但是没法保密。
- 非对称加密比对称加密更加耗时间,而且加密的数据长度有限。
- 为了安全性和兼顾效率,可以结合对称加密,比如DES+RSA
参考:https://www.cnblogs.com/JeffreySun/archive/2010/06/24/1627247.html
https://songlee24.github.io/2015/05/03/public-key-and-private-key/
http://www.ruanyifeng.com/blog/2011/08/what_is_a_digital_signature.html