首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >DSA的安全修改?

DSA的安全修改?
EN

Cryptography用户
提问于 2022-05-28 13:21:46
回答 1查看 53关注 0票数 1

DSA中,我们通过对m上的签名k\in\{1,...,q-1\}进行采样和计算来计算签名D3

r := g^k \bmod p

s := k^{-1}*(m+x*r) \bmod q

在验证过程中,我们计算v:=g^{m*s^{-1}}*y^{r*s^{-1}}\bmod p,然后检查r=v \bmod q

问题:是否可以将k^{-1}排除在s计算之外(即s := m+x*r),然后检查g = v

EN

回答 1

Cryptography用户

回答已采纳

发布于 2022-05-28 14:06:53

问题:是否可以将k^{-1}排除在s计算之外(即s := m+x*r),然后检查g = v

换句话说,检查将是g = g^{ms^{-1}}y^{rs^{-1}}

现在,这将是不安全的;假设我们有一个有效的m签名,也就是说,我们有(m, r, s)值,例如g = g^{ms^{-1}}y^{rs^{-1}}

然后,对于任意消息m',我们可以计算s' = m'm^{-1}sr' = rs's^{-1};我们有g^{m's'^{-1}}y^{r's'^{-1}} = g^{ms^{-1}} y^{rs^{-1}},它是g (因为原始签名是有效的);也就是说,(m', r', s')是伪造的。

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

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

复制
相关文章

相似问题

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