次の方法で共有


暗号化構造体

暗号化関数では、次の構造が使用されます。 暗号化構造は、使用法に応じて次のように分類されます。

CryptXML 構造体

CryptXML 関数では、次の構造体が使用されます。

構造体 説明
CRYPT_XML_ALGORITHM メッセージの署名または変換に使用するアルゴリズムを指定します。
CRYPT_XML_ALGORITHM_INFO アルゴリズム情報が含まれます。
CRYPT_XML_BLOB 任意のバイト配列を格納します。
CRYPT_XML_CRYPTOGRAPHIC_INTERFACE 実装されている CryptXML 関数を公開するために 、CryptXmlDllGetInterface 関数ポインターに渡されます。
CRYPT_XML_DATA_BLOB XML でエンコードされたデータが含まれます。
CRYPT_XML_DATA_PROVIDER XML データ プロバイダーへのインターフェイスを指定します。
CRYPT_XML_DOC_CTXT ドキュメント コンテキスト情報を定義します。
CRYPT_XML_ISSUER_SERIAL X.509 で発行された識別名とシリアル番号のペアが含まれます。
CRYPT_XML_KEY_DSA_KEY_VALUE デジタル署名アルゴリズム (DSA) キー値を定義します。 CRYPT_XML_KEY_DSA_KEY_VALUE構造体は、CRYPT_XML_KEY_VALUE構造体のキー値共用体の要素として使用されます。
CRYPT_XML_KEY_ECDSA_KEY_VALUE 楕円曲線デジタル署名アルゴリズム (ECDSA) キー値を定義します。 CRYPT_XML_KEY_ECDSA_KEY_VALUE構造体は、CRYPT_XML_KEY_VALUE構造体のキー値共用体の要素として使用されます。
CRYPT_XML_KEY_INFO キー情報データをカプセル化します。
CRYPT_XML_KEY_INFO_ITEM KeyInfo 要素に対応するキー情報データをカプセル化します。 KeyInfo 要素を使用すると、受信者は署名の検証に必要なキーを取得できます。
CRYPT_XML_KEY_RSA_KEY_VALUE RSA キー値を定義します。 CRYPT_XML_KEY_RSA_KEY_VALUE構造体は、CRYPT_XML_KEY_VALUE構造体のキー値共用体の要素として使用されます。
CRYPT_XML_KEY_VALUE 署名の検証に役立つ可能性がある 1 つの 公開キー が含まれています。
CRYPT_XML_KEYINFO_PARAM CryptXmlSign 関数は、エンコードする KeyInfo 要素のメンバーを指定するために使用されます。
CRYPT_XML_OBJECT シグネチャの Object 要素について説明します。
CRYPT_XML_PROPERTY CryptXML プロパティに関する情報を格納します。
CRYPT_XML_REFERENCE Reference 要素の設定に使用される情報が含まれます。
CRYPT_XML_REFERENCES CRYPT_XML_REFERENCE構造体の配列を定義します。
CRYPT_XML_SIGNATURE Signature 要素の設定に使用される情報が含まれます。
CRYPT_XML_SIGNED_INFO 署名の検証状態、 SignedInfo 要素に関する概要状態情報、または Reference 要素の配列に関する概要状態情報に関する情報を返します。
CRYPT_XML_TRANSFORM_CHAIN_CONFIG XML デジタル署名で使用できるアプリケーション定義変換を定義します。
CRYPT_XML_TRANSFORM_INFO データ変換を適用するときに使用される情報が含まれます。
CRYPT_XML_X509DATA X509Data 要素の選択肢のシーケンスを表します。
CRYPT_XML_X509DATA_ITEM X509Data 名前付き要素でエンコードされる X.509 データを表します。

 

一般的な暗号化構造

基本暗号化関数では、次の構造が使用されます。

