以下のASN.1 DER形式の公開鍵があります。
0:d=0 hl=3 l= 181 cons: SEQUENCE
3:d=1 hl=3 l= 144 cons: SEQUENCE
6:d=2 hl=2 l= 0 prim: PRINTABLESTRING :
8:d=2 hl=3 l= 139 prim: OCTETSTRING [HEXDUMP]: <Some Data>
150:d=1 hl=2 l= 32 prim: OCTET STRING [HEX DUMP]:<some data>
PEM形式の公開鍵があります。上記のキー形式にどのように変更しますか?
答え1
PEMファイルは、単にBase64でエンコードされたDERファイルです。あるものから別のものに変換するには、openssl
パラメータを使用できます。それぞれは、または(無視できる古いNetscape形式)のいずれかです。-inform
-outform
PEM
DER
NET
次のコマンドを使用して、キーをある形式から別の形式に変更することができますopenssl rsa
(もちろんRSAキーであると仮定)。
$ openssl rsa -pubin -inform PEM -in <filename of key in PEM format> -outform DER -out <filename of key in DER format>
writing RSA key
その後、次のコマンドを使用してファイルのASN.1エンコーディングを表示できます。
$ openssl asn1parse -inform DER -in <filename of DER file>
0:d=0 hl=3 l= 159 cons: SEQUENCE
3:d=1 hl=2 l= 13 cons: SEQUENCE
5:d=2 hl=2 l= 9 prim: OBJECT :rsaEncryption
16:d=2 hl=2 l= 0 prim: NULL
18:d=1 hl=3 l= 141 prim: BIT STRING
もちろん、キーがRSAキーではない場合は便利ではありませんが、あなたの質問にキータイプが指定されていないので推測します:-)