主要观点:介绍了 curl 以多种方式进行验证以降低发布包中出现意外或恶意内容的风险,详细说明了验证 curl 发布的具体步骤和所需工具等。
关键信息:
- 从 curl 8.8.0 开始具备此功能,之前版本较难重现。
- 发布为 tarball,有多种压缩方法且分别签名。
- 需用已知工具和确切时间戳重现 tarball。
- 有
docs/RELEASE-TOOLS.md
文档列出关键工具版本。 - 发布工具文档包含发布时间戳,需设置环境变量 SOURCE_DATE_EPOCH 来生成相同时间戳的 tarball。
- 有用于制作发布的 Dockerfile,可轻松克隆 curl 8.8.0 发布包。
- 每个发布 tarball 都签名,可通过签名验证复制的 tarball。
- 未提供签名的透明日志,但有多重安全措施。
重要细节: - curl 发布标签如 curl-3_4_5,历史原因用下划线代替点。
- 发布制作脚本确保多次运行生成相同输出。
- 用
dmaketgz
脚本并传入时间戳可生成相同时间戳的 tarball。 - 无 docker 时需使用 Debian Linux 及特定工具版本,否则可能生成不同 tarball。
- 有多个工具的具体版本如 autoconf: 2.71-3 等列在
docs/RELEASE-TOOLS.md
中。
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。