如何快速搞懂密码学( 二 )


文章插图
 
M = 2
E = 3
N = 33
明文 “2” 经过 RSA 加密后变成密文 “8”
2.私钥解密公式:

如何快速搞懂密码学

文章插图
 
 
如何快速搞懂密码学

文章插图
 
密文 “8” 经过 RSA 解密后变成了明文 2
 
对称加密和非对称加密的区别:
1. 密钥分发:对称加密分发困难,非对称加密分发简单
2. 效率的问题:对称加密效率比较高,非对称加密效率比较低 。
3. 安全等级:对称加密的安全等级比非对称加密的安全等级低 。
对称加密密钥长度
非对称加密密钥长度
128
2304
112
1792
80
768
64
512
56
384
 
五、单向散列函数
单向散列函数有一个输入和一个输出,其中输入称为message, 输出称为散列值hashvalue,可以计算摘要,获取消息的指纹 。单向散列函数的特性是计算速度非常快 。
(1)SHA-1单向散列函数,所计算出的散列值的长度是160Bit(20字节)
(2)应用:检测软件是否被篡改、消息认证码、数字签名、伪随机性生成器、一次性口令等 。
(3)常用的单向hash散列函数
MD4、MD5、SHA-1、SHA-2、SHA-3,其中MD4、MD5的强抗碰撞性已经被攻破,SHA-2的强抗碰撞性没有被攻破 。
 
如何快速搞懂密码学

文章插图
 
 
 
六、证书
https交互过程中,对非对称加密+对称加密的综合应用 。下面图示为https请求过程:
 
如何快速搞懂密码学

文章插图
 
 
具体流程如下:
(1)client向server发送请求https://baidu.com,然后连接到server的443端口 。
(2) 服务端必须要有数字证书 。
(3)服务端向客户端传送证书 。证书中包含的信息:申请者公钥、申请者的组织信息和个人信息、签发机构 CA 的信息、有效时间、证书序列号,另外还包含一个签名 。
 
 
如何快速搞懂密码学

文章插图
 
 
(4)客户端解析证书
工作是由客户端的TLS完成,首先验证证书是否有效,比如颁发机构,过期时间等 。如果发现异常,则会弹出一个警告框,提示证书存在问题;如果证书没有问题,那么就生成一个随即值(密钥) 。然后用公钥对该随机值进行加密 。
(5)客户端传送加密信息
传送的是用证书中公钥加密后的密钥,目的就是让服务端得到这个密钥,此后,客户端和服务端的通信就可以通过这个随机值(密钥)来进行加密解密(对称加密算法) 。
(6)服务端加密解密信息
服务端用私钥解密密钥,得到客户端传过来的随机值(密钥),然后把内容通过该值进行对称加密 。
(7) 传输加密后的信息 。信息是服务端用私钥加密后的信息 。
(8)客户端解密信息 。客户端用生成的随机值(密钥)解密服务端传过来的信息,获取解密后的内容 。
 
CA签名的真实性流程示意图如下:
 
如何快速搞懂密码学

文章插图
 
 
以上即为本次技术内容分享




推荐阅读