2. 传统加密技术
2.1 对称密码模型
- 明文 Messege\X
- 加密算法 Encrypt
- 密钥 Key
- 密文 Cyphertext\Y
- 解密算法 Decrypt
2.1.1 密码编码学
密码编码学系统有以下3个独立的特征:
-
转换明文密文的运算类型
代替和置换
-
所用的密钥数
-
处理明文的方法
2.1.2 密码分析学和穷举攻击
-
密码分析学
唯密文攻击、已知明文攻击、选择明文攻击、选择密文攻击、选择文本攻击
-
无条件安全
无论有多少可使用的密文,都不足以唯一地确定密文所对应的明文,则称该加密体制是无条件安全的。
-
计算上安全的算法的标准
① 破译密码的代价超过密文信息的价值;
② 破译密码的时间超过密码的有效生命期。
-
-
穷举攻击
2.2 代替技术
2.2.1 Caesar密码
- 字母表移位
- 密钥空间25
- 明文易于识别
2.2.2 单表代替密码
- 密文行是26个字母的任意替换
- 密钥空间 26!
- 明文可以被字频分析,词频破解
2.2.3 多字母代替算法 Playfair密码
-
以一个密钥词(monarchy)以及剩余字母,填充矩阵格子,每两个字母加密一次,在相同的字母之间加一个填充字母。
M O N A R C H Y B D E F G I/J K L P Q S T U V W X Z -
密钥空间26*26=676
-
词频破解
2.2.4 多表代替密码 HIll密码
2.2.5 多表代替加密
-
Vigenere 密码
- 密钥是一个密钥词的重复
明文 H e l l o w o r l d 密钥 a b c a b c a b c a 密文 H f n l p y o s n d -
即使有如此算力能够穷举出来也没办法根据明文信息判断哪一句是真正的明文,因为会有很多句都有具体的意义
-
发现重复的密文序列,可以推算出密钥长度
-
Vernam 密码
- 基于二进制数据而非字母,使用异或加密
- 使用周期很大的循环密钥
- 如果有足够的密文,使用已知明文序列,可以被破解
2.2.6 一次一密
- 一次性密码本,明文长度和密钥一样长
- 该方法完全安全
- 密码太长,难以保护
2.3 置换技术
-
加密方法
-
按对角线的顺序写出明文(栅栏技术)
明文:meet me
密文:
m e m e t e
-
将消息一行一行地写成矩形块,把列的顺序打乱,列的次序就是密钥(置换密码)
一次加密可以很容易单个字母词频攻击,可以多次加密,这样分析难度大得多
密钥 2 1 3 明文 M E E T M E 密文 EM MT EE
-
2.4 转轮机
使用n个轮子密钥长度就是替换过n次的Vigenere密码
\[26^n \]2.5 隐写术
应用于通信双方宁愿丢失,也不愿他们进行密码通信的事实被人发现
标签:加密,置换,技术,明文,密码,密钥,密文,2.2,加密技术 From: https://www.cnblogs.com/mykaneki/p/16729976.html