openssl简介-指令asn1parse
生活随笔
收集整理的這篇文章主要介紹了
openssl简介-指令asn1parse
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
原文:http://www.blogjava.net/ycyk168/archive/2009/11/27/303932.html?opt=admin
用法:openssl asn1parse [-inform PEM|DER] [-in filename] [-out filename]?
[-noout] [-offset number] [-length number] [-i] [- structure filename]?
[-strparse offset]?
用途:一個診斷工具,可以對ASN1結構的東東進行分析。?
ASN1是什么?一個用來描述對象的標準。要解釋的話,文章可以比解釋openssl結構的文章更長。有興趣的話自己去網絡上找來看吧。?
-inform DER|PEM|TXT?
輸入的格式,DER是二進制格式,PEM是base64編碼格式,TXT不用解釋了吧?
-in filename?
輸入文件的名稱,缺省為標準輸入。?
-out filename?
輸入文件的名稱,輸入一般都是DER數據。如果沒這個項,就沒有東西輸入咯。該項一般都要和-strparse一起使用。?
-noout?
不要輸出任何東西(不明白有什么用)?
-offset number?
從文件的那里開始分析,看到offset就應該知道是什么意思了吧。?
-length number?
一共分析輸入文件的長度的多少,缺省是一直分析到文件結束。?
-i?
根據輸出的數據自動縮進。?
- structure filename?
當你輸入的文件包含有附加的對象標志符的時候,使用這個。?
這種文件的格式在后面會介紹。?
-strparse offset?
從由offset指定的偏移量開始分析ASN1對象。當你碰到一個嵌套的對象時,可以反復使用這個項來一直進到里面的結構捏出你需要的東東。?
一般分析完之后輸入的東東如下:?
openssl asn1parse -out temp.ans -i -inform pem < server.crt?
0:d=0 hl=4 l= 881 cons: SEQUENCE?
4:d=1 hl=4 l= 730 cons: SEQUENCE?
... ....?
172:d=3 hl=2 l= 13 prim: UTCTIME :000830074155Z?
187:d=3 hl=2 l= 13 prim: UTCTIME :010830074155Z?
202:d=2 hl=3 l= 136 cons: SEQUENCE?
205:d=3 hl=2 l= 11 cons: SET?
... ...?
359:d=3 hl=3 l= 141 prim: BIT STRING?
... ...?
本例是一個自簽名的證書。每一行的開始是對象在文件里的偏移量。d=xx是結構嵌套的深度。知道ASN1結構的人應該知道,每一個SET或者SEQUENCE都會讓嵌套深度增加1.?
hl=xx表示當前類型的header的長度。1=xx表示內容的八進制的長度。?
-i可以讓輸出的東西容易懂一點。?
如果沒有ASN.1的知識,可以省略看這一章。?
本例中359行就是證書里的公共密鑰。可以用-strparse來看看?
openssl asn1parse -out temp.ans -i -inform pem -strparse 359 < server.crt?
0:d=0 hl=3 l= 137 cons: SEQUENCE?
3:d=1 hl=3 l= 129 prim: INTEGER :C0D802B4C084B20569C619C0FDF?
466EEB7980920A408D51DA22C20427AC32488665D931C41E3274912DE2F25C8CA9C97B75?
415C01794B622DBEADD92DA068C140C3AD387BF5FDC9A8D2FCEE7F7F3E36B0194994FD67?
07897C8969F16F6ECB3F03BF985E910817160FE5DCBF874B1C0DBD06A568E130DA7C9FE3?
9FE7A7F421369?
135:d=1 hl=2 l= 3 prim: INTEGER :010001?
不要試圖去看temp.ans的內容,是二進制來的,看不懂的。
總結
以上是生活随笔為你收集整理的openssl简介-指令asn1parse的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Shouldn't CSRs autom
- 下一篇: CertEnroll::CX509Enr