2011-01-30 96 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解析器以及文件內容的規格來對其進行解密。

相關問題