2

SSL x.509証明書の「サブジェクト」が次のように指定されています

Subject:    C=XX, ST=XX, L=XX, O=XX, OU=XX, emailAddress=admin@adobe.pw, CN=trustasia.asia

有線で送信されるときにSSL証明書にあるように、これをバイナリストリームに変換したいのですが、定義サブジェクトフィールドはRFC-5280でASN.1表記で与えられ、x.609で与えられたDERエンコーディングルールはこれを変換することを知っていますフィールドをバイナリ表現に変換し、これらの 2 つのドキュメントをコード( id-at-countryName:2.5.4.6:{0x55, 0x04, 0x06}などの OID の 16 進数表現)からほとんど助けずに、すべての RDN を変換することができました( RelativeDistinguishedNames ) をバイナリ表現に変換しましたが、私はemailAdressフィールドで立ち往生しています。OID:1.2.840.113549.1.9.1を見つけましたが、それが 16 進数表現であることがわかりません。

これをバイナリ表現に変換する方法を教えてください。

4

2 に答える 2

2

ASN.1 Distinguished Encoding Rules (DER) を使用した OID エンコーディングについて話しているのではないかと思います。OBJECT_IDENTIFIER エンコーディング規則に関する詳細情報を取得するには、この記事を確認することをお勧めします: OBJECT IDENTIFIER

OID 文字列値を ASN.1 DER に変換すると、次のようになります。

06 09 2A 86 48 86 F7 0D 01 09 01

ここで、0x06 -- OBJECT_IDENTIFIER タグ識別子、0x09 -- エンコードされた OID 値の長さ (バイト単位)、残りのバイト ( 2A 86 48 86 F7 0D 01 09 01) は OID バイナリ形式を表します

于 2016-03-15T20:04:55.897 に答える
1

emailAddress は IA5String 型であるため、件名に示されているのと同じ形式で証明書に表示されます: 「admin@adobe.pw」。

于 2016-03-16T10:34:01.703 に答える