Windows の署名付き失効情報

Windows の sign 操作は、CRL と OCSP のエビデンスを認証して Adobe の RevocationInfoArchival 署名付き属性に含め、実際に生成された CMS と埋め込みエビデンスの検証後にのみ PDF を公開できます

署名オプション

{"schemaVersion":1,"type":"sign","incremental":true,
 "existingField":true,"fieldName":"ApprovalOne",
 "pfxFile":"C:/keys/signer.pfx","pfxPassword":"password",
 "cades":true,"digestMethod":"SHA384",
 "revocationInfo":{"enabled":true,
   "trustedCAFile":"C:/trust/signing-roots.pem",
   "certificatesBase64":[],"ocspResponsesBase64":[],
   "crlsBase64":["BASE64_DER_CRL"],
   "requireTimestamp":false,"clockSkewSeconds":300,
   "maxOCSPAgeSeconds":86400}}

revocationInfo は省略可能です。オブジェクトが指定されたとき enabled の既定は true で、無効化されたエビデンスに証明書、OCSP 応答、CRL を含めることはできません

trustedCAFile は PEM トラストルートを明示的に特定し、署名全体を通じて書き込み共有を拒否したまま開かれます。検証が PFX やエビデンスに証明書が含まれるという理由だけで黙ってトラストすることはありません

エビデンス配列には、完全な DER 証明書、CRL、OCSPResponse 値を符号化した正規 Base64 文字列を入れます。enabled のときは CRL か OCSP 応答が少なくとも 1 つ必要です

標準の署名付き属性は DER CRL と BasicOCSPResponse 値を含みます。完全な OCSPResponse 入力は埋め込み前に正規化され、証明書は追加の検証チェーン材料を供給します

HPDFHeadlessRevocationInfo の HPDFNormalizeHeadlessOCSPResponse は、Pascal 呼び出し側向けに上限付きの成功応答変換を公開します。DER フレーミングを検証して BasicOCSPResponse を取り出しますが、暗号とステータスの検証は署名や LTV 検証器の責務のままです

認証済みエビデンス

検証は、実際の CMS 署名、署名証明書バインディング、明示的な証明書トラスト、証明書の有効性、CRL の署名と有効期間、そして OCSP の署名、レスポンダ認可、発行者識別子、応答ステータス、更新時刻を認証します

エビデンスは完全な非ルート署名チェーンを覆わなければなりません。失効済み、不明、期限切れ、不完全、未認可、信頼できない、不正なエビデンスは PDF を公開できません

requireTimestamp は実際の署名タイムスタンプを要求し、その TSA チェーンのエビデンスも認証します。Windows 署名タイムスタンプに記述されたアプリケーション転送と別の TSA トラスト設定を使ってください

clockSkewSeconds は 0〜86400 を受け付け、maxOCSPAgeSeconds は正でなければなりません。両方とも証明書トラストを変えるのではなく、エビデンスの時刻検証を設定します

シード値と公開

必須の SV AddRevInfo true 制約は、この検証済み署名エビデンスワークフローを要求します。必須の false 値は属性の省略を要求します

このワークフローは、既存・新規作成の署名フィールド、最初の証明署名、続く許可された承認署名、サポート対象の暗号化ソース、未署名ドキュメントの署名に対応します

トラストファイルとデコード済みエビデンスは memoryBytes の 8 分の 1 をバイト上限として共有します。エビデンスオブジェクト数は割り当て前に objectCount と 4096 の小さい方に制限されます

正規 Base64、DER フレーミング、予算、キャンセル、CMS 完全性、エビデンスの有効性は、バイナリ公開の前に検査されます。棄却されたエビデンスは元のドキュメントハンドルを保ち PDF バイトを公開しません。公開コールバックは既存のコールバック失敗セマンティクスを保ちます

成功した結果が revocationInfo: true を報告するのは、実際の署名付き属性を認証した後だけです。無効化または省略されたエビデンスは false を報告します

完全な OCSPResponse から BasicOCSPResponse DER への上限付きネイティブ変換はHPDFNormalizeHeadlessOCSPResponse を参照してください

ソーススナップショット、暗号化権限、先行署名ポリシー、出力予算、コールバック公開セマンティクスは増分 PFX 署名を参照してください