2011-01-30 93 views
1

http://www.faqs.org/rfcs/rfc4253.html
:: HTTP://www.faqs.org/rfcs/rfc4251.html
如何从SSH-RSA提取指数和模量密钥文件

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

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

我有用puttygen创建的rsa密钥文件,但我必须缺少重要的东西。这里是公共部分的六角:

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,但它们的长度不会加起来作为第三个值。

谢谢!

+0

PuTTYgen可以加载并保存为多种文件格式,并且我不清楚您的意思,但您确实知道PuTTY是开源的,对不对?你可以阅读[putty/sshpubk.c](http://svn.tartarus.org/sgt/putty/sshpubk.c?view=markup)。 – ephemient 2011-01-30 03:07:16

+0

谢谢!这正是我所期待的。创建有问题的BLOB的函数是rsa2_public_blob(),位于http://svn.tartarus.org/sgt/putty/sshrsa.c?revision=8202&view=markup 不幸的是,使用PuTTY生成的上面的字节不是那个规范。 – Jordan 2011-01-30 06:33:52

回答

1

它在ASN.1语法。您应该能够使用ASN.1解析器以及文件内容的规格来对其进行解密。

相关问题