一句话:提出密码学专用语言 EasyBC 与基于 MILP 的自动流程,用于评估分组密码抗差分密码分析能力。
差分密码分析是评估对称密码原语安全性的重要算法级攻击,其抵抗能力通常由最大期望差分特征概率刻画。本文提出基于混合整数线性规划(MILP)的通用可扩展方法,用于界定该概率。作者设计面向分组密码的高级密码学专用语言 EasyBC,并给出严格的差分指称语义,将 EasyBC 编写的分组密码自动转换为 MILP 模型。作者实现开源工具,支持全自动的差分密码分析抵抗性评估,并在 23 个真实密码原语(包括 NIST 轻量级密码标准化全部 10 个决赛算法)上评估。实验确认 EasyBC 具有表达力,且工具能有效证明所有考察分组密码的抗差分密码分析能力,使此类安全评估更易被密码学家使用。
Differential cryptanalysis is a powerful algorithmic-level attack, playing a central role in evaluating the security of symmetric cryptographic primitives. In general, the resistance against differential cryptanalysis can be characterized by the maximum expected differential characteristic probability. In this paper, we present generic and extensible approaches based on mixed integer linear programming (MILP) to bound such probability. We design a high-level cryptography-specific language EasyBc tailored for block ciphers and provide various rigorous procedures as differential denotational semantics, to automate the generation of MILP from block ciphers written in EasyBc . We implement an open-sourced tool that provides support for fully automated resistance evaluation of block ciphers against differential cryptanalysis. The tool is extensively evaluated on 23 real-life cryptographic primitives including all the 10 finalists of the NIST lightweight cryptography standardization process. The experiments confirm the expressivity of EasyBc and show that the tool can effectively prove the resistance against differential cryptanalysis for all block ciphers under consideration. EasyBc makes resistance evaluation against differential cryptanalysis easily accessible to cryptographers.
@article{paperbot2575,
title = {EasyBC: A Cryptography-Specific Language for Security Analysis of Block Ciphers against Differential Cryptanalysis},
author = {Pu Sun and Fu Song and Yuqi Chen and Taolue Chen},
journal = {Proceedings of the ACM on Programming Languages},
volume = {8},
number = {POPL},
year = {2024},
doi = {10.1145/3632871}
}