暗号化構造体
暗号化関数では、次の構造が使用されます。 暗号化構造は、使用法に応じて次のように分類されます。
- CryptXML 構造体
- 一般的な暗号化構造
- 一般的な証明書の構造
- X.509 証明書拡張機能の構造
- メッセージ構造
- OID サポート構造体
- 証明書チェーン構造
- CSP の構造
- WinTrust 構造体
- SIP 構造体
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_KEY、 PFN_CMSG_EXPORT_KEY_TRANS、 PFN_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_INFOの pvEncryptionAuxInfo メンバーは、この構造体のインスタンスを指すように設定できます。 |
CMSG_RC4_AUX_INFO | この構造体には、RC4 暗号化アルゴリズムのキーのビット長が含まれています。 CMSG_ENVELOPED_ENCODE_INFOの pvEncryptionAuxInfo メンバーは、この構造体のインスタンスを指すように設定できます。 |
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されている場合は、CryptMsgCountersign、CryptMsgCountersignEncoded、および必要に応じて、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 サブジェクト情報を指定します。 |