密码学Cryptography and Information Security(1)

1 阅读2分钟

古典密码学

基本定义

一个密码系统是由如下五元组定义的

image.png

  • P:有限的可能明文的集合。(明文空间)
  • C:有限的可能密文的集合。(密文空间)
  • K:密钥空间,是有限的可能密钥的集合。
  • E:加密函数空间。
  • D:解密函数空间。

image.png

剩余类

在密码学中,很多运算(如 Caesar 密码、Affine 密码)是在模 m 运算下进行的。

image.png

乘法可逆剩余类

image.png 要点:所有与m互素的数

移位密码

image.png

移位密码(也叫凯撒密码)是最简单的替换密码之一。它通过将字母在字母表中向后移动固定位置来加密。

例2.1 假设移位密码的密钥 K=11,明文为:

wewillmeetatmidnight.

解答

首先,我们按照指定的对应关系(a=0, b=1, ..., z=25)将明文转换为整数序列,得到以下结果:

2242281111124419
01912831386719

接着,我们将每个数值加上 11,并将结果模 26 化简:

71571922222315154
114231914241917184

最后,将整数序列转换回字母,得到密文:

HPHTWWXPPELEXTOTYRSE

为了解密密文,我们首先将密文转换为整数序列,然后每个数减去 11(并模 26 处理),最后再将整数序列转换回字母。

替换密码

这种密码系统已使用了数百年。报纸上的“密文”谜题就是替换密码的例子。

image.png

例如,一个具体的密钥 π∈K(密钥空间):

明文abcdefghijklm
密文XNYAHPOGZQWBT
明文nopqrstuvwxyz
密文SFLRCVMUEKJDI

加密示例:hello → GHBBF
解密示例:OFFA → good

这种密码的密钥总量是 26! 种可能,暴力搜索几乎不可行,但由于没有隐藏明文的统计特征(如字母频率),很容易被频率分析攻破。

欧拉函数

image.png

image.png

什么是“互素”,gcd(a,m)=1, 意思是:a 和 m 没有任何公共因子(除了1)。 比如:

  • 3 和 10 → 互素 ✅
  • 4 和 10 → 不互素(因为都有因子2)❌

欧拉函数表示,在 1 到 m 之间,有多少个数和 m 互素。 那最后的公式该怎样理解呢?举个栗子:

image.png

乘法逆元

image.png

乘法逆元可以理解为:一个数的“模意义下的倒数”。

image.png

举个栗子:

image.png

一个数在 mod 质数下都有逆元,所以模素数的世界非常“干净”。

image.png

这个概念是这些东西的基础,所以很重要:

  • RSA 加密
  • 椭圆曲线
  • 模逆(算法题常考)
  • 线性代数(有限域)

Z26中的逆元:

image.png