如何从SSH-RSA密钥文件中提取指数和模数

时间:2011-01-30 02:53:12

标签: ssh rsa

http://www.faqs.org/rfcs/rfc4253.html
:: HTTP://www.faqs.org/rfcs/rfc4251.html

有谁知道SSH密钥文件格式?

!! UPDATE
!我使用的base64功能不起作用。通过另一个函数(mozilla内置atob())运行密钥文件后,数据符合上面列出的规范。

我有使用puttygen创建的密钥文件,但我必须遗漏一些关键的东西。这是公共部分的十六进制:

00 00 00 07 73 73 68 2d 72 73 61 00 00 00 01 25
00 00 00 10 1c 1c 57 3f 4f 58 63 69 38 ad 19 35
b5 28 3d 78 53 35 53 6c 15 0e 69 23 ac 17 14 84
21 29 13 07 36 62 90 26 37 93 73 17 28 b8 ce 95
c3 11 24 21 61 b7 82 d9 04 42 97 f8 27 c3 44 06
46 ca e8 a3 a3 34 d7 3c c3 95 13 dd 16 1b 2c 29
7c 35 19 5f c2 7a 17 d5 14 0d 26 36 27 18 71 67
8d 9c 5b c4 7d 

前4个字节是UINT 7,后面的字符串“ssh-rsa”中的字节数,但之后格式停止有意义。它应该跟随两个MPINT,但它们的长度不会累加到第三个值。

谢谢!

1 个答案:

答案 0 :(得分:1)

它是ASN.1语法。您应该能够使用ASN.1解析器以及文件内容的规范来解密它。