差分故障分析 破解 AES白盒
DFA破解白盒AES
站在巨人的肩膀上看世界
懒得讲,直接分享我感觉一些还不错的文章吧。
AES白盒的原理、差分故障分析的原理
-
复习AES加密流程,了解故障对密文的影响,进行差分故障分析,并且根据第10论密钥反推AES加密的密钥
https://bbs.kanxue.com/thread-280335.htm
文章作者写的很详细,事实上对AES白盒的差分故障分析,就是在最后一轮列混合前,修改state状态的i字节,最后会导致密文发生四字节的改变,之后与未修改state状态得到的密文进行差分,以获取第10轮密钥的范围,通过不断更换i的值,即可不断缩短大小的范围,最后,范围内将只存在唯一符合的值。
之后作者通过数学公式推导了一下,可以根据已知的第10轮密钥,一直逆推出第1轮所使用的密钥,即AES加密的密钥。
-
AES白盒(Chow方案)的设计与实现
少了一步混合双射,不过大概的思想讲的很透彻
差分故障分析破解AES白盒的代码实现
工具介绍
-
首先需要一个python库: phonenixAES ,使用这个库,我们可以推到出AES白盒的第10轮密钥
-
之后需要一个轮密钥推到密钥的程序: https://github.com/SideChannelMarvels/Stark
使用这个程序,我们可以从第10轮轮密钥逆推出第一轮轮密钥
使用方法
-
固定输入,首先正常获取AES白盒的输出
-
在最后一轮列混合前,倒数第二轮列混合后,依次修改AES白盒输入的第0~15个字节(修改成什么值都行,但要记住修改成的值是相同的),并记录输出数据,就像这样:
-
之后把这17条数据喂给 phoenixAES 库,即可得到第10轮密钥
-
利用 keyschedule 即可回复第1轮密钥,即得到AES加密的密钥
参考:
https://bbs.kanxue.com/thread-280335.htm
https://blog.csdn.net/qq_37638441/article/details/128968233
https://equinox-shame.github.io/2023/12/27/AES 白盒学习/#Chow方法下的AES白盒的实现
__EOF__

本文链接:https://www.cnblogs.com/lordtianqiyi/p/18473314.html
关于博主:评论和私信会在第一时间回复。或者直接私信我。
版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!
声援博主:如果您觉得文章对您有帮助,可以点击文章右下角【推荐】一下。您的鼓励是博主的最大动力!
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· 25岁的心里话
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 按钮权限的设计及实现