为什么要在数字签名中加密消息摘要



我正在努力理解以下内容:

为什么密码学中的消息摘要应该使用发件人的私钥加密?

接收方可以使用发送方的公钥对其进行解密,但其他任何人也可以这样做。即使是中间的人,所以我真的不认为从数字签名的意义上加密消息摘要有什么意义。

尝试将加密和签名分离。即使在数学上它们是相似的运算,也有一些重要的区别。我将尝试总结的基本知识

mesage,并使用自己的私钥加密消息摘要

实际上,人员A创建内容的哈希并对该哈希进行签名。这意味着执行解密操作,并使用其私钥进行签名填充,创建签名

现在,人员B将生成消息的哈希值,以将其与消息摘要进行比较。

这是错误的。任何人(任何攻击者(都可以修改/伪造内容并创建有效摘要。

人员B

  • 创建内容的哈希值
  • 验证提供的签名-使用A的公钥加密提供的签名,该公钥应产生哈希和签名填充

但其他人也可以这样做

签名可以确保只有A可以对台面摘要进行签名,因为只有使用私钥,您才能"解密"-创建一个输出;加密";可能导致一些特定的价值(摘要(。

同样重要的是,使用RSA操作的完整规范(PSS填充(,而不是教科书RSA(没有nonce和填充(。否则,如果有人欺骗A解密任何输入,导致创建签名或泄露私钥。

编辑:

为什么用pulic密钥加密不合适

加密可以确保只有收件人才能解密消息,但不会说明谁在发送消息。(A可以相信只有B读到消息,但B可能不确定这是来自A的消息(

签名无疑可以识别发送者。(B可以确定消息是由A发送的(

这种方法(签署直接加密的消息(有一些注意事项,但细节可以在加密操作系统论坛中更好地解释。

最新更新