网络协议学习

十四.网络协议学习笔记 对称加密_非对称加密_数字签名_证书

2021-08-03  本文已影响0人  crazyfox

如何加密解密

对称加密(Symmetric Cryptography)

常见对称加密
DES
是一种将 明文加密成 密文的对称加密算法,密钥长度是56bit
规格上来说,密钥长度是64bit ,但每隔7bit 会设置一个用于错误检查的bit ,因此密钥长度实质上是56bit
由于 每次只能加密 64bit的数据,遇到比较大的数据,需要对 DES加密进行迭代(反复)
目前已经可以在短时间内被破解,所以不建议使用
每次给64位数据加密,密钥56位+8位校验位,效率低,可破解
3DES
DES3次,3把密钥,加密-解密-加密过程
AES
取代DES的对称加密算法
密钥配送问题
对称加密时,加密过的消息发给Bob
Bob需要密钥才能完成解密
发送密钥过程中,密钥可能会被窃取

如何解决密钥配送问题

非对称加密

公钥,私钥
统称密钥对

解决密钥配送问题
消息接收者生成密钥对
消息发送者用公钥加密数据,发送给接收者,接收者用私钥解密

RSA
最广泛的非对称加密RSA

混合密码系统

对称加密缺点
不能解决密钥配送问题

非对称加密缺点
加密解密速度慢

混合密码系统:将对称加密和非对称加密优势结合的方法
解决了非对称加密速度慢的问题
通过非对称加密解决了对称加密的密钥配送问题

网络上密码通信所用的SSL/TLS运用了混合密码系统

混合密码-加密解密过程

发送过程
A生成密钥对
A把公钥给B
B生成一个会话密钥
B用会话密钥加密信息
会话密钥用公钥加密
B把加密信息和用公钥加密过的会话密钥一起发给A

接收过程
A用私钥解密传过来的加密会话密钥,获取会话密钥
用会话密钥解密加密过的信息,获得A的发送信息

数字签名

确保消息真实性,识别篡改,伪装,否认

生成签名
消息发送者用自己的私钥加密信息S,和信息一起传给接收者
验证签名
接收者用发送者的公钥解密S,和信息对比,一致就是真实的

证书 Certificate

公钥证书
姓名,邮箱,公钥
认证机构(Certificate Authority,CA)施加数字签名

流程
A生成密钥对
A把公钥在CA注册,CA用自己的私钥签名,生成A的证书,包括A的姓名,公钥
B从CA获取A的证书,用CA的公钥解密,然后看是否对的上,对上就获取了A的公钥
B用A的公钥加密消息发送给A

上一篇 下一篇

猜你喜欢

热点阅读