首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >RSA签名验证是如何工作的?

RSA签名验证是如何工作的?
EN

Cryptography用户
提问于 2013-08-21 11:47:16
回答 1查看 169.8K关注 0票数 91

我理解RSA算法是如何用于加密和解密的,但我不知道签名是如何完成的。

以下是我(认为)我所知道的,也是常见的做法:

  • 如果我有要签名的消息,我不会对消息本身签名,而是创建一个散列,然后使用我的私钥对该哈希进行签名。
  • 签名被附加到消息,并且两者都被转移到收件人。
  • 收件人重新计算邮件的散列,然后使用我的公钥验证他收到的签名。

以下是问题:

  • 为什么通常会创建消息的散列并对其签名,而不是直接对消息进行签名?
  • 重要的是,这是我真正开始挠头的地方:如果公钥似乎足以重新创建签名,那么收件人如何才能确认我拥有私钥?
EN

回答 1

Cryptography用户

发布于 2017-02-28 06:06:15

重要的是,这是我真正开始挠头的地方:如果公钥似乎足以重新创建签名,那么收件人如何才能确认我拥有私钥?

您可以使用public keysignature进行“加密”(或“解密”,在“教科书”RSA中是相同的),并获得hashed message。如果hashed message等于散列message,那么您将验证正确签名的message

但是,不能使用public keymessage重新创建能够通过上述验证的signature

对于“教科书”RSA,我的意思是https://www.cs.cornell.edu/courses/cs5430/2015sp/notes/rsa_签名_vs_dec.php

票数 11
EN
页面原文内容由Cryptography提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://crypto.stackexchange.com/questions/9896

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档