论文部分内容阅读
在实际应用中,为了抵抗已知的密码攻击手段,流密码中使用的布尔函数应同时满足以下几个密码学性质:平衡性、良好的(快速)代数免疫性、高非线性度、高代数次数、适当的相关免疫度等。本论文主要研究流密码设计中所使用的布尔函数的密码学性质以及具有良好密码学性质的布尔函数的构造方法。首先,我们研究k阶Reed-Muller码RM(k,n)的生成矩阵G(k,n)中列向量的线性关系,其中k=[n/2]-1,n是一个整数。由于研究向量空间F2n上的布尔函数的代数免疫度可以转化为计算生成矩阵G(k,n)的子矩阵的秩,所以,该线性关系可以用来快捷地验证向量空间F2n上的布尔函数的代数免疫度。作为应用,我们构造出两类具有最优代数免疫度的布尔函数,并且利用该线性关系验证了几类已知布尔函数的代数免疫度。其次,基于k阶Reed-Muller码RM(k,n)的生成矩阵G(k,n)中列向量的线性关系,通过修改严格择多逻辑函数的支撑集,我们构造出两类具有最优代数免疫度的平衡布尔函数,同时从理论上推导了这两类布尔函数的非线性度下界。当变元个数n较小时,由计算机程序验证可知这两类布尔函数具有良好的快速代数免疫度。再次,利用数论中关于整数拆分的相关结果,通过修改严格择多逻辑函数的支撑集,我们构造出两类具有最优代数免疫度的旋转对称布尔函数。通过计算这两类旋转对称布尔函数的Walsh谱值,我们发现这两类旋转对称布尔函数的非线性度远高于已知的具有最优代数免疫度的旋转对称布尔函数的非线性度。此外,这两类旋转对称布尔函数的代数次数也几乎是最优的。接着,研究了Krawtchouk多项式的一个特殊性质,利用该性质我们给出通过修改两个特殊的对称布尔函数的简化真值表来构造新的二阶或三阶相关免疫对称布尔函数的具体方法。同时,通过求解一元二次或一元三次方程的根,我们构造出若干类新的二阶或三阶相关免疫对称布尔函数。最后,当n=2m时,通过修改一个二次旋转对称bent函数的支撑集,我们构造出一大类新的n元旋转对称bent函数。在研究了这些旋转对称bent函数的代数正规型之后,我们给出构造具有任意代数次数i的n元旋转对称bent函数的具体方法,其中2≤i≤m(当m=1时i=2)。