一、对称加密
1.1 (对称)加密的定义
消息,又被称为明文。使用某种方法伪装消息以隐藏它的内容的过程被称之为加密,加密后的消息称为密文,而把密文转变为明文的过程被称之为解密。
加解密使用同一密钥的算法称为对称加密算法。
1.2 对称加密算法需要满足的性质
正确性 :
安全性:至少需要首先满足克尔霍夫原理。
克尔霍夫原理:一个密码系统的安全性不应取决于其设计或实施的保密性。相反,系统的安全性应该完全取决于钥匙的保密性。
1.3 流加密
流加密是对称加密算法的一种,是指加密和解密双方使用相同伪随机加密数据流(pseudo-random stream)作为密钥,明文数据每次与密钥数据流顺次对应加密,得到密文数据流。
1.3.1 OTP
一次性密码本(One-Time Pad)是密码学中的一种加密算法,是以随机的密钥组成明文,只使用一次。
- 无特定规律的,它可以是一串随机数字,一句话,或者一本英文名著
- 密钥必须具备以下特点:与明文等长、完全随机、只使用一次,并且发送者和接收者在事先共享同一密钥。
1.4 分组密码
分组加密又称分块加密或块密码,是一种对称密钥算法。它将明文分成多个等长的模块(block),使用确定的算法和对称密钥对每组分别加密解密。如AES和3DES。