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

免责声明

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

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

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

题目

逐题解析

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

相关推荐
颜酱31 分钟前
二叉树分解问题思路解题模式
javascript·后端·算法
qianpeng8972 小时前
水声匹配场定位原理及实验
算法
董董灿是个攻城狮13 小时前
AI视觉连载8:传统 CV 之边缘检测
算法
AI软著研究员21 小时前
程序员必看:软著不是“面子工程”,是代码的“法律保险”
算法
FunnySaltyFish21 小时前
什么?Compose 把 GapBuffer 换成了 LinkBuffer?
算法·kotlin·android jetpack
颜酱1 天前
理解二叉树最近公共祖先(LCA):从基础到变种解析
javascript·后端·算法
地平线开发者2 天前
SparseDrive 模型导出与性能优化实战
算法·自动驾驶
董董灿是个攻城狮2 天前
大模型连载2:初步认识 tokenizer 的过程
算法
地平线开发者2 天前
地平线 VP 接口工程实践(一):hbVPRoiResize 接口功能、使用约束与典型问题总结
算法·自动驾驶
罗西的思考2 天前
AI Agent框架探秘:拆解 OpenHands(10)--- Runtime
人工智能·算法·机器学习