構造体 説明
CMS_DH_KEY_INFO Diffie-Hellman キー情報を格納するために、CryptSetKeyParam 関数の KP_CMS_DH_KEY_INFO パラメーターと共に使用されます。
CMS_KEY_INFO この構造体は使用されません。
CRYPT_AES_128_KEY_STATE Advanced Encryption Standard (AES) 暗号の 128 ビット対称キー情報を指定します。
CRYPT_AES_256_KEY_STATE AES 暗号の 256 ビット対称キー情報を指定します。
CRYPT_ALGORITHM_IDENTIFIER アルゴリズムの オブジェクト識別子 (OID) とそのアルゴリズムに必要なパラメーターが含まれます。
CRYPT_ATTRIBUTE 1 つ以上の値を持つ属性を指定します。
CRYPT_ATTRIBUTE_TYPE_VALUE 1 つの属性値を含みます。
CRYPT_ATTRIBUTES 属性の配列を格納します。
CRYPT_BIT_BLOB バイトの配列を格納します。
CRYPT_BLOB_ARRAY CRYPT_DATA_BLOB構造体の配列を格納します。
CRYPT_CONTENT_INFO PKCS #7 ContentInfo データ形式でエンコードされたデータが含まれます。
CRYPT_CONTENT_INFO_SEQUENCE_OF_ANY Netscape 証明書の証明書シーケンスを表す情報が含まれます。
CRYPT_DEFAULT_CONTEXT_MULTI_OID_PARA オブジェクト識別子文字列の配列を格納するために CryptInstallDefaultContext 関数と共に使用されます。
CRYPT_ECC_CMS_SHARED_INFO 暗号化メッセージ構文 (CMS) EnvelopedData コンテンツ タイプで楕円曲線暗号化 (ECC) を使用する場合のキー暗号化キー情報を表します。
CRYPT_ENCRYPTED_PRIVATE_KEY_INFO 暗号化された PKCS #8 秘密キーの情報を格納します。
CRYPT_ENROLLMENT_NAME_VALUE_PAIR この構造は、ユーザーに代わって証明書要求を作成するために使用されます。
CRYPT_INTEGER_BLOB 型に適した名前の下に、さまざまな種類のバイナリ ラージ オブジェクトのデータが含まれます。
CRYPT_KEY_LIMITS 実装されていない CryptGetLocalKeyLimits 関数をサポートし、使用しません。 今後のバージョンの Wincrypt.h で削除される予定です。
CRYPT_KEY_PROV_INFO 特定の暗号化サービス プロバイダー (CSP) 内の特定のキー コンテナーへのハンドルを取得したり、キー コンテナーを作成または破棄したりするために、CryptAcquireContext に引数として渡されるフィールドが含まれます。
CRYPT_KEY_PROV_PARAM CryptSetProvParam に引数として渡されるデータを格納します。
CRYPT_KEY_SIGN_MESSAGE_PARA メッセージの署名に使用される CSP とアルゴリズムに関する情報が含まれます。
CRYPT_KEY_VERIFY_MESSAGE_PARA 署名者の証明書のない署名済みメッセージを確認するために必要な情報が含まれます。
CRYPT_MASK_GEN_ALGORITHM RSA PKCS #1 v2.1 署名マスクの生成に使用されるアルゴリズムを識別します。
CRYPT_OBJECT_LOCATOR_PROVIDER_TABLE オブジェクトの場所プロバイダーによって実装される関数へのポインターが含まれています。
CRYPT_PKCS8_EXPORT_PARAMS 秘密キーとコールバック関数へのポインターを識別する情報が含まれています。
CRYPT_PKCS8_IMPORT_PARAMS PKCS #8 秘密キーと、コールバック関数への 2 つのポインターが含まれています。
CRYPT_PKCS12_PBE_PARAMS PKCS #12 パスワード ベースの暗号化アルゴリズムの暗号化キー、初期化ベクトル (IV)、またはメッセージ認証コード (MAC) キーを作成するために使用されるパラメーターが含まれています。
CRYPT_PRIVATE_KEY_INFO PKCS #8 秘密キーの情報を格納します。
CRYPT_PSOURCE_ALGORITHM RSAES-OAEP キー暗号化のアルゴリズムと (必要に応じて) ラベルの値を識別します。
CRYPT_RETRIEVE_AUX_INFO CryptRetrieveObjectByUrl 関数に渡す省略可能な時刻同期情報が含まれます。
CRYPT_RSA_SSA_PSS_PARAMETERS RSA PKCS #1 v2.1 署名のパラメーターが含まれています。
CRYPT_RSAES_OAEP_PARAMETERS RSAES-OAEP キー暗号化のパラメーターが含まれています。
CRYPT_SEQUENCE_OF_ANY エンコードされた BLOB の任意の一覧 含まれます。
CRYPT_SMART_CARD_ROOT_INFO 証明書コンテキストに関連付けられているスマート カードとセッション ID が含まれます。
CRYPT_TIME_STAMP_REQUEST_INFO この構造は、タイム スタンプに使用されます。
CRYPT_URL_INFO URL のグループ化に関する情報が含まれます。
CRYPT_X942_OTHER_INFO 追加のキー生成情報が含まれています。
CRYPTNET_URL_CACHE_FLUSH_INFO URL キャッシュ エントリを維持するために Cryptnet URL Cache (CUC) サービスによって使用される有効期限情報が含まれます。
CRYPTNET_URL_CACHE_PRE_FETCH_INFO URL キャッシュ エントリを維持するために Cryptnet URL Cache (CUC) サービスによって使用される更新情報が含まれます。
CRYPTNET_URL_CACHE_RESPONSE_INFO URL キャッシュ エントリを維持するために Cryptnet URL Cache (CUC) サービスによって使用される応答情報が含まれます。
CRYPT_INTEGER_BLOB この構造体は、任意のバイト配列に使用されます。
CRYPTPROTECT_PROMPTSTRUCT プロンプトのテキストと、 CryptProtectData 関数と CryptUnprotectData 関数を使用するときにプロンプトを表示するタイミングと場所に関する情報 提供します。
CRYPTUI_INITDIALOG_STRUCT CRYPTUI_VIEWCERTIFICATE_STRUCT構造体をサポートします。
CRYPTUI_SELECTCERTIFICATE_STRUCT CryptUIDlgSelectCertificate 関数によって表示されるダイアログ ボックスに関する情報が含まれます。
CRYPTUI_VIEWCERTIFICATE_STRUCT 表示する証明書に関する情報が含まれます。 これは 、CryptUIDlgViewCertificate 関数で使用されます。
CRYPTUI_VIEWSIGNERINFO_STRUCT CryptUIDlgViewSignerInfo 関数の情報が含まれています。
CRYPTUI_WIZ_EXPORT_CERTCONTEXT_INFO 証明書がエクスポートされるオブジェクトである場合の CryptUIWizExport 関数の操作を制御する情報が含まれます。
CRYPTUI_WIZ_EXPORT_INFO CryptUIWizExport 関数の操作を制御する情報が含まれます。
CRYPTUI_WIZ_IMPORT_SRC_INFO CryptUIWizImport 関数にインポートするサブジェクトを格納します。
DHPRIVKEY_VER3 キー BLOB に含まれる特定の秘密キーに固有の情報が含まれます。
DHPUBKEY キー BLOB に含まれる特定のDiffie-Hellman公開キーに固有の情報が含まれます。
DHPUBKEY_VER3 キー BLOB に含まれる特定の公開キーに固有の情報が含まれます。
Diffie-Hellman バージョン 3 の秘密キー BLOB DH 秘密キーに関する情報をエクスポートおよびインポートするために使用されます。
Diffie-Hellman バージョン 3 公開キー BLOB DH 公開キーに関する情報をエクスポートおよびインポートするために使用されます。
DSS バージョン 3 の秘密キー BLOB DH 秘密キーに関する情報をエクスポートおよびインポートするために使用されます。
DSS バージョン 3 の公開キー BLOB DH 公開キーに関する情報をエクスポートおよびインポートするために使用されます。
DSSPRIVKEY_VER3 キー BLOB に含まれる特定の秘密キーに固有の情報が含まれます。
DSSPUBKEY キー BLOB に含まれる特定の公開キーに固有の情報が含まれます。
DSSPUBKEY_VER3 キー BLOB に含まれる特定の公開キーに固有の情報が含まれます。
DSSSEED DSS 公開キーの素数を確認するために使用できるシード値とカウンター値を保持します。
HMAC_INFO ハッシュ アルゴリズムと、ハッシュ ベースのメッセージ認証コード (HMAC) ハッシュの計算に使用される内部および外部の文字列を指定します。
KEYSVC_BLOB キー サービス BLOB を定義します。
KEYSVC_UNICODE_STRING キー サービスの Unicode 文字列を定義します。
OCSP_BASIC_RESPONSE_ENTRY 1 つの証明書の現在の証明書の状態が含まれます。
OCSP_BASIC_RESPONSE_INFO RFC 2560 で指定されている基本的な OCSP 応答が含まれています。
OCSP_BASIC_REVOKED_INFO 証明書が取り消された理由が含まれます。
OCSP_BASIC_SIGNED_RESPONSE_INFO シグネチャを含む基本的な OCSP 応答が含まれています。
OCSP_CERT_ID OCSP 要求または応答で証明書を識別するための情報が含まれています。
OCSP_REQUEST_ENTRY OCSP 要求内の 1 つの証明書に関する情報が含まれます。
OCSP_REQUEST_INFO RFC 2560 で指定されている OCSP 要求の情報が含まれます。
OCSP_RESPONSE_INFO 対応する OCSP 要求の成功または失敗を示します。 成功した要求の場合は、応答情報の型と値が含まれます。
OCSP_SIGNATURE_INFO OCSP 要求または応答の署名が含まれます。
OCSP_SIGNED_REQUEST_INFO 省略可能な署名情報を含む OCSP 要求の情報が含まれます。
PROV_ENUMALGS CryptGetProvParam または CPGetProvParam の呼び出しによって返されます。
PROV_ENUMALGS_EX CryptGetProvParam または CPGetProvParam の呼び出しによって返されます。
PUBLICKEYSTRUC キーの BLOB の種類と、キーで使用されるアルゴリズムを示します。
ROOT_INFO_LUID 暗号化スマート カードルート情報の ローカル一意識別子 (LUID) が含まれています。
RSAPUBKEY キー BLOB に含まれる特定の公開キーに固有の情報が含まれます。
SCHANNEL_ALG アルゴリズムとキー サイズの情報が含まれています。
SIGNER_ATTR_AUTHCODE Authenticode シグネチャの属性を指定します。
SIGNER_BLOB_INFO 署名する BLOB を 指定します。
SIGNER_CERT ドキュメントの署名に使用する証明書を指定します。 証明書は、 ソフトウェア発行元証明書 (SPC) ファイルまたは証明書ストアに格納できます。
SIGNER_CERT_STORE_INFO ドキュメントの署名に使用する証明書ストアを指定します。
SIGNER_CONTEXT 署名付き BLOB が含まれています。
SIGNER_FILE_INFO 署名するファイルを指定します。
SIGNER_PROVIDER_INFO デジタル署名の作成に使用する CSP と秘密キーの情報を指定します。
SIGNER_SIGNATURE_INFO デジタル署名に関する情報が含まれます。
SIGNER_SPC_CHAIN_INFO ドキュメントの署名に使用する ソフトウェア発行元証明書 (SPC) と証明書チェーンを指定します。
SIGNER_SUBJECT_INFO 署名する件名を指定します。

 

