Mixed Integer Linear Programming (MILP) is a well-known approach for the cryptanalysis of a symmetric cipher. A number of MILP-based security analyses have been reported for non-linear (SBoxes) and linear layers. Researchers proposed word- and bit-wise SBox modeling techniques using a set of inequalities which helps in searching differential trails for a cipher. In this paper, we propose two new techniques to reduce the number of inequalities to represent the valid differential transitions for SBoxes. Our first technique chooses the best greedy solution with a random tiebreaker and achieves improved results for the 4-bit SBoxes of MIBS, LBlock, and Serpent over the existing results of Sun et al. [25]. Subset addition, our second approach, is an improvement over the algorithm proposed by Boura and Coggia. Subset addition technique is faster than Boura and Coggia [10] and also improves the count of inequalities. Our algorithm emulates the existing results for the 4-bit SBoxes of Minalpher, LBlock, Serpent, Prince, and Rectangle. The subset addition method also works for 5-bit and 6-bit SBoxes. We improve the boundary of minimum number inequalities from the existing results for 5-bit SBoxes of ASCON and SC2000. Application of subset addition technique for 6-bit SBoxes of APN, FIDES, and SC2000 enhances the existing results. By applying multithreading, we reduced the execution time needed to find the minimum inequality set over the existing techniques.
翻译:混合整数线性规划(MILP)是分析对称密码算法的经典方法。针对非线性层(S盒)和线性层,已有大量基于MILP的安全性分析工作。研究者提出利用不等式集合对S盒进行字级和比特级建模,以搜索密码的差分路径。本文提出两种新技术,用于减少描述S盒有效差分转移所需的不等式数量。第一种技术通过随机打断平局选择最优贪心解,对MIBS、LBlock和Serpent的4比特S盒取得优于Sun等人[25]现有结果的表现。第二种技术——子集加法——是对Boura与Coggia所提算法的改进。该技术不仅比Boura与Coggia的方法[10]更快,还能进一步减少不等式数量。我们的算法复现了Minalpher、LBlock、Serpent、Prince和Rectangle的4比特S盒现有结果。子集加法方法同样适用于5比特和6比特S盒。针对ASCON和SC2000的5比特S盒,我们改进了最小不等式数量的边界;对APN、FIDES和SC2000的6比特S盒应用该技术后,进一步优化了现有结果。通过引入多线程技术,我们将求解最小不等式集合的执行时间较现有方法显著降低。