首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >DSA需要填充吗?

DSA需要填充吗?
EN

Security用户
提问于 2013-03-01 12:51:29
回答 1查看 832关注 0票数 0

所以我在维基百科上读到数字签名需要填充(比如PSS),我知道这对RSA来说是正确的。但是现在我问自己DSA也需要填充吗?

EN

回答 1

Security用户

回答已采纳

发布于 2013-03-01 14:44:34

简短的回答是“否”或“是”,这取决于你如何看待它。

使用PKCS#1中指定的RSA,首先对要签名的消息进行散列,并将哈希值“转换”为整数模n(其中n是模,RSA密钥对的一部分)。在标准的旧版本中,这种转换实际上是一种填充(额外的字节连接到哈希值,结果被解释为具有大端惯例的整数模n)。较新的填充物,称为"PSS",是有点复杂,意味着更多的工作比单纯的级联,但我们仍然称为“填充”,大部分是脱离传统。

填充的细节对于RSA作为签名方案的安全性非常重要( RSA的模幂是可锻铸,这是签名的一个问题,填充修复是这样的)。

在DSA中,正如FIPS 186-3中所指定的,输入消息也会被散列,哈希值也被转换成一个模整数(模q,键使用的子组的大小)。这需要将“某些字节”转换为“整数”,这也可以称为“填充”(它并不比将PSS称为“填充”更荒谬)。DSA对此转换的要求非常少,因此它使用一个相当简单的转换过程定义:通过添加零(在“左”上),哈希值被截断或扩展到q的长度(以位为单位);然后将得到的字节序列转换为整数(大端惯例再次),并减少模q(因为序列是为了匹配q的长度,这种缩减在计算上很容易)。

所以我们可以说在DSA中有一些填充,但是一个简单的填充只有零。

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

https://security.stackexchange.com/questions/31763

复制
相关文章

相似问题

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