对对称加密算法非对称加密算法数字签名的一些理解的简述
Posted purelaw
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了对对称加密算法非对称加密算法数字签名的一些理解的简述相关的知识,希望对你有一定的参考价值。
不太严谨的概括性描述
对称加密算法
加密解密都是同一个密钥,所以需要让接受密文方事先知道密钥,而事先知道的方式一般通过网络或者预先存储在物理机器上,网络通信容易被获取,所以不安全。非对称加密算法
会生成公钥
和私钥
,如果用私密对一个明文进行加密,目的是为了证明给“拿了它的公钥对密文解密的人”知道,这段信息是发布这个公钥的人发的;而如果用公钥对一个明文进行加密,目的是为了证明给“这个公钥对应的私钥的所有者”知道,这段信息是要发给他的。- 以上两种方法都无法无视直接地从物理上获取密钥/私钥(其实貌似什么算法都没办法避免,但
非对称加密算法
可以无视网络上通信上被获取公钥的情况) 数字签名
为的就是证明一段内容“是我发的,也是要发给你的”的一种双重加密方法。
对称加密算法
由对称加密算法生成,生成的数量有可能是一个,也有可能是两个(有没有更多的我没了解过,这里只是代表值不一样,但是作用依旧一样),经常会遇到有人说,对称加密算法生成的密钥只有一种,是因为“对于同一段加密的明文,都可以通过任意一‘个’密钥进行解密”
非对称加密算法
由非对称加密算法生成两个,让别人随便获取的称为公钥,不能给别人知道的是私钥,但这两个密钥本质上并没有区别(在你将这一对密钥公布出去之前)。
因为只要这个公钥与私钥是同时由非对称加密算法生成的,公钥加密的内容,就可以被私钥解密;私钥加密的内容,就可以被公钥解密。
数字签名
为了证明“是我发的,也是要发给你的”,需要甲乙双方各自生成一对非对称加密密钥,并且通过一定的方法,交换双方的公钥。
当甲需要发消息给乙的时候,先将消息用甲私钥
进行加密,证明是自己发的,然后再将消息用乙公钥
进行加密,证明是发给乙的(其实顺序不重要,即使是先用乙公钥
加密,再用甲私钥
加密,效果都一样)。
同理,乙发消息给甲的操作一样。以此来达到“可靠加密传输”。
以上是关于对对称加密算法非对称加密算法数字签名的一些理解的简述的主要内容,如果未能解决你的问题,请参考以下文章
数字签名数字证书对称加密算法非对称加密算法单向加密(散列算法)