rgpvContext 配列に含まれる証明書の失効状態を確認する。リスト内のいずれかの証明書が失効していると判定された時点で、それ以上の確認は行われない。
CertVerifyRevocation dwEncodingType, dwRevType, cContext, rgpvContext, dwFlags, pRevPara, pRevStatus
dwEncodingType : [int] 使用するエンコーディング種別を指定する。現在使用されているのは X509_ASN_ENCODING と PKCS_7_ASN_ENCODING のみであるが、将来エンコーディング種別が追加される可能性がある。現状のどちらのエンコーディングでも、X509_ASN_ENCODING | PKCS_7_ASN_ENCODING を使用する。 dwRevType : [int] rgpvContext で渡されるコンテキスト構造体の種類を示す。現在定義されているのは CERT_CONTEXT_REVOCATION_TYPE (証明書の失効) のみである。 cContext : [int] rgpvContext 配列の要素数。 rgpvContext : [var] dwRevType が CERT_CONTEXT_REVOCATION_TYPE の場合、rgpvContext は CERT_CONTEXT 構造体へのポインターの配列となる。これらのコンテキストには、インストール済みまたは登録済みの失効 DLL が失効サーバーを特定するために十分な情報が含まれていなければならない。この情報は通常、IETF の PKIX Part 1 で定義されている CRLDistributionsPoints 拡張などの拡張で伝達される。 dwFlags : [int] 特殊な処理が必要であるかを示す。このパラメーターには次のフラグのいずれかを指定できる。 pRevPara : [var] 発行者の検索を補助するために任意で設定する。詳細は CERT_REVOCATION_PARA 構造体を参照。 pRevStatus : [var] CertVerifyRevocation を呼び出す前に、pRevStatus が指す CERT_REVOCATION_STATUS の cbSize メンバーだけを設定すればよい。関数が FALSE を返した場合、この構造体のメンバーにはエラー状態情報が格納される。詳細は CERT_REVOCATION_STATUS を参照。失効検証で問題が発生した場合の pRevStatus の更新方法については「解説」を参照。
(プラグイン / モジュール : crypt32.dll)
rgpvContext 配列に含まれる証明書の失効状態を確認する。リスト内のいずれかの証明書が失効していると判定された時点で、それ以上の確認は行われない。 [戻り値] 関数が全コンテキストを正常に確認し、いずれも失効していなければ TRUE を返す。失敗した場合は FALSE を返し、CERT_REVOCATION_STATUS に記載のとおり pRevStatus が指す構造体を更新する。いずれかのコンテキストの失効ハンドラーがエラーで FALSE を返した場合、pRevStatus が指す構造体の dwError メンバーにハンドラーが遭遇したエラーが設定される。GetLastError は CERT_REVOCATION_STATUS 構造体の dwError メンバーと同じエラーコードを返す。GetLastError は次の値のいずれかを返すことがある。 (以下省略) [備考] 失効検証で問題が発生した場合の pRevStatus の更新方法を次の例で示す。cContext が 4 の場合を考える。CertVerifyRevocation が rgpvContext[0] と rgpvContext[1] を失効していないと検証できたが rgpvContext[2] をチェックできない場合、pRevStatus メンバー dwIndex は 2 に設定され、インデックス 2 のコンテキストに問題があることを示す。また pRevStatus の dwError メンバーは CRYPT_E_NO_REVOCATION_CHECK に設定され、関数は FALSE を返す。rgpvContext[2] が失効していると判明した場合、pRevStatus の dwIndex メンバーは 2、dwError メンバーは CRYPT_E_REVOKED、dwReason も更新され、FALSE が返される。いずれの場合も、rgpvContext[0] と rgpvContext[1] は失効していないことが確認され、rgpvContext[2] は最後に確認された配列インデックスであり、rgpvContext[3] はまったく確認されていない。
| プラグイン / モジュール | crypt32.dll |
| バージョン | 1.0 |
| 作成日 | 2026/04/16 |
| 著作者 | IronHSP / CsWin32 bridge |
| URL | https://github.com/inovia/IronHSP |
| 備考 | Win32 API の crypt32.dll 関数群。CsWin32 + win32metadata から自動生成。
hsp3net 専用 (intptr / NSTRUCT / wstr を使用)。 |
| タイプ | 拡張命令 |
| グループ | Win32API |
| 対応環境 |
|
| hs ファイル | hsphelp\win32_crypt32_gen2.hs |