这是关于 Clang 的一系列内容,主要包括以下方面:
- 博客内容概述:包含多个关于不同主题的博客文章链接,如 2024 年的各种加密相关话题、编译器优化、安全问题等。
2024.08.03 相关内容:
- 编译器“优化”问题:编译器“优化”存在诸多问题,如引入的 bug 被归咎于程序员而非编译器作者,实际优化效果不如程序员,且“优化”可能导致安全问题如定时泄漏。
- 定时泄漏实例:如在 Kyber 参考代码中,Clang 对特定计算的优化导致了定时泄漏,通过 bit-test 指令和条件分支将秘密信息泄漏到时间中。同时还提到了其他类似的编译器补丁导致的定时泄漏问题。
- 防止定时泄漏的方法:可以通过预部署测试套件检测定时泄漏,在重写代码时回退到旧的编译器版本;也可以将库以汇编语言形式分发,或者在 C、C++等代码中引入抗定时泄漏的措施,如扫描源代码中特定的表达式并进行处理。还提到了一些相关的工具和函数,如 TIMECOP 及其后续版本,以及 libmceliece 中的相关函数。
总体而言,该内容强调了编译器“优化”可能带来的安全问题,并探讨了一些防止和解决这些问题的方法。
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。