数字签名和数字证书

来源:互联网 发布:宠物商店淘宝 编辑:程序博客网 时间:2024/06/05 05:09

数字签名和数字证书

可以在文档或者邮件里面插入数字签名。此时需要一个数字ID。下面是数字ID的解释

带有相应私钥的证书也被称为数字ID

导入证书的时候,可能会提示输入生成这个证书和私钥的密码,之后导入到系统中。此时进入证书管理器里面,可以查看到证书的详细信息。如果私钥也成功导入,会在证书信息里面显示“您有一个与该证书对应的私钥“。只有拥有此标记的证书才可以用作”数字签名“。

这里写图片描述

当数字证书被导入到系统了之后,就可以使用它来对文档或者邮件进行数字签名,如下

这里写图片描述

当用户使用Office打开此文档的时候,就会在顶部显示一个“包含数字签名”的信息,并告诉用户当前是“最终版本”。任何对此文档的修改,都将取消这个数字签名。(防篡改)

本质上是一个证书加上一个私钥。签名的时候,使用私钥对内容进行数字签名,并保存在文档中。当邮件被发送的时候,证书会被随着邮件被一起发送。当使用私钥来对文档进行签名时,证书也会被保存到文档里面。其它人打开邮件和文档的时候,都可以用证书来验证签名的有效性。验证成功了之后就可证明这封邮件或者文档的来源即为证书里面所描述的人。逻辑如下

1. 公钥的有效性由颁发证书的机构的公钥来验证,或者进行在线验证。保证了这个公钥是由某机构颁发给指定的人作为指定的用途。而颁布机构在颁布的时候会使用特定的机制来验证这个电子邮件地址确实是属于申请人所有(比如发送确认邮件),才会把证书和私钥都给申请人。

2. 公钥可以验证数字签名,表明这个邮件或者文档确实是由对应的私钥产生的(私钥加密,只能由对应公钥解密)。而拥有这个私钥的,只可能是当初在颁发机构申请此证书的申请人的。也就是说,必然是申请人在上面加入的签名。

以上面两项,就可以保证数字签名的有效性。

同理,HTTPS证书的颁发也是相同的情况。网站所有者需要向CA提供网站域名所有的证明,验证通过之后才会颁布证明,这种验证是比较严格的。

但会发生下面的情况:CA被某黑客组织暗地买下,然后私下任意颁布证书,制作一系列不属于它们的安全电子邮件/客户端身份验证/HTTPS的证书,就可以伪造邮件/文档签名,或者是伪造网站(控制DNS服务器以重定向到另外一个主机,这样域名和证书里面指定的域名可以对应起来),从而攻击用户账户。

这种事件的最终的问题就是出在CA身上。所以,CA这种受信任的颁布机构的信誉非常重要。近年某些CA曾经因为某问题被众多浏览器从受信任的根证书和颁发机构里面除名,自此之后,所有使用了这些CA颁布的证书的网站在打开之后,HTTPS连接的地址栏前面都会变成红色。所以,为了安全性,需要及时更新自己的浏览器来更新安全的CA的列表。而使用Windows系统的IE或者Edge,也请及时更新自己的系统。

0 0