【密码学——基础理论与应用】李子臣编著 第五章 序列密码 课后习题

免责声明

这里都是自己搓或者手写的。

里面不少题目感觉有问题或者我的理解有偏颇,请大佬批评指正!

不带思考抄作业的请自动退出,我的并非全对,仅仅提供思维!

题目

逐题解析

5.1

我们先要知道三阶LFSR函数的表达式:

重要的是要读懂这句话:"c3=1时有4种线性反馈函数",实际上就是c2c1分别为00,01,10,11的情况

情况1:c2c1=00

|----|----|----|----|
| a3 | a2 | a1 | 输出 |
| 1 | 0 | 1 | |
| 1 | 1 | 0 | 1 |
| 0 | 1 | 1 | 0 |
| 1 | 0 | 1 | 1 |

T=3,输出序列为

情况2:c2c1=01

|----|----|----|----|
| a3 | a2 | a1 | 输出 |
| 1 | 0 | 1 | |
| 0 | 1 | 0 | 1 |
| 1 | 0 | 1 | 0 |

T=2,输出序列为

情况3:c2c1=10

|----|----|----|----|
| a3 | a2 | a1 | 输出 |
| 1 | 0 | 1 | |
| 1 | 1 | 0 | 1 |
| 1 | 1 | 1 | 0 |
| 0 | 1 | 1 | 1 |
| 0 | 0 | 1 | 1 |
| 1 | 0 | 0 | 1 |
| 0 | 1 | 0 | 0 |
| 1 | 0 | 1 | 0 |

T=7,输出序列为

情况4:c2c1=11

|----|----|----|----|
| a3 | a2 | a1 | 输出 |
| 1 | 0 | 1 | |
| 0 | 1 | 0 | 1 |
| 1 | 0 | 1 | 0 |

T=2,输出序列为

5.2

|----|----|----|----|----|
| a4 | a3 | a2 | a1 | 输出 |
| 1 | 0 | 1 | 1 | |
| 1 | 1 | 0 | 1 | 1 |
| 1 | 1 | 1 | 0 | 1 |
| 0 | 1 | 1 | 1 | 0 |
| 0 | 0 | 1 | 1 | 1 |
| 0 | 0 | 0 | 1 | 1 |
| 0 | 0 | 0 | 0 | 1 |
| 1 | 0 | 0 | 0 | 0 |
| 0 | 1 | 0 | 0 | 0 |
| 1 | 0 | 1 | 0 | 0 |
| 0 | 1 | 0 | 1 | 0 |
| 0 | 0 | 1 | 0 | 1 |
| 1 | 0 | 0 | 1 | 0 |
| 1 | 1 | 0 | 0 | 1 |
| 0 | 1 | 1 | 0 | 0 |
| 1 | 0 | 1 | 1 | 0 |

T=15,输出序列为

5.3

|----|----|----|----|
| a2 | a1 | a0 | 输出 |
| 0 | 1 | 1 | |
| 1 | 0 | 1 | 1 |
| 1 | 1 | 0 | 1 |
| 1 | 1 | 1 | 0 |
| 0 | 1 | 1 | 1 |

T=4,输出序列为

5.4

(1)

(2)

(3)

(1000)序列

|----|----|----|----|----|
| a4 | a3 | a2 | a1 | 输出 |
| 0 | 0 | 0 | 1 | |
| 1 | 0 | 0 | 0 | 1 |
| 1 | 1 | 0 | 0 | 0 |
| 0 | 1 | 1 | 0 | 0 |
| 0 | 0 | 1 | 1 | 0 |
| 0 | 0 | 0 | 1 | 1 |

T=5,输出序列为

(0010)序列

|----|----|----|----|----|
| a4 | a3 | a2 | a1 | 输出 |
| 0 | 0 | 1 | 0 | |
| 1 | 0 | 0 | 1 | 0 |
| 0 | 1 | 0 | 0 | 1 |
| 1 | 0 | 1 | 0 | 0 |
| 0 | 1 | 0 | 1 | 0 |
| 0 | 0 | 1 | 0 | 1 |

T=5,输出序列为

(1111)序列

|----|----|----|----|----|
| a4 | a3 | a2 | a1 | 输出 |
| 1 | 1 | 1 | 1 | |
| 0 | 1 | 1 | 1 | 1 |
| 1 | 0 | 1 | 1 | 1 |
| 1 | 1 | 0 | 1 | 1 |
| 1 | 1 | 1 | 0 | 1 |
| 1 | 1 | 1 | 1 | 0 |

T=5,输出序列为

5.5

结构常数为[1,0,1,1,1]。

5.6

由题可得反馈函数为

或者序列的递推关系式(二者不一样)为

|----|----|----|----|----|
| a4 | a3 | a2 | a1 | 输出 |
| 1 | 0 | 1 | 1 | |
| 0 | 1 | 0 | 1 | 1 |
| 0 | 0 | 1 | 0 | 1 |
| 0 | 0 | 0 | 1 | 0 |
| 1 | 0 | 0 | 0 | 1 |
| 1 | 1 | 0 | 0 | 0 |
| 0 | 1 | 1 | 0 | 0 |
| 1 | 0 | 1 | 1 | 0 |

T=7,输出序列为

5.7

我其实不懂这题,书上一大堆乱七八糟的数学推导,只能问chatgpt,给出了一条结论(算是通过背结论做题吧)

5.8

线性综合解为<1+x^2+x^3,3>。

我单独写了一篇讲B-M算法的博客:

密码学------序列密码 序列线性复杂度 B-M算法 例题演示-CSDN博客

5.9

(1)课本P96定义5.8套的去 2^29-1(因为全为0不符合LFSR)

(2)上下同乘(1+x^3)

变成

根据分子知输出序列为

(和5.7如出一辙,夸自己超强的自学能力嘻嘻,再度验证密码学的教材和老师就是路边一坨)

(3)课本97定理5.11套的去 2^24-1 2^(25-15-2)=2^8

相关推荐
j_xxx404_18 分钟前
数据结构:栈和队列力扣算法题
c语言·数据结构·算法·leetcode·链表
南莺莺22 分钟前
假设一个算术表达式中包含圆括号、方括号和花括号3种类型的括号,编写一个算法来判别,表达式中的括号是否配对,以字符“\0“作为算术表达式的结束符
c语言·数据结构·算法·
THMAIL39 分钟前
深度学习从入门到精通 - 神经网络核心原理:从生物神经元到数学模型蜕变
人工智能·python·深度学习·神经网络·算法·机器学习·逻辑回归
野犬寒鸦43 分钟前
力扣hot100:旋转图像(48)(详细图解以及核心思路剖析)
java·数据结构·后端·算法·leetcode
墨染点香1 小时前
LeetCode 刷题【61. 旋转链表】
算法·leetcode·职场和发展
一枝小雨1 小时前
【OJ】C++ vector类OJ题
数据结构·c++·算法·leetcode·oj题
Tisfy1 小时前
LeetCode 3516.找到最近的人:计算绝对值大小
数学·算法·leetcode·题解
自信的小螺丝钉1 小时前
Leetcode 206. 反转链表 迭代/递归
算法·leetcode·链表
黑色的山岗在沉睡2 小时前
LeetCode 189. 轮转数组
java·算法·leetcode
墨染点香2 小时前
LeetCode 刷题【65. 有效数字】
算法·leetcode·职场和发展