次の方法で共有


StrongNameGetPublicKey 関数

更新 : 2010 年 7 月

公開キーと秘密キーのペアから公開キーを取得します。 キーのペアは、暗号化サービス プロバイダー (CPS) 内のキー コンテナー名として供給されるか、バイトの生のコレクションとして供給されます。

この関数は、.NET Framework Version 4 では推奨されていません。 代わりに、ICLRStrongName::StrongNameGetPublicKey メソッドを使用してください。

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

パラメーター

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

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

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

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

  • cbKeyBlob
    [入力] pbKeyBlob のサイズ (バイト単位)。

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

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

戻り値

正常終了した場合は true を返します。それ以外の場合は false を返します。

解説

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

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

必要条件

プラットフォーム: 「.NET Framework システム要件」を参照

ヘッダー : StrongName.h

ライブラリ: MsCorEE.dll にリソースとして格納されていること

.NET Framework のバージョン: 4、3.5 SP1、3.5、3.0 SP1、3.0、2.0 SP1、2.0、1.1、1.0

参照

参照

ICLRStrongName インターフェイス

PublicKeyBlob 構造体

その他の技術情報

ICLRStrongName::StrongNameGetPublicKey メソッド

ICLRStrongName::StrongNameTokenFromPublicKey メソッド

履歴の変更

日付

履歴

理由

2010 年 7 月

推奨される代替の関数へのリンクを追加。

情報の拡充