Enterprise エディション
証拠
NextPDF Enterprise は、ドキュメントごとの検証の検出結果を、決定論的な JSON 形式と安定した SHA-256 ダイジェストを持ち、オプションで RFC 3161 タイムスタンプトークンを保持する、封緘された不変のパッケージにまとめます。証跡のキャプチャは監査ワークフローをサポートします。法的証明、監査認証、またはドキュメントが準拠しているという証明ではありません。
提供状況とライセンス
「提供状況とライセンス」という見出しのセクションこの機能は NextPDF Enterprise(nextpdf/enterprise)に同梱されており、Enterprise ティアのライセンスエンベロープで有効化されます。そのエンタイトルメントのないデプロイメントでは、この機能のクラスはロードされません。エディションを比較してライセンスを取得。
インストール
「インストール」という見出しのセクションcomposer require nextpdf/enterprise:^3概念の概要
「概念の概要」という見出しのセクションEvidencePortal がエントリーポイントです。generateEvidence($documentHash, $records, $tsaTimestamp) は、EvidenceRecord インスタンスのリストを EvidencePackage にまとめ、合格/不合格の統計を計算し、EvidenceStoreInterface を通じてパッケージを永続化し、封緘されたパッケージを返します。EvidenceRecord は、1 件のポリシーチェックをキャプチャします。ポリシー名、合格フラグ、詳細、それを生成したバリデーターバージョン、およびタイムスタンプです。
EvidencePackage は、いったん構築されると不変です。パッケージ ID、検証されたドキュメントの SHA-256、レコード、集計カウント、生成時刻、およびオプションの RFC 3161 タイムスタンプトークンを保持します。allPassed() と passRate() がそれを要約します。その不変性により、パッケージは write-once-read-many (WORM) ストレージに適したものになります。
EvidenceExporter は、パッケージを決定論的な JSON 文字列 — 固定されたキー順序で再現可能 — にシリアライズするため、exportHash() は完全性検証のための安定した 64 文字の SHA-256 ダイジェストを返します。同じパッケージは、いつどこで計算されるかに関係なく、常に同じダイジェストを生成します。
ContinuousMonitor は、ドキュメントを再検証し、現在の証跡を保存された以前の証跡と不合格ポリシー名で差分し、問題を新規、解決済み、または変更なしに分類し、スケジュールチェック (isDue() / MonitorSchedule / MonitorFrequency) を公開します。これは時間をまたいだドリフト検出をサポートします。何が変わったかを報告するものであり、いかなる時点でも法的ステータスを主張するものではありません。
ここでの「証跡」の意味
「ここでの「証跡」の意味」という見出しのセクションこのモジュールは、監査ワークフローのために検証の検出結果をパッケージ化してタイムスタンプを付与します。何かを認証するものではありません。
- RFC 3161 タイムスタンプトークンは、パッケージのデータを時刻値にバインドします。データがその時刻より前に存在したという証跡を提供します。法的証明ではなく、タイムスタンプが付与されたコンテンツが準拠している、または有効であると主張するものでもありません。
allPassed() === trueの封緘されたパッケージは、含まれるチェックが、それらが実装するルールに対して合格したことを記録します。監査認証ではありません。- 決定論的なダイジェストは、パッケージバイトの完全性を証明します。ドキュメントの規制上の十分性を証明するものではありません。
証跡のキャプチャは監査ワークフローをサポートします。法的証明でも監査認証でもありません。有効性と適合性は、最終ファイルとバリデーターの組み合わせの性質のままです。
ティアの境界
「ティアの境界」という見出しのセクション証跡のパッケージ化は Enterprise 専用のサーフェスです。Core と Pro は検出結果とレポートを生成します。Enterprise Evidence は、それらの検出結果を不変で決定論的、オプションでタイムスタンプが付与されたパッケージに封緘し、リグレッションを追跡します。これは別の場所 (Validation または Compliance のサーフェス) で生成された検出結果に依存します。それ自体が適合性チェックを実行することはありません。
この仕組みの理由
「この仕組みの理由」という見出しのセクション証跡は、後から密かに書き換えられないことによってのみ有用であるため、EvidencePackage はミューテーターを持たない封緘された readonly の値であり、write-once-read-many ストレージにとって安全です。エクスポーターの toJson() 出力は、実行時のソートではなく固定されたキー挿入順序に従うため、同じパッケージは常に同一のバイトにシリアライズされます。そのバイトの安定性により、保存された exportHash() は後で完全性を検証できます。パッケージへのいかなる変更もダイジェストを変えるからです。RFC 3161 トークンは、判定ではなく時刻の埋め込み証跡として保持されるため、パッケージはドキュメントが準拠していると主張することなく、チェックが いつ 実行されたかを証明します。次いでリグレッション追跡は、以前のパッケージに対して不合格ポリシー名で差分するため、ドリフト検出はチェックの順序やカウントから独立したままです。
設計の背景:監査人に手渡せるコンプライアンス。
API サーフェス
「API サーフェス」という見出しのセクション| クラス | 責務 |
|---|---|
EvidencePortal | 証跡パッケージのまとめ、永続化、取得。 |
EvidencePackage | 集計統計を伴うレコードの不変の封緘されたバンドル。 |
EvidenceRecord | バリデーターバージョンとタイムスタンプを伴う 1 件のポリシーチェック結果。 |
EvidenceExporter | 決定論的な JSON シリアライズ。安定した SHA-256 ダイジェスト。 |
EvidenceStoreInterface | 永続化コントラクト。 |
InMemoryEvidenceStore | リファレンスのインメモリストア実装。 |
ContinuousMonitor | 再検証し、以前の証跡と差分する。 |
MonitorResult | 新規 / 解決済み / 変更なしの問題分類。 |
MonitorSchedule / MonitorFrequency | スケジュールベースのポーリング。 |
コードサンプル — クイックスタート
「コードサンプル — クイックスタート」という見出しのセクション$package = $portal->generateEvidence($documentHash, $records);$digest = $exporter->exportHash($package); // 64-char SHA-256コードサンプル — 本番
「コードサンプル — 本番」という見出しのセクション$package = $portal->generateEvidence($documentHash, $records, $tsaToken);$logger->info('evidence.sealed', [ 'package' => $package->packageId, 'digest' => $exporter->exportHash($package), 'pass_rate' => $package->passRate(),]);
$delta = $monitor->check($package, $documentHash);if ($delta->newIssues !== []) { $logger->warning('evidence.regression', ['count' => count($delta->newIssues)]);}// The package is audit-supporting evidence, not an attestation of compliance.エッジケースと注意点
「エッジケースと注意点」という見出しのセクション- 検出結果がない場合、
passRate()は 0.0 を返します。空のパッケージは合格ではありません。 - エクスポートが決定論的なのは
EvidenceExporterを通じた場合のみです。任意のシリアライズをハッシュ化すると、安定ダイジェストの保証が破られます。 - TSA トークンのないパッケージも依然として有効な証跡です。トークンは判定ではなく時刻のバインディングを追加します。
パフォーマンス
「パフォーマンス」という見出しのセクションパッケージ化と決定論的なシリアライズは、レコード数に対して線形にスケールします。ダイジェストの計算は、シリアライズされた JSON に対する単一の SHA-256 パスです。
セキュリティに関する注意
「セキュリティに関する注意」という見出しのセクションパッケージのダイジェストは、パッケージバイトの改ざん検知性を提供します。オプションの RFC 3161 トークンは、信頼できる TSA から取得されなければなりません。このモジュールはトークンを埋め込むものであり、TSA を保証するものではありません。レコードの詳細は機密の可能性があるものとして扱ってください(下記参照)。
データレジデンシーと PII の緩和策
「データレジデンシーと PII の緩和策」という見出しのセクション証跡レコードとドキュメントハッシュは、規制対象コンテンツを参照する場合があります。パッケージ化はインプロセスです。永続化はお客様の EvidenceStoreInterface 実装に委譲されるため、レジデンシーはお客様のストアに従います。保存されたパッケージに対して、保持および最小化の管理策を適用してください。
安全なテレメトリとログのスクラブ
「安全なテレメトリとログのスクラブ」という見出しのセクションパッケージのメタデータ(ID、ダイジェスト、カウント)はログに記録しても安全です。レコードの詳細には、抽出されたドキュメント文字列を含む検出結果メッセージがそのまま含まれる場合があります。共有シンクへ転送する前にそれらをスクラブしてください。
| 挙動 | 参照 | ステータス |
|---|---|---|
| タイムスタンプトークンがデータを時刻にバインドする | IETF RFC 3161 §2 | トークン埋め込み (TSA 提供) |
| DSS / 長期検証コンテキスト | ISO 32000-2:2020 §12.8 | 参照済み (ここでは生成ではなく利用) |
この表は、このモジュールが合わせて構築されている仕様を記録したものです。タイムスタンプトークンは時刻の証跡であり、認証でも法的証明でもありません。
FIPS モードの挙動
「FIPS モードの挙動」という見出しのセクションこのモジュールは、パッケージバイトに対して SHA-256 を計算し、呼び出し元が提供する RFC 3161 トークンを埋め込みます。署名や鍵の保管は行いません。暗号操作と FIPS モードの挙動は、Security および Signature モジュールが処理します。
脅威モデル
「脅威モデル」という見出しのセクション入力は検出結果とオプションの TSA トークンです。緩和策は、不変のパッケージ、安定した完全性ダイジェストを伴う決定論的なシリアライズ、および、ストアが WORM とアクセス制御を強制するための委譲された永続化です。
挙動コントラクト
「挙動コントラクト」という見出しのセクション- ポータルは、検出結果を、パッケージ ID、検証されたドキュメントの SHA-256、レコード、集計カウント、生成時刻、およびオプションの RFC 3161 タイムスタンプトークンを持つ、不変の封緘されたパッケージにまとめます。
- エクスポーターは、パッケージを固定されたキー順序を持つ決定論的な JSON 文字列にシリアライズするため、ダイジェストは、いつどこで計算されるかに関係なく同一の、安定した 64 文字の SHA-256 になります。
- 継続的モニターは、再検証し、現在の証跡を保存された以前の証跡と不合格ポリシー名で差分し、問題を新規、解決済み、または変更なしに分類します。
- 検出結果がない場合、
passRate()は 0.0 を返します — 空のパッケージは合格ではありません。TSA トークンのないパッケージも依然として有効な証跡です。 - タイムスタンプトークンは、データがある時刻より前に存在したことの証跡です。法的証明ではなく、コンテンツの準拠性や有効性について何ら主張しません。
公開の境界
「公開の境界」という見出しのセクションこのページは、外部から観測できる挙動とサポート対象の公開 API サーフェスのみを説明します。内部の名前空間パス、ヘルパークラス、メカニズムの表、ランブックのファイル名、およびチケットプレフィックスは範囲外です。
Core フォールバック
「Core フォールバック」という見出しのセクションCore と Pro は検出結果とレポートを生成します。それらの検出結果を、リグレッション追跡を伴う不変で決定論的、オプションでタイムスタンプが付与されたパッケージに封緘する機能には、Core ティアの同等品はありません。Enterprise サーフェスは別の場所で生成された検出結果に依存します。それ自体が適合性チェックを実行することはありません。
Pro フォールバック
「Pro フォールバック」という見出しのセクションPro フォールバック — ありません。この機能には Pro ティアの同等品はありません。封緘された証跡パッケージ、決定論的なエクスポーター、および継続的モニターは、nextpdf/enterprise パッケージにのみ同梱されています。このサーフェスは、Validation または Compliance のサーフェスからの検出結果を利用します。
Enterprise の境界に関する注記
「Enterprise の境界に関する注記」という見出しのセクションポータル、パッケージ、エクスポーター、およびモニターは、挙動レベルで記述しています。リファレンスのインメモリストアは文書化されています。永続的な永続化はホストが提供し、内部のストアの内部仕様は公開サーフェスの範囲外です。このモジュールは、呼び出し元が提供する TSA トークンを埋め込みます。TSA を保証するものではありません。
デプロイメントの境界
「デプロイメントの境界」という見出しのセクションパッケージ化とシリアライズはインプロセスです。オペレーターは、永続的なストア実装を提供し、WORM の強制とアクセス制御に対して責任を負い、信頼できる TSA からの TSA トークンを提供します。証跡レコードとドキュメントハッシュは、規制対象コンテンツを参照する場合があります。レジデンシーはオペレーターのストアに従い、保持および最小化の管理策はオペレーターの責任です。
法令遵守の境界
「法令遵守の境界」という見出しのセクション証跡のキャプチャは監査ワークフローをサポートします。法的証明でも監査認証でもなく、有効性と適合性は最終ファイルとバリデーターの組み合わせの性質のままです。このドキュメントは法的見解ではありません。ご自身のコンプライアンスおよび法務の助言者にご相談ください。
- Validation — ここでパッケージ化される検出結果を生成します。
- Compliance — 外部バリデーターの結果。
- AST audit trail — 追記専用のミューテーション履歴。
- Specifications: PAdES — 長期検証コンテキスト。
- Evidence — Deep Reference — 完全なクラスレベルの API リファレンス。