数字签名和数字认证
图片如果损坏,点击链接:https://www.toutiao.com/i6499688776338506254/
在学习"不对称算法"的时候,我们举了个例子,如何得到对称密钥:使用"博爱"和"新星",这是互联网上两个公司,操作人员通过"博爱"网站访问"新星"网站,
(1)"博爱"网站首先生成一个随机数作为对称加密的密钥。
(2)"博爱"网站向"新星"请求一个公钥
(3)"新星"将公钥发送给"博爱"
(4)"博爱"用"新星"的公钥加密自己的"对称密钥"。发送回"新星"
(5)"新星"得到传输的内容后,用自己的私钥解密,得到"博爱"的对称密钥
这个过程保证了数据的认证和数据的完整性,但是不能保证数据的安全性,即传输的数据被中间人获得后,虽然它不能解密数据,但是可以发一个新的数据。
这个时候,就出现了一种新型的算法:摘要算法
摘要算法的特征是:
一个具备唯一性的内容,用摘要算法计算后,得到的结果也具备唯一性,并且无法从结果反推回原内容长什么样。因为类似于一个文档里的全部内容形成一个简短的摘要(签名),所以叫摘要算法。
"博爱"给"新星"发送内容时,增加一个"签名"
如果"博爱"请求"新星"的时候,这个"新星"公钥就有问题,被人篡改的话,数据还是有危险,针对这种情况,出现了数字证书。
数字证书的作用类似一个中间机构CA,在请求"新星"公钥的时候,"新星"的公钥和相关内容是在CA中注册过,那么"博爱"拿到的就具备安全证书。
比如我们常在浏览器看到各种证书弹出的界面,我们也可以查看,用360浏览器举例子
这里可以查看证书