gpt4 book ai didi

cryptography - 找到给定公钥的点和椭圆曲线

转载 作者:行者123 更新时间:2023-12-04 04:43:33 25 4
gpt4 key购买 nike

我正在努力解决这个问题。一旦知道公钥,我想知道使用哪个点和椭圆曲线来生成该公钥。

例如,给定这个 ECC 公钥:
04 6b fb ee c6 9d e7 2c 66 a6 68 ec e1 aa f1 a2 64 a3 c9 b2 88 fb 32 d0 59 e9 2c 3e 5d 5b d4 d7 b5 01 48 78 f4 47 9c 13 c8 83 d0 54 55 5c d9 0e cd 13 6e c4 cc 34 64 89 cd d6 4e 69 43 f3 33 86 4a b9 df e4 42 dc bf 8f 69 c1 9e 71 d0 35 ff 31 7f c0 32 fc 21 55 ca ea a6 5b 49 3d 19 1d 39 9a c0
怎么可能知道哪个点和椭圆曲线被用来生成那个 ECC 公钥?

最佳答案

如果椭圆曲线是 recommended elliptic curves for Federal Government use 之一您可以轻松找到域参数(p,a,b,G,n,h)哪里Gbase point公钥的位长会告诉你曲线名称。

EC公钥是曲线上的一个点,像这样:y^2 = x^3 + ax + b (mod p)哪里p是素数模数。

根据 ANSI X9.62,该点表示为压缩或未压缩形式的八位字节字符串。 .

因此,您提到的示例公钥由 x 坐标和 y 坐标组成:

Public Key = tag + x co-ordinate + y co-ordinate



未压缩形式由 tag = 0x04 表示压缩形式由 tag = 0x02 表示或 tag = 0x03 ( see section 2.2 )

现在,示例公钥可以写为:

04
6bfbeec69de72c66a668ece1aaf1a264a3c9b288fb32d059e92c3e5d5bd4d7b5014878f4479c13c883d054555cd90ecd
136ec4cc346489cdd64e6943f333864ab9dfe442dcbf8f69c19e71d035ff317fc032fc2155caeaa65b493d191d399ac0



每个坐标的长度为 48 字节或 384 位。因此,“似乎”示例公钥来自 EC P-384 曲线。

enter image description here

关于cryptography - 找到给定公钥的点和椭圆曲线,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30640292/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com