新闻详情

新闻详情

首页 / 资讯中心 / 详情

codex-app-mirror安全设计详解:EdDSA字节级签名+固定公钥,如何守护Codex安装包真实性

发布时间:2026/9/26 10:26:48来源:尧图网络
codex-app-mirror安全设计详解:EdDSA字节级签名+固定公钥,如何守护Codex安装包真实性
codex-app-mirror安全设计详解EdDSA字节级签名固定公钥如何守护Codex安装包真实性【免费下载链接】codex-app-mirror原样镜像官方 Codex 桌面应用:每 15 分钟探测、SHA256 可校验、国内直连下载、 Mac 可增量更新 | Verbatim, verifiable mirror of the official Codex desktop app — probed every 15 min, with a Sparkle delta-update feed.项目地址: https://gitcode.com/gh_mirrors/co/codex-app-mirrorcodex-app-mirror是一个面向 OpenAI Codex 桌面应用的安装包镜像项目它每 15 分钟探测一次上游把官方 Windows MSIX 与 macOS DMG原样、可校验地发布出来并为 macOS 提供 Sparkle 增量更新源。既然安装包要经过第三方镜像流转如何保证拿到的就是官方原件就成了整个项目的核心命题。本文用大白话拆解它的三道安全防线EdDSA 字节级签名、**固定公钥pinned key**与macOS 身份门禁让你看懂镜像不篡改到底是怎么被技术强制的而不是口头承诺。一、先搞懂一个前提为什么镜像项目最怕换包想象你在下载一个几 GB 的安装包。如果中途有人把官方包换成自己的包哪怕只改一个字节植入后门普通用户根本无从察觉。这就是下载渠道的信任问题。codex-app-mirror的解法很硬核每一道环节都把与官方字节完全一致变成可机器验证的事实任何一步校验失败整个发布流程直接中止fail-closed宁可不发也不发错。下面逐一拆解。二、第一道防线EdDSA 字节级签名签名跟着字节走什么是 EdDSA 签名30 秒科普EdDSA基于椭圆曲线的数字签名算法常见实现是 Ed25519可以理解为官方给文件盖的一枚防伪印章OpenAI 用私钥给 Sparkle 更新归档.zip算出一串签名任何人拿公钥就能验签文件改一个字节签名立刻失效关键在于签名签的是文件的原始字节跟文件存放在哪里、URL 叫什么名字完全无关。Codex 的 macOS 更新源appcast里每个enclosure都带有sparkle:edSignature属性就是这枚印章。镜像的关键操作只换地址不动字节镜像脚本 build-appcast.sh 在生成自己的 appcast 时只做一件事把下载地址url从 OpenAI 的服务器换成镜像地址其余属性——包括sparkle:edSignature签名值——逐字原样保留。对应地下载脚本 download-macos.sh 把官方.zip归档逐字节复制verbatim copy归档字节被原样拷贝这正是官方 EdDSA 签名保持有效的前提镜像从不运行 BinaryDelta从不重新计算签名。换句话说官方做了什么镜像做了什么结果用私钥对归档字节签名原样复制字节 原样复制签名客户端用 OpenAI 公钥验签依然通过—若镜像擅自改动 1 个字节验签必然失败更新直接拒绝所以镜像无法伪造签名不是一句口号而是密码学的必然没有 OpenAI 私钥任何修改都过不了客户端的 EdDSA 验签。探测阶段同样严格probe-release.sh 在抓取官方 appcast 时会把每个增量差量包delta的全部属性原样记录并校验其下载 URL 是否为官方 HTTPS 地址、文件名是否安全合法从源头掐掉投毒的可能。三、第二道防线固定公钥拒绝听信上游字节级复制保证了签名对得上但还有一个更深的问题客户端拿哪把公钥去验签如果公钥也是每次从网络动态获取攻击者只要同时篡改文件 公钥就能骗过验签这叫公钥注入攻击。codex-app-mirror的做法是把 OpenAI 的 Ed25519 公钥硬编码写死在仓库里pinned key。在 read-macos-metadata.sh 中预期签名团队 ID2DC432GLL2OpenAI 的 Apple 开发者团队预期 Sparkle 公钥mNfr1v9t63BfgDtlw4C8lRvSY6uMggIXABDOCi3tS6k这意味着无论上游 appcast 将来怎么写、网络上返回什么只要验签用的公钥不是这把写死的钥匙流程就报错退出。公钥钉死在仓库中、可被社区审计是整条信任链的锚点。同样的思路也用在了Linux Preview 通道probe-linux-preview.sh 使用固定在仓库里的 codex-linux-repository-key.b64 公钥先核对密钥指纹3BFA0E4AE8B8CC16A2D9BA684A3B4A566C4660E4是否一致再用gpgv验证 OpenAI 官方 APT 仓库的InRelease与 RPM 仓库的repomd.xml签名probe-linux-preview.sh——仓库元数据不被官方私钥签过一个包都不会下载。校验脚本 verify-linux-preview.sh 对同一把固定密钥做了双重门禁。四、第三道防线macOS 身份门禁长得像不算数光验字节还不够镜像还回答了一个问题这个 DMG 里装的应用真的是 OpenAI 的 Codex 吗read-macos-metadata.sh 在 macOS 上挂载 DMG 后执行一组身份门禁检查任何一条不满足立即失败只有一个顶层.app——防止夹带隐藏应用find_single_top_level_appBundle ID 必须匹配稳定通道必须是com.openai.codexBeta 通道必须是com.openai.codex.beta写死在脚本里不接受差不多read-macos-metadata.sh内置公钥核对读取应用Info.plist中的SUPublicEDKey必须与第三部分写死的固定公钥一致——这等于让应用自带验签钥匙与仓库钉死的钥匙互相咬合防止有人替换应用后偷梁换柱Apple 代码签名全量校验运行codesign --verify --deep --strict逐层验证签名链并核对 TeamIdentifier 是否等于2DC432GLL2read-macos-metadata.sh。这套门禁的妙处在于它不信任文件名、不信任版本号、不信任任何看起来对的东西只信任 Apple 的签名体系和密码学验证。五、配套保险尺寸校验与 SHA256 双重核对三道主防线之外还有两个低成本但高效的保险丝下载即量尺寸download-macos.sh 中的validate_size会把每个下载文件的实际字节数与探测阶段从官方响应头里读到的Content-Length精确比对差 1 个字节就中止——传输被截断、被替换都躲不过SHA256 全量清单每次发布都会生成 SHA256SUMS.txt 与release-manifest.json上游指纹用户可手动二次核对探测阶段还会用这些指纹与上一次 Release 对比上游没变就不重复发版减少无意义的资产流转probe-release.sh 甚至会把 appcast 声明的长度与真实对象大小对齐。六、总结一条密码学闭环的信任链把上面的环节串起来就是一条完整的信任链官方私钥签名归档 ──► 镜像逐字节复制不动签名 │ ├─► 固定公钥钉死在仓库公钥可审计 ├─► macOS 身份门禁Bundle ID Team ID 代码签名 ├─► 字节尺寸核对下载即校验 └─► SHA256SUMS.txt 供用户终验防线防的是什么核心文件EdDSA 字节级签名镜像篡改文件字节build-appcast.sh固定公钥公钥注入、供应链替换read-macos-metadata.shmacOS 身份门禁冒充官方应用read-macos-metadata.shLinux 仓库密钥固定伪造 APT/RPM 仓库probe-linux-preview.sh对普通用户而言你只需要记住一句话codex-app-mirror 的每个字节都可以被验证是官方的——下载后顺手核对一下SHA256SUMS.txt你的 Codex 安装包就经过了四重保险的背书。更多通道策略与更新机制的说明可参考 docs/beta-prerelease.md 与项目主文档 README.md。【免费下载链接】codex-app-mirror原样镜像官方 Codex 桌面应用:每 15 分钟探测、SHA256 可校验、国内直连下载、 Mac 可增量更新 | Verbatim, verifiable mirror of the official Codex desktop app — probed every 15 min, with a Sparkle delta-update feed.项目地址: https://gitcode.com/gh_mirrors/co/codex-app-mirror创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
网站建设高端定制企业官网
RELATED