一般的な証明書の構造

次の構造体は、多くの証明書関数で使用されます。

構造体 説明
CERT_BIOMETRIC_DATA 生体認証データに関する情報が含まれています。
CERT_BIOMETRIC_EXT_INFO 生体認証情報のセットが含まれています。
CERT_CONTEXT 証明書のエンコードされた表現とデコードされた表現の両方が含まれます。
CERT_CRL_CONTEXT_PAIR 証明書コンテキストと関連付けられた CRL コンテキストが含まれます。
CERT_DH_PARAMETERS Diffie-Hellman 公開キー アルゴリズムに関連付けられているパラメーターが含まれています。
CERT_DSS_PARAMETERS DSS 公開キー アルゴリズムに関連付けられているパラメーターが含まれます。
CERT_ECC_SIGNATURE 楕円曲線デジタル署名アルゴリズム (ECDSA) 署名の r と s の値を格納します。
CERT_EXTENSION 証明書、証明書失効リスト (CRL) または証明書信頼リスト (CTL) の拡張機能情報が含まれます。
CERT_EXTENSIONS 拡張機能の配列を格納します。
CERT_GENERAL_SUBTREE CERT_NAME_CONSTRAINTS_INFO構造で使用されるこの構造体は、含めたり除外したりできる証明書の ID を提供します。
CERT_HASHED_URL ハッシュされた URL が含まれています。
CERT_ID 証明書を一意に識別する柔軟な手段として使用されます。
CERT_INFO 証明書の情報を格納します。
CERT_KEY_CONTEXT CERT_KEY_CONTEXT_PROP_ID プロパティに関連付けられている構造体のValue メンバーの pvData メンバーのデータCERT_EXTENSION格納します。
CERT_KEYGEN_REQUEST_INFO Netscape Keygen 要求に格納されている情報が含まれます。
CERT_LDAP_STORE_OPENED_PARA CERT_STORE_PROV_LDAP プロバイダーが CERT_LDAP_STORE_OPENED_FLAG フラグを使用してクエリの実行に使用する既存の LDAP セッションと LDAP クエリ文字列の両方を指定することによって、CertOpenStore 関数と共に使用されます。
CERT_LOGOTYPE_AUDIO オーディオ ロゴタイプに関する情報が含まれます。
CERT_LOGOTYPE_AUDIO_INFO オーディオ ロゴタイプに関する詳細情報が含まれています。
CERT_LOGOTYPE_DATA ロゴタイプのデータが含まれます。
CERT_LOGOTYPE_DETAILS ロゴタイプに関する追加情報が含まれます。
CERT_LOGOTYPE_EXT_INFO ロゴタイプ情報のセットを含みます。
CERT_LOGOTYPE_IMAGE 画像ロゴタイプに関する情報が含まれます。
CERT_LOGOTYPE_IMAGE_INFO 画像ロゴタイプに関する詳細情報が含まれています。
CERT_LOGOTYPE_INFO ロゴ型データに関する情報が含まれます。
CERT_LOGOTYPE_REFERENCE ロゴタイプの参照情報が含まれます。
CERT_NAME_CONSTRAINTS_INFO 具体的に許可または信頼から除外される証明書に関する情報が含まれます。
CERT_NAME_INFO サブジェクト名または発行者名が含まれます。 情報は、 CERT_RDN 構造体の配列として表されます。
CERT_NAME_VALUE 相対識別名 (RDN) 属性値が含まれます。
CERT_OTHER_LOGOTYPE_INFO 定義済みではないロゴの種類に関する情報が含まれています。
CERT_PAIR 証明書とそのペアクロス証明書が含まれています。
CERT_PHYSICAL_STORE_INFO 物理 証明書ストアに関する情報が含まれています。
CERT_POLICY_CONSTRAINTS_INFO 証明書を信頼済みとして受け入れるための確立されたポリシーが含まれています。
CERT_POLICY_MAPPING 発行者ドメインとサブジェクト ドメイン ポリシー OID の間のマッピングが含まれています。
CERT_POLICY_MAPPINGS_INFO 2 つのドメインのポリシー OID 間のマッピングを提供します。
CERT_PUBLIC_KEY_INFO 公開キーとそのアルゴリズムが含まれています。
CERT_QC_STATEMENT 修飾証明書 (QC) ステートメント拡張に含める 1 つ以上のステートメントのシーケンス内の 1 つのステートメントを表します。
CERT_QC_STATEMENTS_EXT_INFO QC の修飾証明書 (QC) ステートメント拡張を構成する 1 つ以上のステートメントのシーケンスが含まれます。
CERT_RDN CERT_RDN_ATTR構造体の配列で構成される相対識別名 (RDN) が含まれます。
CERT_RDN_ATTR 相対識別名 (RDN) の 1 つの属性が含まれます。
CERT_REQUEST_INFO 証明書要求の情報が含まれます。
CERT_REVOCATION_CRL_INFO CRL 失効型ハンドラーによって更新された情報が含まれます。
CERT_REVOCATION_PARA この構造体は、必要に応じて CertVerifyRevocation に渡して、検証するコンテキストの発行者を見つけるのに役立ちます。
CERT_REVOCATION_STATUS 証明書の失効状態に関する情報が含まれます。
CERT_SELECT_STRUCT 証明書の選択ダイアログ ボックスに表示される証明書を選択する基準が含まれます。 この構造体は、 CertSelectCertificate 関数で使用されます。
CERT_SIGNED_CONTENT_INFO 署名するエンコードされたコンテンツと、署名を保持する BLOB が含まれます。
CERT_STORE_PROV_FIND_INFO この構造体は、ストア プロバイダーのコールバック関数の多くで使用されます。
CERT_STORE_PROV_INFO CertOpenStore でストアを開いたときに、インストールされている CertDllOpenStoreProv によって返される情報が含 まれます
CERT_STRONG_SIGN_PARA 証明書、CRL、OCSP リポジトリ、PKCS #7 メッセージで強力な署名をチェックするために使用されるパラメーターが含まれています。
CERT_STRONG_SIGN_SERIALIZED_INFO 強力な署名に使用できる 署名アルゴリズム/ハッシュ アルゴリズム公開キー アルゴリズム/のビット長 のペアが含まれています。
CERT_SUBJECT_INFO_ACCESS これは、 CERT_AUTHORITY_INFO_ACCESS 構造体のシノニムです。
CERT_SYSTEM_STORE_INFO システム ストアで動作する関数で使用される情報が含まれます。
CERT_SYSTEM_STORE_RELOCATE_PARA 関数の dwFlags パラメーターが CERT_SYSTEM_STORE_RELOCATE_FLAG に設定されている場合に CertOpenStore に渡されるデータを格納します。
CERT_TEMPLATE_EXT この構造は証明書テンプレートです。
CERT_X942_DH_PARAMETERS Diffie-Hellman公開キー アルゴリズムに関連付けられているパラメーターが含まれます。
CERT_X942_DH_VALIDATION_PARAMS この構造体は、必要に応じて 、CERT_X942_DH_PARAMETERS 構造体のメンバーによって指され、追加のシード情報が含まれます。
CMC_ADD_ATTRIBUTES_INFO 証明書に追加する証明書属性が含まれます。
CMC_ADD_EXTENSIONS_INFO 証明書に追加する証明書拡張コントロール属性が含まれます。
CMC_DATA_INFO この構造は、タグ付けされたさまざまな情報を通信する手段を提供します。
CMC_PEND_INFO この構造体は、 CMC_STATUS_INFO 構造体の可能なメンバーです。
CMC_RESPONSE_INFO この構造は、タグ付けされたさまざまな情報を通信する手段を提供します。
CMC_STATUS_INFO CMS 経由の証明書管理メッセージに関する状態情報が含まれています。
CMC_TAGGED_ATTRIBUTE この構造体は、 CMC_DATA_INFO および CMC_RESPONSE_INFO 構造体で使用されます。
CMC_TAGGED_CERT_REQUEST この構造体は、 CMC_TAGGED_REQUEST 構造体で使用されます。
CMC_TAGGED_CONTENT_INFO この構造体は、 CMC_DATA_INFO および CMC_RESPONSE_INFO 構造体で使用されます。
CMC_TAGGED_OTHER_MSG この構造体は、 CMC_DATA_INFO および CMC_RESPONSE_INFO 構造体で使用されます。
CMC_TAGGED_REQUEST この構造体は、証明書を要求するために CMC_DATA_INFO 構造体で使用されます。
CRL_CONTEXT CRL のエンコードされた表現とデコードされた表現の両方が含まれます。
CRL_ENTRY 1 つの失効した証明書に関する情報が含まれます。 これは、CRL_INFO構造体のメンバーです。
CRL_INFO 証明書失効リスト (CRL) の情報を格納します。
CRL_ISSUING_DIST_POINT CRL に一覧表示されている証明書の種類に関する情報が含まれます。
CROSS_CERT_DIST_POINTS_INFO この構造では、動的クロス証明書の更新に使用される情報が提供されます。
CTL_ANY_SUBJECT_INFO CTL で照合される SubjectAlgorithm と、CertFindSubjectInCTL の呼び出しの CTL エントリの 1 つで照合される SubjectIdentifier が含まれます。
CTL_CONTEXT CTL のエンコードされた表現とデコードされた表現の両方が含まれます。
CTL_ENTRY この構造体は、 証明書信頼リスト (CTL) の要素です。
CTL_FIND_SUBJECT_PARA 証明書信頼リスト (CTL) を検索するために dwFindType が CTL_FIND_SUBJECT の CertFindCTLInStore によって使用されるデータが含まれます。
CTL_FIND_USAGE_PARA この構造体は 、CTL_FIND_SUBJECT_PARA 構造体のメンバーであり、 CertFindCTLInStore によって使用されます。
CTL_INFO 証明書信頼リスト (CTL) に格納されている情報を格納します。
CTL_MODIFY_REQUEST 証明書信頼リストを変更する要求が含まれます。 この構造体は、 CertModifyCertificatesToTrust 関数で使用されます。
CTL_USAGE 証明書信頼リスト (CTL) 拡張機能のオブジェクト識別子 (OID) の配列が含まれます。
CTL_VERIFY_USAGE_PARA CertVerifyCTLUsage が CTL の使用法の有効性を確立するために使用するパラメーターを格納します。
CTL_VERIFY_USAGE_STATUS CertVerifyCTLUsage によって返される証明書信頼リスト (CTL) に関する情報が含まれます。

 

