首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >不同椭圆曲线签名生成的不同签名

不同椭圆曲线签名生成的不同签名
EN

Stack Overflow用户
提问于 2018-07-30 11:15:19
回答 1查看 1.8K关注 0票数 3

我用椭圆曲线来生成签名。问题是,每次使用相同的密钥对,它都会生成不同的签名。我和ECDsa一样,也试过了弹跳城堡的图书馆。签名可以同时验证,但是每次使用相同的密钥对时,我都希望得到相同的签名。

每次都能做些什么来生成相同的签名呢?或者用椭圆曲线是不可能的?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-07-30 12:11:48

不,标准的DSA是不确定的,这意味着它依赖密码安全的随机数生成器(准确地说,是在维基百科描述的第三步)。

如果常量用于不同的输入,那么ECDSA将泄漏私钥。这是发生在索尼的私钥签署游戏,被德国混沌电脑俱乐部破获 (但只在122页!)。当然,ECDSA无法判断是否使用了相同的数据。

有一种生成RFC 6979,“数字签名算法(DSA)和椭圆曲线数字签名算法(ECDSA)的确定性用法”中指定的ECDSA签名的确定性方法。

您可以使用C#中的以下Bouncy城堡代码来完成这一任务:

代码语言:javascript
复制
ECDsaSigner signer = new ECDsaSigner(new HMacDsaKCalculator(new Sha256Digest()));

这显然是用于区块链技术,如比特币。

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

https://stackoverflow.com/questions/51592748

复制
相关文章

相似问题

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