gpt4 book ai didi

cryptography - Diffie-Hellman 椭圆曲线私钥的长度

转载 作者:行者123 更新时间:2023-12-04 06:16:34 27 4
gpt4 key购买 nike

我将 FIPS 186-3 推荐的曲线用于 Diffie-Hellman 椭圆曲线。我正在尝试确定私钥的最大长度,根据 RFC 5915 应该是:

天花板 (log2(n)/8) ,其中 n 是曲线的阶数

对于 P-256 曲线,我得到的最大长度为 32,这对应于我在代码中看到的(假设是无符号表示)。但是,对于 P-521 曲线,我的最大长度为 65,但是我的代码中的私钥长度为 66。这是来自 P-521 曲线的一个 66 字节私钥示例:

5367794175793176027889969828113014603157344894208126643379049713388781962338446363455749219733919077469072043715066195336337088038146192289964998476049182286

十六进制:

01 90 59 2F 64 1C 73 AB F8 57 C4 F0 F2 A3 17 DD 5E 5F 64 B1 3C 61 15 8F E2 AC 34 DD 3F FC 6F 9B F1 38 9B 66 3 0F 2F 3 B 66 3 0F 2FE 2 F AC FF 82 BE 36 00 77 7A 92 B1 CB F7 7F 98 6E 4E

公钥是(没有前导 0x04 字节):

01 F0 64 36 14 25 89 F8 7E 0D 5F 0E F9 26 36 D7 5C 4A 45 D7 9C 86 BD F8 C5 B9 A7 AA C4 C2 EB 56 52 DD DD BD BE E1 A0 16 8 A F 8 A F B 16 5A 8 F C0 D7 0A 4D D6 2B AB BD 8E D9 33 7F B1 FF E5 18 00 B2 06 21 D9 DA C1 BA A2 E7 43 69 06 FF 03 2F 05 FC 0E 44 74 B 19 E 7 E 7 F E5 18 00 B2 06 E 7 8C C7 47 D7 02 A5 46 4E 88 32 59 DD 27 DE 72 C2 6D 8D B4 3B D0 45 67 31 AF 8E 1C 30 87 42 38 9F

有人知道为什么可以获得 66 字节长度的私钥吗?根据 FIPS 186-3 文件,P-521 曲线的顺序是:

N = 6864797660130609714981900799081393217269435300143305409394463459185543183397655394245057746333217197532963996371363321113864768612440380340372808892707005449

这给出了上限 (log2(n)/8) = 65。

问候,
-马丁·兰斯勒

最佳答案

根据python(我可能会以某种方式滥用),log2(n)/8 是 65.125,所以它的上限是 66。

并且 n 是 521 位长(正如我假设的那样 - 我通过打印出以“1”开头并具有 131 个十六进制数字的十六进制表示进行检查)。 521/8 是 65.125。

关于cryptography - Diffie-Hellman 椭圆曲线私钥的长度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7162422/

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