应用密码学期末速通复习

本文深入探讨了模运算、分数求模与负数求模的基本概念,以及gcd最大公约数、逆元的计算方法。接着介绍了DES、AES加密算法,包括操作模式如ECB、CBC、CFB和OFB,以及A5-1、RC4和Hash函数(如MD5、SHA-1)。此外,文章涵盖了数字信封、公钥密码(如RSA、Rabin、ElGamal和ECC)和数字签名(Rsa、ElGamal、Schnorr),以及秘钥协商(DH)和公钥管理技术。

模运算

分数求模

# 一个例子
1/2 mod 23
n ≡ 1/2 mod 23
2n ≡ 1 mod 23
# 也就是求2的逆元了
n = 12

负数求模

# 一个例子	x mod y ≡ x-y* |⎣x/y⎦|
# 后面的是 x/y并且向下取整
-73 mod 23-73 - 23 * ⎣-73/23⎦
					 = -73 - 23 * ⎣-3.17⎦
					 = -73 - 23 * -4
					 = -73 + 92
					 = 19

gcd最大公约数

请添加图片描述

逆元

# 辗转相除
除数作为被除数、余数作为除数
一直循环除,直到除数为 0
逆元 = 余数不为0的商相乘 + 除数为0的被除数(也就是gcd)

请添加图片描述

分组密码

DES加密

# 分组长度64位,64位秘钥(8位校验位),16轮迭代,每轮子密钥48位
# Feistel网络

# 加密
Li = Ri-1
Ri = Li-1⨁F(ki,Ri-1)
# 解密
Ri-1 = Li
Li-1 = Ri⨁F(ki,Li)

请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述

# S盒 4行16列,每行都是打乱顺序的0~15,48位8组,每组6位
# 100011,首尾代表行11(3),中间代表列0001(1),所以置换成第3行1列的数字,也就是6位压缩成4位

请添加图片描述

AES加密

........

操作模式

  • ECB最快最简单,安全性最弱,通常加密随机数据

  • CBC适合文件、软件加密,少量错误不会造成同步失败

  • CFB加密字符序列,具有同步恢复

  • OFB极易出错的环境使用,需要严格高速的同步机制

ECB电子密码本
简单,主要内容较短且随机的报文传递
加密独立分组,可以并行
单个分组的比特错误不会传播其他分组
# 相同明文或秘钥得到相同的密文,明文中重复的内容在密文体现出来,容易被统计

请添加图片描述

CBC分组链接
反馈机制,密文不仅依赖明文,还依赖前面的密文分组
正确解密需要确保前面的每个密文分组都是正确的
密文分组中的比特错误传播影响到本组和下一组的解密

请添加图片描述

CFB密码反馈
对信道错误较敏感且造成错误传播
数据加解密的速率降低,其数据率不会太高
主要适用数据库加密、无线电通信或密文信号容易丢失出错的环境

请添加图片描述

OFB输出反馈
克服错误传播带来的问题,但对密文被篡改难于检测
不具有自同步,需要保持严格的同步

请添加图片描述

序列密码

A5-1算法

请添加图片描述

# 三个反馈序列LFSR,长度19、22、23

a1= [18][17][16][13]
a2= [21][20]
a3= [22][21][
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

paidx0

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值