相关资讯

更多精彩内容,欢迎继续阅读

较早相关资讯

最新相关资讯

数据库原理课后题拆解:关系代数、SQL与范式分解实战验证 2026/9/26 22:57:08

数据库原理课后题拆解:关系代数、SQL与范式分解实战验证

简介:这份资源是钱学忠《数据库原理及技术》教材的配套习题答案,面向高校计算机专业学生、备考数据库相关课程考试的学习者,以及希望巩固数据库理论与实践基础的自学者。内容围绕数据库设计、SQL语言、关系数据库理论、数据库管理系统与数据库…

阅读更多 →
搞定seo数据监控的3个实战案例:前端开发避坑指南 2026/9/26 22:57:08

搞定seo数据监控的3个实战案例:前端开发避坑指南

搞定seo数据监控的3个实战案例:前端开发避坑指南 改个需求建站公司拖一周?别急,这不仅仅是沟通问题,更是数据闭环缺失的结果。很多前端工程师在接手“优化网站SEO”的需求时,往往陷入误区:只盯着代码标签,却忽略了seo数据背后的真实反馈。我…

阅读更多 →
计算机网络实操指南:从Wireshark抓包到TCP/IP原理深度验证 2026/9/26 22:57:08

计算机网络实操指南:从Wireshark抓包到TCP/IP原理深度验证

1. 这不是“背书清单”,而是一张能真正跑通网络的思维地图你手里的《王道计算机网络知识点总结》,大概率正躺在考研复习资料堆最上面——封面被翻得发毛,页脚卷了边,荧光笔划满重点,但合上书那一刻,脑子里还…

阅读更多 →
WinCC画面图层隐藏显示:命名规范、C脚本与动态对话框实战 2026/9/26 22:57:02

WinCC画面图层隐藏显示:命名规范、C脚本与动态对话框实战

简介:面向工业自动化与SCADA系统开发者的WinCC画面图层控制实践资源,适合正在学习WinCC组态、或需实现画面动态交互的工程师。资源以实际项目案例形式,完整展示图层隐藏/显示功能的实现过程:包含rpl、pdl等WinCC画面与项目文件&am…

阅读更多 →
5个技巧搞定wps免费模板网站性能优化避坑 2026/9/26 22:57:02

5个技巧搞定wps免费模板网站性能优化避坑

5个技巧搞定wps免费模板网站性能优化避坑 很多老板一上来就问:这模板咋改颜色?其实你打开那个wps免费模板网站下载的页面,第一眼就劝退你了。界面排版像2010年的Word文档,字体全是宋体,图片还是灰度图,看着就透着一股“廉价感”。更坑的…

阅读更多 →
S3可视化客户端选型指南:稳、快、可逆的生产级实践 2026/9/26 22:56:55

S3可视化客户端选型指南:稳、快、可逆的生产级实践

1. 项目概述:为什么你需要一个真正“能用”的S3可视化客户端?S3对象存储可视化管理工具客户端——这名字听起来像技术文档里的标准术语,但实际用起来,很多人第一反应是:“我到底该装哪个?”不是所有标着“S…

阅读更多 →

今日资讯

本周资讯

本月资讯

看完文章仍有疑问?

联系尧图顾问,获取一对一建站咨询

立即免费咨询 📞 400-888-8888
📞 ✉