对称加密和消息机密性
2.1对称加密原理
对称加密方案 |
- 明文、
- 加密算法、
- 秘密密钥(同一个密钥可以同时用作信息的加密和解密)、
- 密文、
- 解密算法
安全使用要求 |
- 需要一个强加密算法;
- 发送方和接收方必须通过安全方式获得密钥并保证密钥安全。
对称加密算法的安全主要取决于密钥的保密性。
2.1.1密码体制
从以下三个不同的方面分类 |
- 替换——明文的每一个元素都映射到另外一个元素
- 换位——明文的元素都被再排列
使用的密钥数
- 非对称密码体制——加密算法和解密算法分别用不同的密钥实现,并且加密密钥不能推导出解密密钥
- 对称密码体制——他的加密密钥和解密密钥相同,或者虽然不相同,但是其中一个的任意一个可以很容易的导出另外一个
明文的处理方式 |
-
分组密码——每次只能处理特定长度的一块数据的密码算法(一块是指分组),一个分组的比特数称为分组长度;处理完一个分组就结束了,不需通过内部状态来记录加密的进度
-
流密码——对数据流进行连续处理的一类密码算法,每次产生一个输出元素
2.1.2密码分析
对加密消息的攻击类型 |
- 唯密文——几个消息的密文,这些都是用同一个加密密钥加密的;所用的算法
- 已知明文——几个消息的密文,这些都是用同一个加密密钥加密的;对应于上面密文消息的明文消息;所用的算法
- 选择明文——攻击者选定一个明文块,并尝试在密文中寻找其加密结果
- 选择密文——攻击者知道了要解密的密文,产生这些密文的加密算法以及相应的明文块。攻击者的工作是要得出用于加密的密钥
- 选择文本——选定明文攻击和选定部分密文攻击的组合
唯密文攻击是最容易抵抗的
计算安全应满足的条件 |
- 破解密文的代价超过被加密信息的价值
- 破解密文需要的时间超出信息的有效寿命