密码学概念
basic concepts
密码学:研究研究信息系统安全保密的科学,分为密码编码学和密码分析学。
密码编码学:对信息进行编码,实现信息的隐秘。
密码分析学:对加密信息进行破解以及伪造信息。
明文(plaintext) 加密(encryption) 密文(cipher text) 解密(decryption)
密码体制
(P,C,K,E,D)
P:明文空间(可能明文的有限集合) C:密文空间
K:密钥空间 E:加密算法空间 D:解密算法空间
算法分类
1)按保密内容分
- 基于保护算法隐秘性
- 基于保护密钥隐秘性
PS:古典密码学和现代密码学的差别
2)按密钥特点分
- 对称密钥算法(单密钥算法、秘密密钥算法):加解密钥相同
- 非对称密钥算法(公开密钥算法):加密密钥公开、解密密钥保密
3)按明文处理分
- 分组密码:明文被分为固定长度,加密后也为固定长度
- 流密码(序列密码):每次加密一位或一个字节
ps:对称密钥算法可能为分组密码也可能为流密码,非对称密钥算法一般为分组密码
密码算法攻击分类(难度递减)
唯密文攻击:只拥有密文,试图得到密钥
已知明文攻击:拥有密文和对应的明文
选择明文攻击:拥有加密机,可以选择明文进行加密
选择密文攻击:拥有解密机,可以选择密文进行解密,最后的目的都是为了得到密钥。