什么是数字签名

什么是数字签名

翻译:吴裕华

原文:http://www.youdzone.com/signature.html
在这里插入图片描述
1、Bob 有两把秘钥,一把公钥,一把私钥
在这里插入图片描述
2、Bob 可以把公钥分析给他的同事Pat、Doug、Susan,但是自己保存私钥。而加密后的数据只能匹配的秘钥才能打开。任何一把 Bob 的秘钥都可以用于加密数据,同时则必须使用另一把秘钥来进行解密。

3、Susan 可以用 Bob 分享的公钥加密数据发送给 Bob(如下图所示),然后 Bob 可以用自己的私钥进行解密并读取数据。其他人(如Bob的同事Pat、Doug)即使获取了 Susan 发送的加密数据由于没有私钥进行解密,则无法读取加密的数据内容。
在这里插入图片描述
4、Bob 使用自己的私钥和正确的软件,能够给数据和文档添加数字签名。Bob 的数字签名是独一无二的,并且难以伪造。此外,签名确保对已签名的数据所做的任何更改都不会被检测到。
在这里插入图片描述
5、原始数据进过 hash 加密得到信息摘要(这个过程是单向不可逆的)。
在这里插入图片描述
6、Bob 使用私钥对信息摘要进行加密得到的结果为数字签名。
在这里插入图片描述
7、最后 Bob 在在发送的数据中添加数字签名。
在这里插入图片描述
8、现在当 Bob 发送文档和数字签名发送给 Pat 时,其 Pat 的动作如下所示:

首先,Pat 接收到 Bob 发送的文档和数字签名后使用 Bob 的公钥解密数字签名,能正确进行解密并得到文档信息摘要,则说明该文档是 Bob 发送的。然后使用 hash 算法加密文档数据得到文档信息摘要并与解密数字签名后的文档信息摘要进行比较,如果结果一样则表示 Pat 得到的文档信息没有变更过。

使用上述方式容易造成信息伪造。当 Doug 发送一份签名数据和一个伪造 Bob 的公钥给 Pat 时,Pat 难以确认公钥是否来自于 Bob,但是可以通过认证证书的方式解决该问题。

9、证书认证机构根据 Bob 的相关信息以及公钥为 Bob 创建一个数字证书。
在这里插入图片描述
此时,当 Bob 再次发送签名文档给 Pat 时,Pat 先从证书认证机构上下载公钥解密证书,确保证书的正确性。然后解密证书得到 Bob 的公钥,并用该公钥解密签名信息得到信息摘要,然后个文档的信息摘要进行比较来验证 Bob 发送的签名文档。

参考文献

[1] https://yq.aliyun.com/articles/54155
[2] http://www.ruanyifeng.com/blog/2011/08/what_is_a_digital_signature.html

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值