次の方法で共有


IX509PublicKey::ComputeKeyIdentifier メソッド (certenroll.h)

ComputeKeyIdentifier メソッドは、公開キーの 160 ビット SHA-1 ハッシュから識別子を作成します。

構文

HRESULT ComputeKeyIdentifier(
  [in]  KeyIdentifierHashAlgorithm Algorithm,
  [in]  EncodingType               Encoding,
  [out] BSTR                       *pValue
);

パラメーター

[in] Algorithm

キー識別子の作成に使用するハッシュ アルゴリズムを指定する KeyIdentifierHashAlgorithm 列挙の値。

この値が SKIHashDefault または SKIHashSha1 の場合、識別子はキーを含むバイト配列のみをハッシュし、Distinguished Encoding Rules (DER) タグ、長さ、未使用のビット フィールドを除外することによって作成されます。

この値が SKIHashCapiSha1 の場合、識別子は、タグ、長さ、未使用のビット数、公開キーを含む DER でエンコードされたバイト配列をハッシュすることによって作成されます。

[in] Encoding

pValue パラメーターに含まれるハッシュに適用する Unicode エンコードの種類を指定する EncodingType 列挙値。 既定値はXCN_CRYPT_STRING_BASE64です。

[out] pValue

キー識別子を含む BSTR 変数へのポインター。

戻り値

関数が成功した場合、関数は S_OKを返します。

関数が失敗した場合は、エラーを示す HRESULT 値を返します。 有効な値を次の表に示しますが、これ以外にもあります。 一般的なエラー コードの一覧については、「 共通の HRESULT 値」を参照してください。

リターン コード/値 Description
CERTSRV_E_PROPERTY_EMPTY
アルゴリズム オブジェクト識別子または公開キー パラメーターが見つかりませんでした。

注釈

ComputeKeyIdentifier を呼び出す前に、公開キー オブジェクトを初期化するには、InitializeFromEncodedPublicKeyInfo メソッドまたは Initialize メソッドを呼び出す必要があります。

要件

要件
サポートされている最小のクライアント Windows Vista [デスクトップ アプリのみ]
サポートされている最小のサーバー Windows Server 2008 [デスクトップ アプリのみ]
対象プラットフォーム Windows
ヘッダー certenroll.h
[DLL] CertEnroll.dll

こちらもご覧ください

IX509PublicKey