首页 > 其他 > 详细

数字签名是什么

时间:2020-05-01 14:54:34      阅读:57      评论:0      收藏:0      [点我收藏+]
用一个小故事来梳理数字签名:

1,鲍勃有两把钥匙,一把公钥一把私钥。
技术分享图片
2,鲍勃把公钥送给他的朋友,帕蒂,道格和苏珊每人一把。
技术分享图片
3,苏珊想给鲍勃写一份保密的信,用鲍勃的公钥加密之后就可以达到保密的效果。
技术分享图片
4,鲍勃收到之后,用鲍勃的私钥解密之后就可以看到信的内容,只要鲍勃的私钥不泄露,这封信就是绝对安全的。
技术分享图片
5,鲍勃想写回信给苏珊,采用数字签名,先用Hash函数生成信件内容的摘要(MD5或者SHA算法)。
技术分享图片
6,鲍勃用私钥对摘要进行加密,生成数字签名
技术分享图片
7,鲍勃将这个签名,附在信件的下面,一起发给苏珊。
技术分享图片

8,苏珊收到信件后,用鲍勃的公钥解密,得到新建的摘要,由此证明这个信件是鲍勃发的(因为只要用鲍勃的私钥加密的才能用鲍勃的公钥解密成功)。
技术分享图片
9,苏珊在用HASH对信件本身内容求摘要,得出来的摘要如果和上一步解密后的摘要想同,就证明这个信的内容未被修改过。
技术分享图片
10,如果道格想欺骗苏珊,偷偷拿走苏珊的电脑,用自己的公钥换走了鲍勃的公钥,此时苏珊实际拥有的是道格的公钥,但她还以为这是鲍勃的。所以道格就可以冒充鲍勃使用自己的私钥进行生成 数字签名,发给苏珊,苏珊用假的鲍勃的公钥进行解密。
技术分享图片
11,后来苏珊觉得不对劲,她觉得她无法确认自己电脑上的公钥是鲍勃的,她想到一个方法,让鲍勃去找证书中心(certificate authority 简称 CA)对他的公钥做认证。证书中心用自己的私钥,对鲍勃的公钥和一些相关信息一起加密,生成数字证书(Digital Certificate)。
技术分享图片
12,鲍勃拿到数字证书后,以后就放心了,以后再给苏珊写信的时候,只要在签名的同时,再附上数字证书就行了。
技术分享图片
13,苏珊收到信后,用CA的公钥解开数字证书,就可以拿到鲍勃真实的公钥了,然后就能证明数字签名是否真的是鲍勃了。
技术分享图片
14,一个应用数字证书的案例:https协议,主要用于网页加密。
技术分享图片
15,一个客户端向服务端发起一个加密请求。
技术分享图片
16,服务端用自己的私钥加密网页之后,连同本身的数字证书一起发给客户端。
技术分享图片
17,客户端(浏览器)的证书管理器,有“受信任的根证书颁发机构”列表,客户端会根据这个列表,查看解开数字证书的公钥是否在列表之内。
技术分享图片
18,如果数字证书记录的网址,和你正在浏览的网址不一样,就说明这张证书可能被冒用,浏览器发出警告。
技术分享图片
19,如果这张数字证书不是由受信任的机构颁发的,浏览器会发出另一种警告。
技术分享图片
20,如果数字证书是可靠的,客户端就可以使用证书中的服务器公钥,对信息进行加密,然后与服务器交换加密信息。
技术分享图片




数字签名是什么

原文:https://www.cnblogs.com/gaojf/p/12813417.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!