X.509 証明書拡張機能の構造

次の構造体は、X.509 CERT_EXTENSION 構造体に関連付けられています。

構造体 説明
CERT_ACCESS_DESCRIPTION この構造体は、 CERT_AUTHORITY_INFO_ACCESS 構造体のメンバーです。
CERT_ALT_NAME_ENTRY さまざまな名前フォームの 1 つに代替名が含まれます。
CERT_ALT_NAME_INFO サブジェクト証明書または発行者証明書、証明書失効リスト (CRL)、証明書信頼リスト (CCTL) の拡張機能のエンコードとデコードに使用されます。
CERT_AUTHORITY_INFO_ACCESS 機関情報アクセスとサブジェクト情報アクセス証明書拡張機能を表し、その証明書のサブジェクトまたは発行者の追加情報とサービスにアクセスする方法を指定します。
CERT_AUTHORITY_KEY_ID_INFO 証明書または CRL の署名に使用されるキーを識別します。
CERT_AUTHORITY_KEY_ID2_INFO 証明書または CRL の署名に使用されるキーを識別します。 証明書の発行者がCERT_NAME_BLOBではなくCERT_ALT_NAME_INFOであるという点で、CERT_AUTHORITY_KEY_ID_INFO構造とは異なります。
CERT_BASIC_CONSTRAINTS_INFO 認定対象が CA、エンド エンティティ、またはその両方として機能できるかどうかを示す情報が含まれます。
CERT_BASIC_CONSTRAINTS2_INFO 認定対象が CA または終了エンティティとして機能できるかどうかを示す情報が含まれます。
CERT_KEY_ATTRIBUTES_INFO 認定される公開キーに関するオプションの追加情報が含まれます。
CERT_KEY_USAGE_RESTRICTION_INFO 証明書の公開キーの使用に課される制限が含まれます。
CERT_POLICIES_INFO CERT_POLICY_INFOの配列を格納します。
CERT_POLICY_ID 証明書が明示的にサポートする証明書ポリシーの一覧と、これらのポリシーに関連するオプションの修飾子情報が含まれます。
CERT_POLICY_INFO ポリシーとオプションのポリシー修飾子の配列を指定するオブジェクト識別子 (OID) が含まれます。
CERT_POLICY_QUALIFIER_INFO 修飾子と修飾子固有の補足情報を指定するオブジェクト識別子 (OID) を格納します。
CERT_PRIVATE_KEY_VALIDITY 証明書の公開キーに対応する秘密キーの有効な期間を示します。
CRL_DIST_POINT 証明書ユーザーが証明書が失効したかどうかを判断するために参照できる 1 つの CRL 配布ポイントを識別します。
CRL_DIST_POINT_NAME CRL を取得できる場所を識別します。
CRL_DIST_POINTS_INFO 証明書が失効しているかどうかを判断するために、証明書ユーザーが参照できる CRL 配布ポイントの一覧が含まれます。

 

