【密码学】1. 引言
目录
- 1. 引言
- 1.1 密码学的发展概况
- 1.2 密码学的基本概念
- 1.3 密码体制的攻击方法
- 1.4 古典密码体制
- 1.5 第一章重点
- 1.6 密码的其他分类方式
1. 引言
1.1 密码学的发展概况
- 学科属性:古老、年轻且深奥,研究信息系统安全保密,包含密码编码学和密码分析学。
- 发展阶段:
- 古典密码学→现代密码学
- 1949 年前:技术型 “艺术”,非科学
- 1949 年:Shannon 发表《保密系统的通信理论》,使密码学成为科学
- 1976 年:Diffie 和 Hellman 发表《密码学的新方向》,引发密码学革命(提出非对称密钥思想)
- 1977 年:美国国家标准局公布 DES 算法,公开算法细节,推动密码学普及
- 现代应用:数据加密、密码分析、数字签名、信息鉴别、零知识认证、秘密共享等。
- 数学工具:概率统计、数论、代数、混沌、椭圆曲线等。
1.2 密码学的基本概念
- 核心术语:
- 明文(plaintext):未加密的信息
- 密文(ciphertext):加密后的信息
- 加密:将明文伪装为密文的过程(记为 EK(M)=CE_K(M)=CEK(M)=C)
- 解密:将密文恢复为明文的过程(记为 DK(C)=MD_K(C)=MDK(C)=M)
- 密钥(K):控制加密和解密的参数,部分算法使用不同加密密钥(K1K_1K1)和解密密钥(K2K_2K2),满足 DK2(EK1(M))=MD_{K_2}(E_{K_1}(M)) = M DK2(EK1(M))=M。
- 密码系统模型:
- 要素:信源(明文 MMM)、加密器(EK1E_{K_1}EK1)、密钥源(K1,K2K_1,K_2K1,K2)、传输信道(密文 CCC、密钥信道)、解密器(DK2D_{K_2}DK2)、接收者(明文 MMM)。
- 攻击类型:主动攻击(篡改 ccc 为 c′c′c′)、被动攻击(窃听 ccc)。
- 密码体制分类:
- 对称密码(单钥 / 私钥密码):加密与解密密钥相同(如分组密码、流密码)。
- 非对称密码(双钥 / 公钥密码):加密与解密密钥不同(如 RSA)。
- 好的密码体制的条件:
- 已知明文 mmm 和加密密钥 k1k_1k1 时,计算 c=Ek1(m)c=E_{k_1}(m)c=Ek1(m) 容易;已知密文 ccc 和解密密钥 k2k_2k2 时,计算 m=Dk2(c)m=D_{k_2}(c)m=Dk2(c) 容易。
- 未知解密密钥 k2k_2k2 时,无法由密文 ccc 恢复明文 mmm。
- 可破译性:
- 可破译:能由密文确定明文 / 密钥,或由明文 - 密文对确定密钥。
- 不可破译:反之。
1.3 密码体制的攻击方法
- 攻击类型:
- 穷举攻击:试遍所有密钥→对抗:增大密钥数量。
- 统计分析攻击:分析明文与密文的统计规律→对抗:使两者统计规律不同。
- 解密变换攻击:针对加密变换的数学基础求解解密变换→对抗:选用数学基础坚实、复杂度高的算法。
- 攻击场景(强度递增):
- 唯密文攻击:仅知密文。
- 已知明文攻击:知部分明文及对应密文。
- 选择明文攻击:可选择明文并获取对应密文。
- 选择密文攻击:可选择密文并获取对应明文。
- 安全性分类:
- 无条件安全:一次一密方案(理论上不可破译)。
- 计算上安全:满足以下任一条件:破译代价超过信息价值;破译时间超过信息有效期(如流密码、分组密码、公钥密码)。
1.4 古典密码体制
-
置换密码(易位密码):
- 原理:明文字母位置重新排列,字母本身不变。
- 例子:明文 “never accept failure no matter how often it visits you”→密文 “uoys tisi vtin etfo wohr etta mone ulia ftpe ccar even”。
- 特点:简单但不安全,易被识破。
-
单表代替密码:
- 原理:用一个密文字母表中的字母一对一替换明文字母表中的字母(f:A→B,f(ai)=bif:A→B,f(a_i)=b_if:A→B,f(ai)=bi)。
- 分类:
- 加法密码:j=i+k(modn)(0<k<n)j=i+k(modn)(0<k<n)j=i+k(modn)(0<k<n),如凯撒密码(k=3,明文 “ATTACK”→密文 “DWWDFN”)。
- 乘法密码:j=ik(modn)(0<k<n,且k与n互质)j=ik(modn)(0<k<n,且k与n互质)j=ik(modn)(0<k<n,且k与n互质)。
- 仿射密码:加法与乘法结合,j=k0+ik1(modn)(0<k0<n,k1与n互质)j=k_0+ik_1(modn)(0<k_0<n,k_1与n互质)j=k0+ik1(modn)(0<k0<n,k1与n互质)。
- 密钥短语代替密码:以短语为密钥(去重后作为密文前缀,剩余字母补全),如密钥 “Happy New Year”→密文表(a→H,b→A,c→P,…)。
-
多表代换密码:
-
原理:将明文分为 n 个字母的分组,
加密公式Ci=AMi+B(modN)(A为可逆矩阵,gcd(∣A∣,N)=1)C_i=AM_i+B(modN)(A为可逆矩阵,gcd(∣A∣,N)=1)Ci=AMi+B(modN)(A为可逆矩阵,gcd(∣A∣,N)=1);
解密公式Mi=A−1(Ci−B)(modN)M_i=A^{−1}(C_i−B)(modN)Mi=A−1(Ci−B)(modN)。
-
例子:n=3,N=26,明文 “YOUR PIN NO IS FOUR ONE TWO SIX”→密文 “WGI FGJ TMR LHH XTH WBX ZPS BRB”。
-
1.5 第一章重点
- 密码体制的分类(对称 / 非对称)。
- 攻击方法:穷举攻击、统计分析攻击、解密变换攻击。
- 攻击场景:唯密文、已知明文、选择明文、选择密文攻击。
- 古典密码的基本原理(置换、单表 / 多表代替)。
1.6 密码的其他分类方式
- 按历史发展阶段:手工密码、机械密码、电子机内乱密码、计算机密码。
- 按操作类型:替代密码、移位密码。
- 按保密程度:理论上保密、实际上保密、不保密。
- 按明文处理方法:分组密码、序列密码。
- 按密钥类型:对称密钥密码、非对称密钥密码