署名・Attestation・SLSAでAI 成果物を検証する
記事状態: 公開 · 最終確認: 2026-10-06
要点
AI 成果物の検証では、成果物 bytesのdigest、署名者/issuer、attestation subject、出典・来歴 predicate、builder/処理の流れ 主体の識別を利用側 policyに照らして確認します。
現在の判断
AI 成果物の検証では、成果物 bytesのdigest、署名者/issuer、attestation subject、出典・来歴 predicate、builder/処理の流れ 主体の識別を利用側 policyに照らして確認します。
どこまで当てはまるか
署名・Attestation・SLSAでAI 成果物を検証する
詳しく理解する
SUBJECT AND DIGEST
mutable tagやファイル nameではなくimmutable digestを公開・提供 主体の識別の基礎にします。署名・attestationのsubject digestが、実際にdeploy/useする成果物 bytesのdigestと一致することを検証します。container 索引、platform別image、モデル weights、prompt bundle等、複数成果物がある場合は対象を曖昧にしません。
SIGNER AND ISSUER
signature validityに加えて、期待するsigner 主体の識別、certificate issuer/OIDC issuer、repository/処理の流れ/生成・構築 主体の識別をpolicyへ固定します。keyless署名で「Sigstore verificationが成功した」ことだけをsigner 認可として扱いません。KMS/key signingではkey ownership、rotation、revocation、生成・構築 stepからの秘密情報 isolationを確認します。
ATTESTATION POLICY
attestationが存在することと、そのpredicate内容を承認することを分離します。predicate type/バージョン、builder、出典、処理の流れ、外部 parameters等をpolicyで評価します。signature verificationだけでpredicateの意味内容を自動承認しません。
SLSA PROVENANCE
SLSA 出典・来歴は成果物がどの生成・構築 process/platformから生成されたかを検証する材料です。builder.idをtrust 適用限界として扱い、許可するbuilderを利用側側で管理します。SLSA 生成・構築 L3であっても生成・構築 platform自体の侵害まで防ぐ保証ではありません。externalParametersはuntrusted inputとしてdownstreamで検証します。resolvedDependenciesは有用ですが完全性はbest effortであり、完全SBOMと同一視しません。
GITHUB ARTIFACT ATTESTATIONS
GitHub 成果物 Attestationsを使用する場合、attestationを取得できることだけで完了としません。成果物 digest、signature/timestamp、signer 主体の識別��repository/処理の流れ等をgh attestation verify等で検証し、組織 policyと照合します。SBOM等の別predicateを要求する場合はpredicate typeを明示します。
SIGSTORE COSIGN
cosignではsignature/attestation verification時に期待主体の識別/issuerと成果物 digest 記述・判断を確認します。記述・判断 checkingを無効化する設定を使用した場合、何が未検証になるかを明示します。in-toto attestationではpredicateに対するpolicy 妥当性の検証を別途行います。
OFFLINE VERIFICATION
air-gapped/offline環境ではattestation bundleとtrusted 全体の起点 materialを持ち込みoffline verificationを行えます。ただしoffline trusted 全体の起点はrefresh後に発生したrevocationを自動的に知りません。trusted-root更新頻度とrevocation SLOを運用条件にします。
FAIL CLOSED
signature欠落、attestation欠落、subject mismatch、主体の識別 mismatch、predicate policy 失敗、trusted-root 失敗を暗黙にallowしません。例外は担当者、理由、対象digest、期限を持つbreak-glassとして記録します。
実装・運用
本項は2026-10-06時点のSLSA v1.2、Sigstore/cosign、GitHub 成果物 Attestations公開資料に基づきます。組織 成果物へのlive signing/verification、registry/admission/配備 mutationは未実施です。
よくある失敗・反証
wrong digest、mutable tag、unauthorized valid signer、wrong issuer、broad 主体の識別 policy、builder compromise、predicate confusion、policy未評価、dependency omission、AI manifest欠落、prompt/設定差替え、要再確認 offline roots、key compromise/revocation lag、claim-check無効化、registry substitution、multi-arch ambiguity、fail-open admission、break-glass残置を想定します。
実務での使い方
本項は2026-10-06時点のSLSA v1.2、Sigstore/cosign、GitHub 成果物 Attestations公開資料に基づきます。組織 成果物へのlive signing/verification、registry/admission/配備 mutationは未実施です。
まだ確認できていないこと
- EA-266-UNKNOWN-01
組織 成果物 types、signer/KMS/keyless 主体の識別、trusted builders/workflows、registry/admission システム、SLSA 対象 level、出典・来歴 predicate/バージョン、dependency/SBOM requirements、model-weight signing format、prompt/設定 packaging、offline environment、全体の起点/revocation SLO、mirror/multi-region、break-glass、組織の利用環境 realized 状態は未確認です。
根拠資料
この記事には、直接開ける外部出典が登録されていません。出典IDや検証情報は末尾で確認できます。
更新履歴
EA-266-FIRST-20261006: 正式な 監査/publication 対応付け
出典ID・検証情報・機械可読データ
根拠の種類と情報の鮮度は、ラベルとアイコンで確認できます。
- 記事ID
- EA-266
- 最終確認日
- 2026-10-06
- 提供元・モデル・プラン・利用環境
- —
- 対象地域
- —
元資料の全文と収録照合記録
PUBLIC_CLAIM
AI Artifactの検証では、artifact bytesのdigest、署名者/issuer、attestation subject、provenance predicate、builder/workflow identityをconsumer policyに照らして確認します。
署名が暗号学的に有効であることだけを、artifactの安全性、品質、無脆弱性、完全なdependency inventoryの証明にはしません。
SUBJECT_AND_DIGEST
mutable tagやfile nameではなくimmutable digestをrelease identityの基礎にします。署名・attestationのsubject digestが、実際にdeploy/useするartifact bytesのdigestと一致することを検証します。container index、platform別image、model weights、prompt bundle等、複数artifactがある場合は対象を曖昧にしません。
SIGNER_AND_ISSUER
signature validityに加えて、期待するsigner identity、certificate issuer/OIDC issuer、repository/workflow/build identityをpolicyへ固定します。keyless署名で「Sigstore verificationが成功した」ことだけをsigner authorizationとして扱いません。KMS/key signingではkey ownership、rotation、revocation、build stepからのsecret isolationを確認します。
ATTESTATION_POLICY
attestationが存在することと、そのpredicate内容を承認することを分離します。predicate type/version、builder、source、workflow、external parameters等をpolicyで評価します。signature verificationだけでpredicateの意味内容を自動承認しません。
SLSA_PROVENANCE
SLSA provenanceはartifactがどのbuild process/platformから生成されたかを検証する材料です。builder.idをtrust boundaryとして扱い、許可するbuilderをconsumer側で管理します。SLSA Build L3であってもbuild platform自体の侵害まで防ぐ保証ではありません。externalParametersはuntrusted inputとしてdownstreamで検証します。resolvedDependenciesは有用ですが完全性はbest effortであり、完全SBOMと同一視しません。
AI_RELEASE_MANIFEST
AI releaseを単一containerだけで表現できない場合、model/model adapter、prompt/system instruction、agent graph/state-machine definition、tool/MCP schema、RAG/retrieval configuration、policy/guardrail configuration、runtime/container、dependency/SBOM reference、evaluation/acceptance artifactをmanifest化します。各構成物をdigestでbindし、release manifest自体もimmutableにします。
GITHUB_ARTIFACT_ATTESTATIONS
GitHub Artifact Attestationsを使用する場合、attestationを取得できることだけで完了としません。artifact digest、signature/timestamp、signer identity、repository/workflow等をgh attestation verify等で検証し、organization policyと照合します。SBOM等の別predicateを要求する場合はpredicate typeを明示します。
SIGSTORE_COSIGN
cosignではsignature/attestation verification時に期待identity/issuerとartifact digest claimを確認します。claim checkingを無効化する設定を使用した場合、何が未検証になるかを明示します。in-toto attestationではpredicateに対するpolicy validationを別途行います。
OFFLINE_VERIFICATION
air-gapped/offline環境ではattestation bundleとtrusted root materialを持ち込みoffline verificationを行えます。ただしoffline trusted rootはrefresh後に発生したrevocationを自動的に知りません。trusted-root更新頻度とrevocation SLOを運用条件にします。
FAIL_CLOSED
signature欠落、attestation欠落、subject mismatch、identity mismatch、predicate policy failure、trusted-root failureを暗黙にallowしません。例外はowner、理由、対象digest、期限を持つbreak-glassとして記録します。
VERIFICATION_READBACK
release/deployment時にartifact/release digest、signer identity/issuer、builder/workflow identity、predicate type/version、policy revision、verification result/timestamp、trusted-root/bundle revision、exception statusを記録します。「署名済み」というラベルだけをreadback結果にしません。
FAILURE_ENVELOPE
wrong digest、mutable tag、unauthorized valid signer、wrong issuer、broad identity policy、builder compromise、predicate confusion、policy未評価、dependency omission、AI manifest欠落、prompt/config差替え、stale offline roots、key compromise/revocation lag、claim-check無効化、registry substitution、multi-arch ambiguity、fail-open admission、break-glass残置を想定します。
IMPLEMENTATION_STATE
本項は2026-10-06時点のSLSA v1.2、Sigstore/cosign、GitHub Artifact Attestations公開資料に基づきます。organization artifactへのlive signing/verification、registry/admission/deployment mutationは未実施です。
SAFE_WORDING
AI Artifactの署名・attestation検証では、artifact bytesのdigest、署名者/issuer、attestation subject、provenance predicate、builder/workflow identityをconsumer policyに照らして検証します。署名が暗号学的に有効でも、artifactの安全性・品質・完全なdependency inventoryまでは保証しません。AI releaseを構成するmodel、prompt、agent/tool/RAG設定等はmanifestで列挙してdigest bindし、verification失敗時は暗黙にfail-openしない運用とします。
OPEN_UNKNOWN
organization artifact types、signer/KMS/keyless identity、trusted builders/workflows、registry/admission system、SLSA target level、provenance predicate/version、dependency/SBOM requirements、model-weight signing format、prompt/config packaging、offline environment、root/revocation SLO、mirror/multi-region、break-glass、tenant realized stateは未確認です。
EA-266-CURRENT-APPROVAL研究資料研究資料根拠の出所: AUDITED_CANONICAL_RESEARCH_PACKET現行本文の監査・revision対応
- 裏付ける内容
- 現行台帳のAUDIT_PASSと候補・revision・本文ハッシュの対応を確���しています。
- 確認日
- —
- 出典・実験ID
- V23-CANDIDATE-EA266-FIRST-20261015-C4
- 検証箇所
- 1KqhJtiSb2S84rWmeYVwKcT_76dBwZ_B0ZZuAWQqH0rQ/EA_REVISION_LEDGER!A63:U63 · EA_REVISION_LEDGER!A63:U63 · EA-266-FIRST-20261006
- 適用範囲
- —
- 出典・来歴
- CURRENT_CANONICAL_APPROVAL_READBACK
- 限界
- 監査状態と来歴の記録です。外部根拠の最新性や本文の全主張を追加保証しません。
EA-266-CURRENT-BODY-READBACK実装資料実装資料根拠の出所: IMPLEMENTATION_READBACK現行本文の収録照合
- 裏付ける内容
- 公開生成入力の本文SHA-256が、監査済み候補に結び付いたハッシュと一致しています。
- 確認日
- 2026-10-17
- 出典・実験ID
- BODY-SHA256:bd85f06f426e5c3d500d66cebe6664ab3cc9c265117369ac64631264df91e33f
- 検証箇所
- content/staging/EA-266.md · bd85f06f426e5c3d500d66cebe6664ab3cc9c265117369ac64631264df91e33f · EA-266-FIRST-20261006
- 適用範囲
- —
- 出典・来歴
- CURRENT_APPROVED_BODY_HASH_MATCH
- 限界
- 本文の同一性の検査です。外部システムの挙動や全主張の真偽を実証したものではありません。
- 出典ID
- V23-CANDIDATE-EA266-FIRST-20261015-C4, BODY-SHA256:bd85f06f426e5c3d500d66cebe6664ab3cc9c265117369ac64631264df91e33f
- 追跡中のUNKNOWN ID
- EA-266-UNKNOWN-01
- 再確認のきっかけ
- 正式な 改訂版/publication 状態 change · 本文 成果物 hash change · 出典 現行性 change · new contradiction or 実装 結果の照合
機械検査: 通過 — 機械検査の結果です。情報の正確性や実行の承認を保証するものではありません。
同じ記事IDの機械可読データです。