摘要

在分组密码的扩散层中构造MDS线性变换可实现良好的扩散性.构造MDS线性变换的方法有很多种,其中基于Rotational-XOR的MDS线性变换软硬件实现效率高,能够增强密码算法抵抗各种密码分析的能力,适用于对称密码算法设计,例如SMS4算法、ZUC算法等.本文研究构造MDS线性变换的必要条件,探寻分组规模为64、分块规模为8时基于Rotational-XOR的MDS线性变换.首先通过分析首行矩阵的性质,给出MDS矩阵的一个必要条件为矩阵中不可能有连续三个矩阵块相同,根据该条件证明此规模下异或项数取最小值9项时不存在MDS线性变换,并利用Magma软件验证该结论.进而研究异或项数为11项时的MDS线性变换,将此情况下的所有线性变换分为三种情况,分别是一个矩阵中至多有一个自由项、存在两个自由项落在同一矩阵中和三个自由项恰好落在同一矩阵中.这三种情况将该规模下的88×56×55×54个线性变换等价划分为15种形式,设计15个算法分别搜索后得到此规模下异或项数取11项时也不存在MDS线性变换.本文的结论和搜索方法对研究分块规模为8的MDS扩散层具有启示作用.