论文部分内容阅读
长期以来,在基于线性反馈移位寄存器(LFSR)的密钥流生成器中使用非线性布尔函数作为滤波函数(或称组合函数)被认为是一种有效的选择。作为滤波函数的非线性布尔函数必须具有良好的密码学性质以抵御各种已知的攻击。因此研究布尔函数的密码学性质是十分必要,也是很有意义的。近些年来,针对基于LFSR的流密码的代数攻击(包括快速代数攻击)得到了广泛而深入的关注。代数攻击的实现为设计使用在流密码中作为滤波函数的布尔函数提出了一个新的必要的密码学性质:代数免疫度。作为滤波函数的布尔函数应该具有较大的代数免疫度以抵御代数攻击,而快速代数攻击的存在则对布尔函数提出了更高的要求。本文集中研究关于布尔函数抵御代数攻击和快速代数攻击的性能。首先对具有最大代数免疫度的布尔函数的一种已知构造方法进行了更加细致的研究。然后提出了一种级联构造具有最大代数免疫度的布尔函数的方法。接着分析了一些具有最大代数免疫度的布尔函数的其它密码学性质。最后讨论了布尔函数抵御快速代数攻击的性能。本文的主要成果有:1.进一步研究了N.Li等在给定矩阵中寻找可逆子矩阵来构造具有最大代数免疫度的奇数元布尔函数的构造方法,一定程度上解决了如何更加有效地在这一给定矩阵中寻找可逆子矩阵的问题。2.发现了具有最大代数免疫度的布尔函数的一个级联性质并由此给出了具有最大代数免疫度的布尔函数的一个级联构造方法,即当n为偶数时,可以利用两个满足特定条件的具有最大代数免疫度的n元布尔函数得到一个具有最大代数免疫度的n + 1元布尔函数;还可以利用两个满足特定条件的具有最大代数免疫度的n元布尔函数和任意两个具有最大代数免疫度的n元布尔函数得到一个具有最大代数免疫度的n + 2元布尔函数。3.确定了最大或最小Hamming重量的具有最大代数免疫度的布尔函数的非线性度。4.布尔函数具有较多的无关零化子有利于代数攻击的进行。确定了具有最大代数免疫度的布尔函数的无关零化子个数。对于具有最大代数免疫度的布尔函数,使用偶数n元平衡函数可以相对有效地降低较多数量无关零化子对代数攻击的贡献。5.对于n元布尔函数提出了一个可以有效刻画布尔函数抵御快速代数攻击性能的概念:e-快速代数免疫性,其中e为整数并且1≤e < ?n2?。e-快速代数免疫性包含了对布尔函数抵御代数攻击的要求。给出了n元布尔函数具有e-快速代数免疫性的充分必要条件。利用e-快速代数免疫性可以更加细致地刻画布尔函数抵御快速代数攻击的性能。6.给出了n元布尔函数具有e-快速代数免疫性的一个判断算法。与Armknecht等人给出的算法相比,利用该算法判断布尔函数抵御快速代数攻击的性能,在一些特定的情况下具有更好的计算复杂度,尤其是在判断给定布尔函数是否为抵御快速代数攻击最优的布尔函数的时候。