首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Ed25519与X25519的公钥生成

Ed25519与X25519的公钥生成
EN

Cryptography用户
提问于 2019-12-02 21:14:46
回答 1查看 2.3K关注 0票数 4

据我理解,EdDSA使用了Curve25519的一个细微的变体(通常用于ECDH),称为Ed25519。

给定相同的私钥,这两种算法之间的差异是否足以使X25519和Ed25519之间产生的公钥有所不同?

换句话说,如果我编写代码来生成私钥/公钥对,那么是否需要为EdDSA/ to 25519和ECDH/X 25519分别实现?

澄清:我意识到EdDSA要求使用ECDH/X 25519没有指定的沙-512级。我很好奇,对于标量乘法步骤的给定输入,公钥是否是相同的。

EN

回答 1

Cryptography用户

回答已采纳

发布于 2019-12-02 21:49:01

公钥表示是相关的,但不是相同的。如果没有额外的处理,它们就不能互换使用。

这些曲线在出生时是等价的;曲线上的一个点在另一条曲线上是等价的。

因此,给定一个EdDSA公钥和/或私钥,您可以计算一个X25519等效项。these等库提供了执行这些计算的功能。

当然,它也是相反的工作方式,尽管这是稍微复杂一些,因为符号不存在于编码的X25519键中。

还有其他的选择。其中之一是在两个操作中使用相同的曲线。在DH中使用Ed25519没有任何问题。

如果您需要的是存储一个单独的秘密,您可以简单地将其用于两个操作。您将获得2个公钥,但考虑到它们有多小,这很少是一个问题。

说到这里,存储一个合并的64字节密钥而不是32字节密钥真的是一个问题吗?对于大多数应用程序,它很少是这样的。

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

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

复制
相关文章

相似问题

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