次の方法で共有


StrongNameGetPublicKey 関数

更新 : 2007 年 11 月

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

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 のバージョン : 3.5 SP1、3.5、3.0 SP1、3.0、2.0 SP1、2.0、1.1、1.0

参照

参照

StrongNameTokenFromPublicKey 関数

PublicKeyBlob

その他の技術情報

Strong Naming Global Static 関数