0
爲了執行不對稱加密,Common的Lisp Ironclad庫需要使用指數和模數對密鑰進行初始化。考慮到我可能不想生成密鑰自己,所以站在OpenSSL的巨人的密鑰生成的肩膀我做如何從PEM獲得指數和模數
ssh-keygen -t rsa -C "[email protected]"
檢查生成的文件的費爾我看到它是在PEM格式。
file ~/.id_rsa
=> ~/.ssh/id_rsa: PEM RSA private key
以下一些其他的SO問題,我得到這個
openssl asn1parse -i -in ~/.ssh/id_rsa
0:d=0 hl=4 l=1187 cons: SEQUENCE
4:d=1 hl=2 l= 1 prim: INTEGER :00
7:d=1 hl=4 l= 257 prim: INTEGER :BBFB9E...
268:d=1 hl=2 l= 3 prim: INTEGER :010001
273:d=1 hl=4 l= 256 prim: INTEGER :769BE9...
533:d=1 hl=3 l= 129 prim: INTEGER :ECCB14004...
665:d=1 hl=3 l= 129 prim: INTEGER :CB3B02...
797:d=1 hl=3 l= 128 prim: INTEGER :78054EF...
928:d=1 hl=3 l= 128 prim: INTEGER :0D474BC43....
1059:d=1 hl=3 l= 129 prim: INTEGER :D71D75FF....
現在從有一些帖子說的去做添加-strparse 19(18人)的選項獲取指數和模量。這是我在以下行中出現錯誤的地方:
openssl asn1parse -i -in ~/.ssh/id_rsa -strparse 19
Error parsing structure
140334635108032:error:0D07209B:asn1 encoding routines:ASN1_get_object:too long:asn1_lib.c:142:
140334635108032:error:0D068066:asn1 encoding routines:ASN1_CHECK_TLEN:bad object header:tasn_dec.c:1306:
140334635108032:error:0D06A03A:asn1 encoding routines:ASN1_COLLECT:nested asn1 error:tasn_dec.c:1190:
因此,可能是PEM不處於隔離格式。我也試着用-inform DER。所以問題是我如何從生成密鑰到獲得PEM證書的模數和指數。