次の方法で共有


StrongNameGetPublicKey 関数

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

この関数は非推奨とされています。 代わりに ICLRStrongName::StrongNameGetPublicKey メソッドを使用してください。

構文

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

パラメーター

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

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

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

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

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

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

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

戻り値

正常に完了した場合は true。それ以外の場合は false

解説

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

StrongNameGetPublicKey 関数が正常に完了しない場合、StrongNameErrorInfo 関数を呼び出し、最後に生成されたエラーを取得します。

必要条件

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

ヘッダー: StrongName.h

ライブラリ: リソースとして MsCorEE.dll に含まれている

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

関連項目