论文部分内容阅读
序列密码在密码学、通信和计算机等领域有着十分重要的应用,如何评价伪随机序列是序列密码中的重要问题。随着伪随机序列研究的不断深入,特别是六十年代末,Berlekamp-Massey提出的线性反馈移位寄存器序列的B-M综合算法使得线性复杂度成为衡量流密码系统强度的重要指标。序列a的线性复杂度定义为产生序列a的最短线性移位寄存器(LFSR)的级数,记为LC ( a )。若已知序列a的连续2 LC ( a )比特,利用B-M算法就可以恢复出整条序列a。因此,一条抗击强度大的密钥序列一定要具有较高的线性复杂度,但是具有高的线性复杂度并不能保证序列具有强的抗攻击强度。例如:二元序列a = (000010000100001 )具有等于周期的线性复杂度5,即线性复杂度达到了最大,但是当把它每个周期最后一个比特改为0时其线性复杂度立即就变为0。为此,人们提出了另一个衡量序列伪随机性的重要指标:k -错线性复杂度。一条安全性强的序列不仅要有较高的线性复杂度和k -错线性复杂度,对数值较小的k ,还应有较少的k -错误序列。本文首先针对k -错线性复杂度能很好的反映序列的稳定性这一特点,运用Chan-Games算法,得到线性复杂度为2 n - 2m的2n -周期二元序列的k -错线性复杂度的具体形式,并给出了一个例子来说明这一具体形式,这一结果对于进一步探讨流密码的密钥序列的安全性有重要的应用价值。接下来,由于错误序列的多少与密钥序列的安全强度有很大的关系,对k = 4,5,论文还确定了线性复杂度为2 n - 2m的2n -周期二元序列的k -错误序列的计数M k( a )的所有可能的值。