跳到主要内容
ecdsa.com

构建来源证明

关于制品如何产生的、经过签名且可验证的记录——包括源代码仓库和提交、构建平台、工作流及输入——使用方可据此检查某个包是否来自预期的源代码和流水线。
其他写法provenance attestationbuild provenanceSLSA provenanceartifact attestation

实践中,来源证明是带有 SLSA 来源证明谓词的 in-toto 证明,在 CI 中用与工作流身份绑定的短期 Sigstore 证书签名。npm 在包页面上以来源证明徽章的形式展示它,PyPI 以证明的形式展示,GitHub 通过制品证明(gh attestation verify)展示,容器镜像仓库则把它存放在镜像旁边。

来源证明回答的是“它从哪里来?”,而不是“它安全吗?”:由真实流水线构建的恶意提交同样拥有有效的来源证明。它的价值在于阻止替换(例如有人在笔记本电脑上用窃取的令牌发布包),并为事件响应人员提供确切的追溯线索。验证者应当对照预期检查仓库、工作流路径或构建器 ID,并在可能时检查提交。

标准与参考资料

全部术语