in-toto
in-toto 是什么?
in-toto一项开放框架,对软件供应链的每一步进行密码学证明,使消费者能够验证工件的构建与处理过程完全符合项目所有者的设计意图。
in-toto 由 CNCF 托管,把软件供应链建模为一系列步骤(克隆、测试、构建、签名、发布等),并为每一步声明输入、输出与被授权的执行者。每个步骤生成一份被签名的 link 元数据,记录原料与产物;由项目所有者签署的总体 layout 规定每一步必须由谁执行,以及工件如何在步骤间流转。验证者拿到最终工件和对应证明后,可检查整条链是否符合策略。in-toto 证明常用于表达 SLSA provenance、漏洞扫描结果、测试通过证据等被签名的谓词,通常借助 OCI 注册中心分发,并由 Sigstore 签名。它是符合 SLSA 的可验证供应链的基础技术之一。
● 示例
- 01
构建流水线生成 SLSA provenance,并以 Cosign 签名的 in-toto 证明形式发布。
- 02
在部署前验证容器镜像是否携带漏洞扫描结果的 in-toto 证明。
● 常见问题
in-toto 是什么?
一项开放框架,对软件供应链的每一步进行密码学证明,使消费者能够验证工件的构建与处理过程完全符合项目所有者的设计意图。 它属于网络安全的 应用安全 分类。
in-toto 是什么意思?
一项开放框架,对软件供应链的每一步进行密码学证明,使消费者能够验证工件的构建与处理过程完全符合项目所有者的设计意图。
in-toto 是如何工作的?
in-toto 由 CNCF 托管,把软件供应链建模为一系列步骤(克隆、测试、构建、签名、发布等),并为每一步声明输入、输出与被授权的执行者。每个步骤生成一份被签名的 link 元数据,记录原料与产物;由项目所有者签署的总体 layout 规定每一步必须由谁执行,以及工件如何在步骤间流转。验证者拿到最终工件和对应证明后,可检查整条链是否符合策略。in-toto 证明常用于表达 SLSA provenance、漏洞扫描结果、测试通过证据等被签名的谓词,通常借助 OCI 注册中心分发,并由 Sigstore 签名。它是符合 SLSA 的可验证供应链的基础技术之一。
如何防御 in-toto?
针对 in-toto 的防御通常结合技术控制与运营实践,详见上方完整定义。
in-toto 还有哪些其他名称?
常见的别称包括: in-toto。
● 相关术语
- appsec№ 1053
SLSA Framework
Supply-chain Levels for Software Artifacts:OpenSSF 发布的分级要求集合,逐级强化软件构建、签名与验证,以抵御供应链篡改。
- appsec№ 870
来源证明(Provenance Attestation)
对软件工件如何生成(源代码、构建系统、参数与依赖)进行签名且可机器验证的声明,使使用者能够信任其来源。
- appsec№ 1044
Sigstore
Linux 基金会下的开源项目,通过短期密钥、OIDC 身份和透明日志,使签名、验证与保护软件工件变得简单。
- appsec№ 226
Cosign
Sigstore 项目提供的开源命令行工具,可使用有密钥或无密钥工作流对 OCI 工件及其他软件进行签名、验证与证明。
- appsec№ 1069
软件供应链安全
保护软件生产链中每一个环节——源代码、依赖、构建、签名、分发与部署——使其免受篡改、恶意代码与完整性破坏的学科。
- appsec№ 1068
软件物料清单(SBOM)
以机器可读形式正式描述构成一款软件的组件、库与依赖项及其版本与关系的清单。