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

免责声明

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

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

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

题目

逐题解析

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博客

相关推荐
你撅嘴真丑2 小时前
第九章-数字三角形
算法
uesowys2 小时前
Apache Spark算法开发指导-One-vs-Rest classifier
人工智能·算法·spark
ValhallaCoder2 小时前
hot100-二叉树I
数据结构·python·算法·二叉树
董董灿是个攻城狮2 小时前
AI 视觉连载1:像素
算法
智驱力人工智能3 小时前
小区高空抛物AI实时预警方案 筑牢社区头顶安全的实践 高空抛物检测 高空抛物监控安装教程 高空抛物误报率优化方案 高空抛物监控案例分享
人工智能·深度学习·opencv·算法·安全·yolo·边缘计算
猫头虎3 小时前
如何排查并解决项目启动时报错Error encountered while processing: java.io.IOException: closed 的问题
java·开发语言·jvm·spring boot·python·开源·maven
孞㐑¥3 小时前
算法——BFS
开发语言·c++·经验分享·笔记·算法
八零后琐话3 小时前
干货:程序员必备性能分析工具——Arthas火焰图
开发语言·python
月挽清风3 小时前
代码随想录第十五天
数据结构·算法·leetcode
XX風4 小时前
8.1 PFH&&FPFH
图像处理·算法