白盒设计提交的安全评估
1. 二阶差分计算分析(DCA)
在对设计候选方案“priceless stallman”的攻击中,常规的差分计算分析(DCA)和差分故障分析(DFA)攻击未能成功恢复其密钥。该方案通过一种掩码机制抵抗DCA攻击,即对于每个输入明文,中间值都用不同的份额进行掩码处理。
不过,利用二阶DCA攻击成功破解了该设计。与一阶DCA攻击相比,高阶DCA分析所需的样本数量呈二次方增长。这是因为需要评估所有可能的样本组合,一阶分析需要n个样本,而二阶分析则需要n(n - 1)/2个样本。通过使用如DCR和CSR等优化技术,可以大幅减少样本数量,使高阶攻击变得可行。
具体操作步骤如下:
1. 观察给定挑战的差异图(如图5所示),定位数据发生显著变化的执行时段。
2. 根据差异图确定记录软件执行轨迹的正确位置,进行二阶DCA分析。
3. 使用Jlsca工具,并行提取前8个密钥字节,分析运行约8小时。
4. 继续分析另外8个密钥字节,再运行8小时,总共运行时间约为16小时。
相关信息总结在表5中:
| 排名 | 名称 | ID | 大小 | 运行时间 | 未被破解时间 | 备注 |
| ---- | ---- | ---- | ---- | ---- | ---- | ---- |
| 1 | priceless stallman | 738 | 5.386 | 0.29 | 01:18 | 实现掩码机制 |
值得注意的是,在竞赛期间,该挑战仅在一个多小时内未被破解。推测可能存在更有效的攻击路径,如DFA攻击的变体。因为这种由输入消息确定份额的掩码对策,对于某些输入明