目前,我面临的情况是,Ed448密钥对(私钥+公钥)是可用的,系统应该通过Diffie (ECDH)操作进行扩展。首先,让我总结一下我到目前为止所理解的。
Ed448:是edwards448上的数字签名算法。
X448:是为Curve448构建的Diffie-Hellman函数.
Curve448:是RFC7748中指定的蒙哥马利格式的椭圆曲线。
edwards448:是一条椭圆曲线,由RFC7748中指定的映射与Curve448相关。
对于Curve25519,我阅读了对E 25519的密钥交换?为什么?,对我来说,通过应用定义的映射,可以将现有的Ed25519公钥转换为X25519密钥。不知怎么的,我对这里使用的所有数学并不那么熟悉。后来,我又读了一些书,发现了在密码学中,“出生等效”是什么意思?,它为我提供了更多的见解。然后,我又读了一遍RFC7748,并看到了对Curve448来说,出生等价也是正确的。此外,还有"edwards448“定义,它提供了蒙哥马利和爱德华兹曲线点之间的地图。要使用的地图定义为:
如果我正确理解了上述引用,就应该能够将公钥转换为X448函数中使用的坐标。例外情况是,如果上述方程的x为0,则不能应用映射,也不可能进行转换。此外,与Curve448有关的椭圆曲线密码Ecc章节将我引向相同的方向,即可能转换现有的关键材料,然后再将其用于X448。如果我正确理解它,ECC中的私钥是整数而不是“曲线点”。
现在,我很好奇是否真的有可能转换一个现有的密钥对,这样它就可以用于ECDH,以及如何重用。或者,如果有必要只为ECDH“引入”第二个密钥对。因此,我请求一些帮助,因为我是新的这个话题。
发布于 2022-05-05 18:16:47
https://crypto.stackexchange.com/questions/99974
复制相似问题