これらの構造体は、CryptEncodeObject 関数と CryptEncodeObjectEx 関数を使用して、CERT_EXTENSION構造体の Value メンバーにエンコードできます。 これらは、CERT_EXTENSION構造体の Value メンバーがデコードされると、CryptDecodeObject 関数と CryptDecodeObjectEx 関数によって作成され、返されます。

エンコードまたは作成される構造体は、CERT_EXTENSION構造体の pszObjId 文字列メンバーによって異なります。

現在の拡張定義済み定数と OID と、それぞれに関連付けられている構造体を次の表に示します。

注意

定義済みの定数 (列 1) とそれに対応する OID (列 2) は、同じ意味で使用できます。

 

定義済みの定数 オブジェクト識別子 (OID) データ構造
X509_AUTHORITY_INFO_ACCESS szOID_AUTHORITY_INFO_ACCESS CERT_AUTHORITY_INFO_ACCESS
X509_AUTHORITY_KEY_ID szOID_AUTHORITY_KEY_IDENTIFIER CERT_AUTHORITY_KEY_ID_INFO
X509_ALTERNATE_NAME szOID_SUBJECT_ALT_NAME – Or –
szOID_ISSUER_ALT_NAME
CERT_ALT_NAME_INFO
X509_BASIC_CONSTRAINTS szOID_BASIC_CONSTRAINTS CERT_BASIC_CONSTRAINTS_INFO
X509_BASIC_CONSTRAINTS2 szOID_BASIC_CONSTRAINTS2 CERT_BASIC_CONSTRAINTS2_INFO
X509_CERT_POLICIES szOID_CERT_POLICIES CERT_POLICIES_INFO
X509_KEY_ATTRIBUTES szOID_KEY_ATTRIBUTES CERT_KEY_ATTRIBUTES_INFO
X509_KEY_USAGE szOID_KEY_USAGE CRYPT_BIT_BLOB
X509_KEY_USAGE_RESTRICTION szOID_KEY_USAGE_RESTRICTION CERT_KEY_USAGE_RESTRICTION_INFO
なし szOID_POLICY_MAPPINGS 未実装
なし szOID_SUBJECT_DIR_ATTRS 未実装

 

