function FreshOcspResponse(const Der: TBytes; UtcNow: TDateTime): Boolean;
function CryptoUtcNow: TDateTime;
| 関数 | 説明 |
|---|---|
FreshOcspResponse | Der が制限内の成功した basic OCSP 応答構造を持ち、含まれるすべての応答が UtcNow に対する鮮度検査を通った場合にだけ True を返します。事前フィルターであり、証拠の認証は行いません |
CryptoUtcNow | プラットフォームのタイムゾーン変換を使って現在の UTC TDateTime を返します。ローカル時刻を UTC として扱うことはありません |
| 検査 | 上限または動作 |
|---|---|
| DER 応答サイズ | 空でなく、最大 1 MiB |
| SingleResponse エントリ | 最低 1 件、ハード上限は 64 件 |
| 時刻のずれ | 未来時刻と有効期限の比較に 300 秒を許容 |
producedAt と thisUpdate | 最大 1 日前まで、未来側は許容される時刻のずれまで |
nextUpdate | 存在する場合は thisUpdate より前ではなく、許容される時刻のずれを含めて有効である必要があります |
| 不正または未対応の応答 | 外側の OCSP 応答が失敗している場合や未対応の応答形式を含め、False を返します |
True はネイティブ検証器が応答を調べてよいことだけを示します。レスポンダーの署名や権限、発行者の一致、証明書識別子、証明書の正常な状態を証明するものではありません
FPdfCryptoSsl は OpenSSL、FPdfCryptoMac は Security.framework で指定された OCSP 応答を認証します。アプリケーションは FreshOcspResponse を失効判定に使わず、独立した署名、信頼、失効の各結果を確認してください
このヘルパーは HTTP リクエスト、信頼アンカーの追加、システムの信頼設定の変更、永続キャッシュを行いません。UTC は呼び出し側が明示するので、時刻境界のテストも決定的に実行できます