SSL双向认证加密技术图解

前言
无论是单、双向加密的方式,对文件的加密最根源都是用的“对称密钥”加密(即一个“密码”)
因为"对称密钥"加密解密的速度、性能、资源损耗都是优于“非对称加密”的 。
而“非对称密钥”主要是用于验证身份 。
一、单向加密
流程说明:
A:
【SSL双向认证加密技术图解】先使用“对称密钥”加密“原文”(得到“密文”),
然后使用“公钥”加密“对称密钥”(得到“数字信封”)
传输
B:
先使用“私钥”解密“数字信封”(得到“对称密钥”),

SSL双向认证加密技术图解

文章插图
然后使用“对称密钥”解密“密文”(得到“原文”)
缺点:
“B公钥”(B提供给A的)容易被别人拿走,然后假装成A给B发文件 。B无法察觉 。
所以,衍生出了双向加密 。
二、双向加密
流程说明:
A:
先对“原文”使用“指定的某个摘要算法”生成“摘要”,再使用“A的私钥”对原文生成的“摘要”进行签名(得到“数字签名”),把“数字签名”附加在“原文”的最后面,
然后使用“对称密钥”加密“原文”(得到“密文”),
最后使用“公钥”加密“对称密钥”(得到“数字信封”) 。
SSL双向认证加密技术图解

文章插图
传输
B:
先使用“私钥”解密“数字信封”(得到“对称密钥”),
然后使用“对称密钥”解密“密文”(得到“原文”),
最后从“原文”中提取出“数字签名”,使用“A的公钥”解密“数字签名”得到“摘要”,同时使用“指定的某个摘要算法”对“原文”生成另一个“摘要”,
最后将两个摘要进行比对,一致即为真实 。
更直观的图如下:
优点
比单向加密多了“A的私钥”和“A的公钥”用于生成“签名” 。
这“两个新钥匙”一般是公认的机构(CA)给二位(A和B)签发的,这样可以确保B收到的是真实的A发送过来的文件,不是伪造的 。