メッセージ構造

暗号化メッセージ関数では、次の構造体が使用されます。

構造体 説明
CMSG_CMS_RECIPIENT_INFO この構造体は、 CryptMsgGetParam 関数と共に使用して、キー トランスポート、キー 契約、またはメール リストのエンベロープ メッセージ受信者に関する情報を取得します。
CMSG_CMS_SIGNER_INFO この構造体には、署名付きメッセージまたは署名済みメッセージとエンベロープ メッセージ内の定義済みの SignerInfo の内容が含まれます。
CMSG_CNG_CONTENT_DECRYPT_INFO 暗号化 API: 次世代 (CNG) コンテンツ暗号化キー (CEK) のインポートと暗号化解除のために 、CryptMsgControl と OID インストール可能な関数の間で渡されるすべての関連情報が含まれます。
CMSG_CONTENT_ENCRYPT_INFO コンテンツ暗号化キーの暗号化とエクスポートに使用される PFN_CMSG_GEN_CONTENT_ENCRYPT_KEYPFN_CMSG_EXPORT_KEY_TRANSPFN_CMSG_EXPORT_KEY_AGREEおよびPFN_CMSG_EXPORT_MAIL_LISTオブジェクト識別子 (OID) インストール可能な関数の間で共有される情報が含まれます。
CMSG_CTRL_ADD_SIGNER_UNAUTH_ATTR_PARA この構造体は、署名されたメッセージの署名者に認証されていない属性を追加するために使用されます。
CMSG_CTRL_DECRYPT_PARA この構造体には、キー トランスポート受信者のエンベロープ メッセージの暗号化を解除するために使用される情報が含まれています。 dwCtrlType パラメーターがCMSG_CTRL_DECRYPT場合、この構造体は CryptMsgControl に渡されます。
CMSG_CTRL_DEL_SIGNER_UNAUTH_ATTR_PARA この構造体は、署名されたメッセージの署名者の認証されていない属性を削除するために使用されます。
CMSG_CTRL_KEY_AGREE_DECRYPT_PARA この構造体には、キー 契約の受信者に関する情報が含まれています。
CMSG_CTRL_KEY_TRANS_DECRYPT_PARA この構造体には、キー トランスポート メッセージの受信者に関する情報が含まれています。
CMSG_CTRL_MAIL_LIST_DECRYPT_PARA この構造体には、メール リスト メッセージの受信者に関する情報が含まれています。
CMSG_CTRL_VERIFY_SIGNATURE_EX_PARA この構造体には、メッセージ署名の検証に使用される情報が含まれています。 署名者インデックスと署名者公開キーが含まれています。 署名者の公開キーには、署名者の CERT_PUBLIC_KEY_INFO構造、 証明書コンテキスト、またはチェーン コンテキストを指定できます。
CMSG_ENVELOPED_ENCODE_INFO この構造体には、エンベロープ メッセージをエンコードするために必要な情報が含まれています。 dwMsgType がCMSG_ENVELOPED場合は、CryptMsgOpenToEncode に渡されます。
CMSG_ENVELOPED_HASHED_INFO この構造体は、 ハッシュされた メッセージと共に使用されます。 dwMsgType がCMSG_ENVELOPED場合は、CryptMsgOpenToEncode に渡されます。
CMSG_KEY_AGREE_ENCRYPT_INFO エンベロープされたメッセージのすべてのキー 契約受信者に適用できる暗号化情報が含まれます。
CMSG_KEY_AGREE_KEY_ENCRYPT_INFO エンベロープされたメッセージのキー 契約受信者の暗号化されたキーを格納します。
CMSG_KEY_TRANS_ENCRYPT_INFO エンベロープされたデータのキー トランスポート受信者の暗号化情報が含まれます。
CMSG_MAIL_LIST_ENCRYPT_INFO 封筒データのメーリング リスト受信者の暗号化情報が含まれます。
CMSG_KEY_AGREE_RECIPIENT_ENCODE_INFO この構造体には、キー アグリーメント キー管理を使用するメッセージ受信者に関する情報が含まれています。
CMSG_KEY_TRANS_RECIPIENT_ENCODE_INFO この構造体には、メッセージ受信者のエンコードされたキー トランスポート情報が含まれています。
CMSG_KEY_TRANS_RECIPIENT_INFO この構造体には、キー トランスポート アルゴリズムで使用される情報が含まれています。
CMSG_MAIL_LIST_RECIPIENT_ENCODE_INFO この構造は、コンテンツ キー暗号化キー (KEK) の暗号化を解除するために、以前に分散された対称キーと共に使用されます。
CMSG_MAIL_LIST_RECIPIENT_INFO この構造体には、以前に分散された 対称 キー暗号化キー (KEK) に使用される情報が含まれています。
CMSG_RC2_AUX_INFO この構造体には、RC2 暗号化アルゴリズムのキーのビット長が含まれています。 CMSG_ENVELOPED_ENCODE_INFOpvEncryptionAuxInfo メンバーは、この構造体のインスタンスを指すように設定できます。
CMSG_RC4_AUX_INFO この構造体には、RC4 暗号化アルゴリズムのキーのビット長が含まれています。 CMSG_ENVELOPED_ENCODE_INFOpvEncryptionAuxInfo メンバーは、この構造体のインスタンスを指すように設定できます。
CMSG_RECIPIENT_ENCODE_INFO この構造体には、メッセージ受信者のコンテンツ暗号化キー管理の種類の情報が含まれています。
CMSG_RECIPIENT_ENCRYPTED_KEY_ENCODE_INFO この構造体には、メッセージの内容の暗号化を解除するために必要なセッション キーの暗号化を解除するために使用されるメッセージ レシーバーに関する情報が含まれています。 この構造は、キー管理方法のいずれかを使用して、CMS 低レベルメッセージで使用されます。
CMSG_RECIPIENT_ENCRYPTED_KEY_INFO この構造体には、個々のキー 契約の受信者に使用される情報が含まれています。
CMSG_SIGNED_ENCODE_INFO この構造体には、dwMsgType がCMSG_SIGNEDされている場合に CryptMsgOpenToEncode に渡される情報が含まれます。
CMSG_SIGNER_ENCODE_INFO この構造体には署名者情報が含まれています。 dwMsgType パラメーターがCMSG_SIGNEDされている場合は、CryptMsgCountersignCryptMsgCountersignEncoded、および必要に応じて、CMSG_SIGNED_ENCODE_INFO構造体のメンバーとして CryptMsgOpenToEncode渡されます。
CMSG_SIGNER_INFO この構造体には、署名付きメッセージ内の PKCS #7 で定義された SignerInfo の内容が含まれます。
CMSG_SP3_COMPATIBLE_AUX_INFO この構造体には、SP3 互換暗号化に必要な情報が含まれています。
CMSG_STREAM_INFO この構造は、単一ブロック処理ではなくストリーム データの処理を有効にするために使用されます。 ストリーム処理は、大きなメッセージを処理するときに最もよく使用されます。 ストリームプロセス メッセージは、ハード ディスク上のファイル、サーバー、CD ROM などのシリアル化されたソースから送信できます。
CRYPT_DECRYPT_MESSAGE_PARA メッセージの暗号化解除に関する情報が含まれます。
CRYPT_ENCRYPT_MESSAGE_PARA メッセージの暗号化に使用される情報が含まれます。
CRYPT_HASH_MESSAGE_PARA メッセージをハッシュするためのデータが含まれます。
CRYPT_SIGN_MESSAGE_PARA 指定した署名証明書コンテキストを使用してメッセージに署名するための情報が含まれます
CRYPT_VERIFY_MESSAGE_PARA 署名付きメッセージを確認するために必要な情報が含まれています。

 

