流密码基础:填空题与概念解析

需积分: 0 1 下载量 123 浏览量 更新于2024-08-05 收藏 311KB PDF 举报
"第二章知识点复习题涉及到流密码的相关概念,包括分组密码与流密码的区别,线性反馈移位寄存器(LFSR)的性质,m序列的特征,以及RC4算法和eSTREAM计划中的Grainv1算法等。" 详细知识点解释: 1. 分组密码和流密码的根本区别在于加密方式:分组密码将明文分为固定长度的块进行加密,而流密码则是逐位生成密钥流,与明文逐位异或得到密文。 2. n-LFSR(n位线性反馈移位寄存器)的最大周期是2^n - 1,这是由其构造和特性决定的。 3. 对于3-FSR,反馈函数f(a1, a2, a3) = a1 XOR a2a3,如果当前状态为(101),可以通过移位和反馈函数计算前两个状态和输出序列周期。前两个状态无法直接给出,但通过递推可以计算;输出序列的周期同样是2^3 - 1 = 7。 4. n级m序列的异相自相关函数值通常与m序列的性质相关,具体值需要具体计算。 5. 序列{ai}为m序列的充要条件是其自相关函数在非零滞后处取值为±1,且具有最大的线性复杂度。 6. m序列的最大0游程为4,其周期是2的4次方减1,即15。 7. p(x) = x3 + x + 1是m序列的生成多项式,其非0序列的异相自相关函数值为-1。 8. n级M序列(maximal length sequence)的周期是2^n - 1。 9. 钟控生成器的周期是两个LFSR周期的最小公倍数,极小多项式分别为f1(x) = 1 + x + x3和f2(x) = 1 + x2 + x3,周期为12,线性复杂度取决于它们的线性复杂度之和。 10. 构成的钟控序列的周期是LFSR1和LFSR2周期的最小公倍数,线性复杂度是它们的线性复杂度的最小值。 11. n级m序列中长为i的1游程数量,长为n的1游程数量,以及长为n的0游程的数量,这些都需要根据m序列的特性进行计算。 12. 至少需要知道n个连续的密钥流bit才能完全确定一个n级m序列。 13. RC4算法的最大密钥长度是256位。 14. n级LFSR其非零状态的状态转移图形成大圈,表明其产生的非0序列周期为2^n - 1。 15. Grainv1算法的密钥长度和目标应用有关,可能是针对硬件或软件优化的,具体值需要参考算法规范。 二、选择题部分: 1. A. 1+x+x4 和 C. 1+x+x5 可以作为非退化的5-LFSR的反馈函数,因为它们的最高次幂系数为1,且不包含低次幂的0系数。 2. B. 特征多项式p(x)与其他要素(如状态转移矩阵、序列生成函数A(x))是一一对应的,但全0状态除外,因为它不对应任何非退化序列。 这些知识点涵盖了流密码的基本原理、LFSR的工作机制以及m序列的相关属性,是理解流密码学基础的重要组成部分。