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

免责声明

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

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

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

题目

逐题解析

3.9

做这题需要有置换和错排的知识储备(见参考文献)。

解: 个元素的置换有 种方式(不妨记为a)

其中,错排的数量为 个。(不妨记为b)

因此,S上具有不动点的置换个数是a-b个。

3.10

如果我没理解错题意,那么就是书上的证明。动手举个例子去试一下,理解不难。

3.11

解:DES的密钥为56bit,每个bit对应0或者1,双重DES则有112个密钥。因此

3.12

解:101010对应的横坐标是10(即2),纵坐标对应的是0101(即5)。

100010对应的横坐标是10(即2),纵坐标是0001(即1)。

我们并不知道是哪个盒子,因此要讨论。

|-------|-----|------|------|------|------|------|------|------|------|
| | | S1 | S2 | S3 | S4 | S5 | S6 | S7 | S8 |
| (2,5) | 数值 | 6 | 4 | 15 | 11 | 13 | 8 | 3 | 12 |
| (2,5) | 二进制 | 0110 | 0100 | 1111 | 1011 | 1101 | 1000 | 0011 | 1100 |
| (2,1) | 数值 | 1 | 14 | 6 | 6 | 2 | 14 | 4 | 11 |
| (2,1) | 二进制 | 0001 | 1110 | 0110 | 0110 | 0010 | 1110 | 0100 | 1011 |

3.13

解:同上理,这是一个逆向过程。对于每个盒子,输入的数字都不一定一样。

(每一个点对应的输入值请自己翻译,表格太长写不下。。。)

|---------------|--------|--------|--------|--------|--------|--------|--------|--------|
| | S1 | S2 | S3 | S4 | S5 | S6 | S7 | S8 |
| 1010 (十进制为10) | (0,9) | (0,15) | (0,0) | (0,7) | (0,5) | (0,2) | (0,13) | (0,8) |
| 1010 (十进制为10) | (1,8) | (1,11) | (1,7) | (1,13) | (1,11) | (1,10) | (1,7) | (1,4) |
| 1010 (十进制为10) | (2,13) | (2,4) | (2,13) | (2,0) | (2,4) | (2,11) | (2,8) | (2,10) |
| 1010 (十进制为10) | (3,12) | (3,2) | (3,1) | (3,4) | (3,12) | (3,7) | (3,6) | (3,5) |
| 0010 (十进制为2) | (0,4) | (0,10) | (0,14) | (0,9) | (0,0) | (0,5) | (0,2) | (0,2) |
| 0010 (十进制为2) | (1,5) | (1,5) | (1,8) | (1,10) | (1,2) | (1,3) | (1,12) | (1,15) |
| 0010 (十进制为2) | (2,6) | (2,14) | (2,10) | (2,13) | (2,1) | (2,4) | (2,15) | (2,7) |
| 0010 (十进制为2) | (3,3) | (3,7) | (3,14) | (3,14) | (3,6) | (3,2) | (3,13) | (3,0) |

3.14(待填坑)

这题需要用到多项式乘法逆元的知识。

学了AES我才知道大二上学的离散真的是一坨,密码学核心的循环群、环、域全部不用讲。

但是期末又把群论考的群难得一批。

然后有限域多项式的乘法完全把我搞蒙b了......现在也还在消化过程中。

解:

第一步求解逆元。

由题,

用扩展欧几里得算法算出。但是我还不会算,等待填坑

第二步仿射变换。

仿射变换简单亿点点。

3.15

这个就是异或运算。

解:

3.16(待填坑)

AES的列变换矩阵(记为P)如下:

课本也给出了逆矩阵P'如下:

那么

代码有空更新,这是16进制的,目前我还不会搞。

3.17

解:xtime(b)公式如下:

若b7=0,则字节内左移一位。

若b7=1,则字节左移一位之后与4D(01001101)的按位模2实现。

推导:

0x6D·0xD5计算结果:0xBA

过程:

参考文献

置换:近世代数 笔记与题型连载 第八章(置换群)_轮换与对换的关系-CSDN博客

错排:彻底搞懂错排公式-CSDN博客

【组合数学】错排问题 ( 递推公式 | 通项公式 | 推导过程 ) ★-CSDN博客

有限域:密码编码学与网络安全--原理与实现--(第八版)第5章 ------有限域_密码编码学与网络安全第八版答案-CSDN博客

有限域、域内运算、不可约多项式、本原多项式【这篇一定能让你看懂!!】-CSDN博客

相关推荐
嗯诺3 分钟前
切换python多版本
笔记·python
仪器科学与传感技术博士19 分钟前
python:前馈人工神经网络算法之实战篇,以示例带学,弄明白神经网络算法应用的思路、方法与注意事项等
人工智能·python·深度学习·神经网络·算法·机器学习
云边有个稻草人2 小时前
【C++】第二十一节—一文详解 | 红黑树实现(规则+效率+结构+插入+查找+验证)
算法·红黑树·红黑树的插入·红黑树的结构·红黑树完整代码·红黑树的效率·红黑树的查找
java1234_小锋2 小时前
【NLP舆情分析】基于python微博舆情分析可视化系统(flask+pandas+echarts) 视频教程 - 微博舆情数据可视化分析-热词情感趋势树形图
python·信息可视化·自然语言处理
仟濹3 小时前
【C/C++】整数超过多少位时用「高精度」
c语言·c++·算法
宸津-代码粉碎机3 小时前
LLM 模型部署难题的技术突破:从轻量化到分布式推理的全栈解决方案
java·大数据·人工智能·分布式·python
都叫我大帅哥3 小时前
当数据流经LangChain时,RunnablePassthrough如何成为“最懒却最聪明”的快递员?
python·langchain
都叫我大帅哥3 小时前
机器学习界的“钢铁侠”:支持向量机(SVM)全方位指南
python·机器学习
柴 基6 小时前
Jupyter Notebook 使用指南
ide·python·jupyter
DIY机器人工房6 小时前
一个可以检测本机的字节顺序,并对任意数据进行字节顺序的反转操作的代码。
嵌入式硬件·算法·嵌入式·diy机器人工房