IX509PublicKey インターフェイス (certenroll.h)
IX509PublicKey インターフェイスは、公開キーと秘密キーのペアの公開キーを表します。 公開キーは、証明機関 (CA) に送信される証明書要求と、CA から受信した証明書に含まれます。 詳細については、「 公開キーと秘密キーのペア」を参照してください。
証明書登録コントロールは、公開キーと秘密キーをバイト配列に渡します。 次の証明書の例は、RSA 署名アルゴリズム (XCN_OID_RSA_RSA (1.2.840.113549.1.1.1) を使用して作成された 1024 ビット公開キーを示しています。
...
Public Key Algorithm:
Algorithm ObjectId: 1.2.840.113549.1.1.1 RSA (RSA_SIGN)
Algorithm Parameters:
05 00
Public Key Length: 1024 bits
Public Key: UnusedBits = 0
0000 30 81 89 02 81 81 00 8f e2 41 2a 08 e8 51 a8 8c
0010 b3 e8 53 e7 d5 49 50 b3 27 8a 2b cb ea b5 42 73
0020 ea 02 57 cc 65 33 ee 88 20 61 a1 17 56 c1 24 18
0030 e3 a8 08 d3 be d9 31 f3 37 0b 94 b8 cc 43 08 0b
0040 70 24 f7 9c b1 8d 5d d6 6d 82 d0 54 09 84 f8 9f
0050 97 01 75 05 9c 89 d4 d5 c9 1e c9 13 d7 2a 6b 30
0060 91 19 d6 d4 42 e0 c4 9d 7c 92 71 e1 b2 2f 5c 8d
0070 ee f0 f1 17 1e d2 5f 31 5b b1 9c bc 20 55 bf 3a
0080 37 42 45 75 dc 90 65 02 03 01 00 01
...
公開キーは、2 つの大きな素数と 96 ビット指数を乗算して作成された 1024 ビットの剰余で構成されます。 RSA アルゴリズムは、標準の Euclidian 数式の指数と素数を使用して秘密キーを作成します。 同じ公開キーの次の ASN.1 出力を調べることで、剰余と指数をより明確に識別できます。 剰余は符号ビットが設定されているバイト (0x8F) で始まるため、整数が符号なしのままであることを確認するために、0x00が付加されます。 他の公開キー アルゴリズムでは、異なる構成要素から構成される公開キーが作成されます。
30 81 89 ; SEQUENCE (89 Bytes)
02 81 81 ; INTEGER (81 Bytes)
| 00 // Modulus
| 8f e2 41 2a 08 e8 51 a8 8c b3 e8 53 e7 d5 49 50
| b3 27 8a 2b cb ea b5 42 73 ea 02 57 cc 65 33 ee
| 88 20 61 a1 17 56 c1 24 18 e3 a8 08 d3 be d9 31
| f3 37 0b 94 b8 cc 43 08 0b 70 24 f7 9c b1 8d 5d
| d6 6d 82 d0 54 09 84 f8 9f 97 01 75 05 9c 89 d4
| d5 c9 1e c9 13 d7 2a 6b 30 91 19 d6 d4 42 e0 c4
| 9d 7c 92 71 e1 b2 2f 5c 8d ee f0 f1 17 1e d2 5f
| 31 5b b1 9c bc 20 55 bf 3a 37 42 45 75 dc 90 65
02 03 ; INTEGER (3 Bytes)
01 00 01 // Exponent
継承
IX509PublicKey インターフェイスは、IDispatch インターフェイスから継承されます。 IX509PublicKey には、次の種類のメンバーもあります。
メソッド
IX509PublicKey インターフェイスには、これらのメソッドがあります。
IX509PublicKey::ComputeKeyIdentifier 公開キーの 160 ビット SHA-1 ハッシュから識別子を作成します。 |
IX509PublicKey::get_Algorithm 公開キー アルゴリズムのオブジェクト識別子 (OID) を取得します。 |
IX509PublicKey::get_EncodedKey 公開キーを含むバイト配列を取得します。 |
IX509PublicKey::get_EncodedParameters 公開キー アルゴリズムに関連付けられているパラメーターを含むバイト配列を取得します。 |
IX509PublicKey::get_Length 公開キーの長さを取得します。 |
IX509PublicKey::Initialize 公開キー アルゴリズム オブジェクト識別子 (OID) と、公開キーと関連付けられたパラメーターを含むバイト配列 (存在する場合) からオブジェクトを初期化します。 |
IX509PublicKey::InitializeFromEncodedPublicKeyInfo 公開キーを含むバイト配列から オブジェクトを初期化します。 |
要件
要件 | 値 |
---|---|
サポートされている最小のクライアント | Windows Vista [デスクトップ アプリのみ] |
サポートされている最小のサーバー | Windows Server 2008 [デスクトップ アプリのみ] |
対象プラットフォーム | Windows |
ヘッダー | certenroll.h |