加密算法

  • 摘要算法验证数据未被篡改,不能防止偷窥:MD5,SHA

  • 对称加密算法的加密解密密钥相同并且加密解密的速度快:DES,3DES,RC-5,IDEA

  • 非对称加密算法的加密解密的密钥不同,加密解密的速度慢:RSA,ECC

在非对称加密中:私钥加密,只能用公钥解密,用私钥无法解密;同理:用公钥加密就只能用私钥解密。公钥和私钥中有一方加密,必须使用另外一方来解密。

数字签名的原理

签名过程:对消息做摘要,用私钥加密摘要。密文即签名。签名同消息一起发送。

验证:

  1. 用同样的算法对消息做摘要
  2. 用公钥解密密文
  3. 对比1和2的结果

为什么需要对摘要加密:假如第三方攻击者篡改了消息,那么为了避免被发现篡改,就必须篡改对应的摘要,这个时候如果摘要是不加密的,那么接收者无法判断是否消息被篡改;如果摘要加密了,接收者使用公钥解密得到的摘要就和攻击者篡改了的信息用算法计算得到的摘要绝不会相同(因为攻击者无法拿到私钥对摘要加密,就无法控制我们解密的结果),我们就可以判断有人篡改了消息。

非对称加密的两个应用:

  1. 如果我们用公钥加密,然后用私钥解密,这个过程就是加密传输
  2. 如果我们用私钥加密,然后用公钥解密,这个过程就是数字签名

可以看到,数字签名和加密传输是两个相反的过程。

混合使用加密算法

由于非对称加密只适合加密少量的数据,在实际的应用中我们采用这样的一种策略:用非对称加密传输密钥,对称加密传输数据;并且结合摘要算法保障数据完整性。

posted on 2019-10-05 16:25  Frank_Allen  阅读(260)  评论(0编辑  收藏  举报

导航