IX509ExtensionKeyUsage::InitializeEncode メソッド (certenroll.h)

InitializeEncode メソッドは、X509KeyUsageFlags 列挙を使用して拡張機能を初期化します。 このメソッドは Web 対応です。

構文

HRESULT InitializeEncode(
  [in] X509KeyUsageFlags UsageFlags
);

パラメーター

[in] UsageFlags

X509KeyUsageFlags 列挙値。 これは、次のいずれかの値のビットごとの OR の組み合わせにすることができます。

意味
XCN_CERT_DIGITAL_SIGNATURE_KEY_USAGE
このキーは、 デジタル署名アルゴリズム (DSA) と共に使用され、否認、証明書署名、失効リストの署名以外のサービスをサポートします。 多くの場合、DSA は認証に使用されます。
XCN_CERT_NON_REPUDIATION_KEY_USAGE
キーは、署名エンティティによる誤ったアクション拒否から保護する否認不可サービスの一部としてデジタル署名を検証するために使用されます。
XCN_CERT_KEY_ENCIPHERMENT_KEY_USAGE
キーはキー転送に使用されます。 つまり、キーは、元のポイントから実際の使用ポイントに渡されるキーを管理するために使用されます。
XCN_CERT_DATA_ENCIPHERMENT_KEY_USAGE
キーは、暗号化キー以外のユーザー データを暗号化するために使用されます。
XCN_CERT_KEY_AGREEMENT_KEY_USAGE
キーはキーアグリーメントに使用されます。 キー アグリーメントまたはキー交換プロトコルを使用すると、キーを転送することなく、共有シークレットを以前に確立することなく、2 人以上の関係者がキー値をネゴシエートできます。
XCN_CERT_KEY_CERT_SIGN_KEY_USAGE
キーは、証明書の署名を確認するために使用されます。 この値は、 証明機関によって発行された証明書にのみ使用できます。
XCN_CERT_OFFLINE_CRL_SIGN_KEY_USAGE
キーは、オフライン 証明書失効リスト (CRL) 署名を確認するために使用されます。
XCN_CERT_CRL_SIGN_KEY_USAGE
キーは CRL 署名を検証するために使用されます。
XCN_CERT_ENCIPHER_ONLY_KEY_USAGE
キーは、キー アグリーメントの実行中にデータを暗号化するために使用されます。 XCN_CERT_KEY_AGREEMENT_KEY_USAGE値も指定する必要があります。
XCN_CERT_DECIPHER_ONLY_KEY_USAGE
キーは、キー アグリーメントの実行中にデータの暗号化を解除するために使用されます。 XCN_CERT_KEY_AGREEMENT_KEY_USAGE値も指定する必要があります。

戻り値

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

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

リターン コード 説明
HRESULT_FROM_WIN32(ERROR_ALREADY_INITIALIZED)
オブジェクトは既に初期化されています。

注釈

IX509ExtensionKeyUsage オブジェクトを使用するには、InitializeEncode または InitializeDecode を呼び出す必要があります。 2 つのメソッドは相互に補完します。 InitializeEncode メソッドを使用すると、Distinguished Encoding Rules (DER) でエンコードされた抽象構文表記 1 (ASN.1) 拡張オブジェクトを生データから作成できます。InitializeDecode メソッドを使用すると、エンコードされたオブジェクトから生データを初期化できます。

この拡張機能の次のプロパティを取得できます。

  • Critical プロパティは、拡張機能がクリティカルであるかどうかを識別します。 このプロパティを指定することもできます。
  • ObjectId プロパティは、拡張オブジェクト識別子 (OID) を取得します。
  • KeyUsage プロパティは、公開キー (生の拡張データ) の意図された用途を識別する制限を取得します。

要件

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

こちらもご覧ください

IX509ExtensionKeyUsage