The notion of branch numbers of a linear transformation is crucial for both linear and differential cryptanalysis. The number of non-zero elements in a state difference or linear mask directly correlates with the active S-Boxes. The differential or linear branch number indicates the minimum number of active S-Boxes in two consecutive rounds of an SPN cipher, specifically for differential or linear cryptanalysis, respectively. This paper presents a new algorithm for computing the branch number of non-singular matrices over finite fields. The algorithm is based on the existing classical method but demonstrates improved computational complexity compared to its predecessor. We conduct a comparative study of the proposed algorithm and the classical approach, providing an analytical estimation of the algorithm's complexity. Our analysis reveals that the computational complexity of our algorithm is the square root of that of the classical approach.
翻译:线性变换的分支数概念对于线性和差分密码分析均至关重要。状态差分或线性掩码中的非零元素数量与活跃S盒直接相关。差分或线性分支数分别表示SPN密码连续两轮中活跃S盒的最小数量(对应差分和线性密码分析)。本文提出一种有限域上非奇异矩阵分支数计算的新算法。该算法基于经典方法,但相比前者展现出更优的计算复杂度。我们对新算法与经典方法进行了比较研究,并给出了算法复杂度的解析估计。分析表明,新算法的计算复杂度为经典方法的平方根量级。