OID のサポート構造

OID サポート関数では、次の構造体が使用されます。

構造体 説明
CRYPT_OID_FUNC_ENTRY オブジェクト識別子 (OID) とそれに関連する関数へのポインターが含まれます。 これは CryptInstallOIDFunctionAddress と共に使用されます
CRYPT_OID_INFO オブジェクト識別子 (OID) に関する情報を格納します。
CRYPT_RC2_CBC_PARAMETERS szOID_RSA_RC2CBC暗号化で使用される情報が含まれます。
CRYPT_SMIME_CAPABILITIES サポートされている機能の優先順位付けされた配列が含まれています。
CRYPT_SMIME_CAPABILITY 1 つの機能とそれに関連付けられているパラメーターを指定します。

 

証明書チェーン構造

証明書の信頼を確立するために使用される証明書チェーンの構築では、次の構造が使用されます。

構造体 説明
AUTHENTICODE_EXTRA_CERT_CHAIN_POLICY_PARA ファイルの証明書チェーンの検証で使用されるポリシー情報を保持します。
AUTHENTICODE_EXTRA_CERT_CHAIN_POLICY_STATUS ファイルのチェーン検証のための追加の Authenticode ポリシー情報を保持します。
AUTHENTICODE_TS_EXTRA_CERT_CHAIN_POLICY_PARA ファイルの証明書チェーン検証で使用できるタイム スタンプ ポリシー情報が含まれています。
CERT_CHAIN_CONTEXT 単純な証明書チェーンの配列と、接続されているすべての単純なチェーンの概要有効性データを示す信頼状態構造が含まれます。
CERT_CHAIN_ELEMENT この構造体は、単純な証明書チェーン内の 1 つの要素です。
CERT_CHAIN_ENGINE_CONFIG 既定以外の証明書チェーン エンジンを構築するためのパラメーターを設定します。
CERT_CHAIN_FIND_BY_ISSUER_PARA 証明書チェーンを構築するために CertFindChainInStore で使用される情報を保持します。
CERT_CHAIN_PARA 証明書チェーンの構築に使用する検索条件と一致条件を確立します。
CERT_CHAIN_POLICY_PARA 証明書チェーンの検証のポリシー条件を確立するために CertVerifyCertificateChainPolicy で使用される情報が含まれています。
CERT_CHAIN_POLICY_STATUS 証明書チェーンの検証から CertVerifyCertificateChainPolicy によって返される証明書チェーンの状態情報を保持します。
CERT_REVOCATION_INFO CERT_CHAIN_ELEMENT内の証明書の失効状態を示します。
CERT_SELECT_CHAIN_PARA チェーンの構築と選択に使用されるパラメーターが含まれます。
CERT_SIMPLE_CHAIN チェーン要素の配列と、配列が表すチェーンの概要信頼状態が含まれます。
CERT_SELECTUI_INPUT ストアまたは証明書チェーンの配列に含まれる証明書をシリアル化するために 、CertSelectionGetSerializedBlob 関数によって使用されます。 返されたシリアル化された BLOB、CredUIPromptForWindowsCredentials 関数に 渡すことができます。
CERT_TRUST_LIST_INFO CTL の有効な使用法を示します。
CERT_TRUST_STATUS 証明書チェーン内の証明書に関する信頼情報、単純な証明書チェーンに関する信頼情報の概要、または単純なチェーンの配列に関する概要情報が含まれます。
CERT_USAGE_MATCH 証明書チェーンの構築に使用される発行者証明書を検索するためのパラメーターを提供します。
CTL_USAGE_MATCH 証明書チェーンの構築に使用される 証明書信頼リスト (CTL) を検索するためのパラメーターを提供します。
SSL_EXTRA_CERT_CHAIN_POLICY_PARA Secure Sockets Layer (SSL) クライアント/サーバー証明書チェーンの検証で使用されるポリシー情報を保持します。

 

