ICLRStrongName::StrongNameGetPublicKey メソッド

公開キーと秘密キーの組から公開キーを取得します。 キーの組は、暗号化サービス プロバイダー (CSP) 内のキー コンテナー名として、またはバイトの未加工のコレクションとして指定できます。

構文

HRESULT StrongNameGetPublicKey (
    [in]  LPCWSTR   szKeyContainer,  
    [in]  BYTE      *pbKeyBlob,  
    [in]  ULONG     cbKeyBlob,  
    [out] BYTE      **ppbPublicKeyBlob,  
    [out] ULONG     *pcbPublicKeyBlob  
);  

パラメーター

szKeyContainer
[in] 公開キーと秘密キーの組を格納するキー コンテナーの名前。 pbKeyBlob が null の場合は、szKeyContainer で CSP 内の有効なコンテナーを指定する必要があります。 この場合、ICLRStrongName::StrongNameGetPublicKey メソッドでは、コンテナーに格納されているキーの組から公開キーが抽出されます。

pbKeyBlob が null でない場合は、キーの組がキーのバイナリ ラージ オブジェクト (BLOB) に格納されていると見なされます。

キーは 1024 ビットの RSA (Rivest-Shamir-Adleman) 署名キーである必要があります。 現時点では、他の種類のキーはサポートされていません。

pbKeyBlob
[in] 公開キーと秘密キーの組へのポインター。 この組は、Win32 CryptExportKey 関数で作成される形式です。 pbKeyBlob が null の場合は、szKeyContainer で指定されたキー コンテナーにキーの組が格納されていると見なされます。

cbKeyBlob
[in] pbKeyBlob のサイズ (バイト単位)。

ppbPublicKeyBlob
[out] 返された公開キー BLOB。 ppbPublicKeyBlob パラメーターは、共通言語ランタイムで割り当てられ、呼び出し元に返されます。 呼び出し元では、ICLRStrongName::StrongNameFreeBuffer メソッドを使用してメモリを解放する必要があります。

pcbPublicKeyBlob
[out] 返された公開キー BLOB のサイズ。

戻り値

メソッドが正常に完了した場合は S_OK、それ以外の場合は失敗を示す HRESULT 値 (リストについては、一般的な HRESULT 値に関するページを参照)。

解説

公開キーは PublicKeyBlob 構造体に格納されています。

必要条件

:システム要件」を参照してください。

ヘッダー: MetaHost.h

ライブラリ: MSCorEE.dll にリソースとして含まれます

.NET Framework のバージョン: 4 以降で使用可能

関連項目