苹果今天干了一件挺少见的事:把自家最核心的加密代码开源了,还附了一篇长文解释他们怎么确保这玩意儿真的安全。
这事得从2024年说起。那年iOS 17.4发布,苹果给iMessage塞进了PQ3协议——这是他们第一次公开层面的后量子安全布局。简单说,就是防着未来量子计算机把现在的加密体系一锅端。PQ3的狠之处在于,不仅对话开始时有保护,连密钥刷新过程中也全程罩着。
今天这波更新是续集。GitHub上新建的corecrypto仓库,包含了苹果Security框架、CryptoKit、CommonCrypto的底层加密库源代码。加密、哈希、随机数生成、数字签名,这些iPhone和Mac天天在干的活,底层用的就是这个。
仓库里还有两样硬货:ML-KEM和ML-DSA的实现代码。这是苹果选定的两种后量子算法,外加测试工具、性能工具、构建目标,以及一个专门放形式化验证的文件夹。
苹果说,那个文件夹里有证明工作和配套工具,用来确认他们的实现符合FIPS 203和FIPS 204——NIST给ML-KEM(安全密钥协商)和ML-DSA(数字签名)定的标准,专门针对未来量子计算机的威胁。
但开源只是面子,里子是那篇技术长文。苹果详细解释了怎么验证这些代码,以及为什么要现在放出来。
"2026年5月22日发布的corecrypto源代码,我们正在与全球密码学社区分享应用形式化验证的重大进展,包括我们的方法细节和使用的工具。它们被公开释放,以鼓励更广泛的采用,支持对我们工作的批判性审查,并帮助推进关键软件保障的最新水平。"
验证过程相当折腾:常规测试、模拟、独立审查,再加上苹果自己的形式化验证。苹果坦承,现有工具满足不了他们的需求——corecrypto得跑在全系产品上,从不同的Apple Silicon设计到便携C代码,再到为自家处理器手写优化的ARM64汇编。光靠现成的验证方法,根本罩不住。
这套自定义方法确实抓到了常规测试漏掉的问题。苹果举了个例子:早期ML-DSA实现里漏了一个步骤,形式化验证给揪出来了。
开源加密代码这事,苹果做得不多。但后量子安全是个特殊战场——算法标准刚定,实现质量参差不齐,社区审查比闭门造车靠谱。苹果把代码和验证方法一起扔出来,既是秀肌肉,也是找茬。毕竟,真到量子计算机成熟那天,现在埋的雷全是定时炸弹。
热门跟贴