CSP の構造

暗号化 サービス プロバイダー (CSP) 関数では、次の構造が使用されます。

構造体 説明
BLOBHEADER キーの BLOB の種類と、キーで使用されるアルゴリズムを示します。
VTableProvStruc CSP 関数で使用できるコールバック関数へのポインターが含まれています。
PLAINTEXTKEYBLOB プレーンテキスト キーのパラメーター ヘッダー情報が含まれます。

 

WinTrust 構造体

WinVerifyTrust 関数では、次の構造体が使用されます。

構造体 説明
CRYPT_PROVIDER_DEFUSAGE WintrustGetDefaultForUsage 関数によって、プロバイダーの既定の使用法のコールバック情報を取得するために使用されます。
CRYPT_PROVIDER_REGDEFUSAGE プロバイダーの既定の使用状況に関するコールバック情報を登録するために WintrustAddDefaultForUsage 関数によって使用されます。
SPC_INDIRECT_DATA_CONTENT Authenticode 署名付きファイルのダイジェストやその他の属性を格納します。
WINTRUST_BLOB_INFO WinVerifyTrust を呼び出してメモリ BLOB を確認するときに使用されます。
WINTRUST_CATALOG_INFO WinVerifyTrust を呼び出して Microsoft カタログのメンバーを確認するときに使用されます。
WINTRUST_CERT_INFO WinVerifyTrust を呼び出してCERT_CONTEXTを確認するときに使用されます
WINTRUST_DATA WinVerifyTrust を呼び出して必要な情報を信頼プロバイダーに渡すときに使用されます
WINTRUST_FILE_INFO WinVerifyTrust を呼び出して個々のファイルを確認するときに使用されます。
WINTRUST_SGNR_INFO WinVerifyTrust を呼び出してCMSG_SIGNER_INFO構造体を確認するときに使用します。

 

SIP 構造体

サブジェクト インターフェイス パッケージ (SIPP 関数) では、次の構造体が使用されます。

構造体 説明
SIP_ADD_NEWPROVIDER SIP を定義します。
SIP_CAP_SET SIP の機能を定義します。
SIP_DISPATCH_INFO SIP 関数へのポインターのセットが含まれています。
SIP_INDIRECT_DATA ハッシュされたサブジェクト情報のダイジェストが含まれます。
SIP_SUBJECTINFO SIP サブジェクト情報を指定します。