一、一些古老的加密方法:
1.隐写术----将秘密的消息隐藏在其他消息中
最常见的是隐形墨水:发送者用洋葱或牛奶在纸上书写秘密消息,接收者在纸的背面稍稍加热,看到密文。
2.希腊的波利比阿的方格
1 | 2 | 3 | 4 | 5 | |
1 | A | B | C | D | E |
2 | F | G | H | IJ | K |
3 | L | M | N | O | P |
4 | Q | R | S | T | U |
5 | V | W | X | Y | Z |
明文 | A | P | P | L | E |
密文 | 11 | 35 | 35 | 31 | 15 |
思想:替换
只要记住密码表,能够加密解密。
3.凯撒密码
A | B | C | D | E | F | G | ... | X | Y | Z |
D | E | F | G | H | I | J | ... | A | B | C |
明文 | A | P | P | L | E |
密文 | D | S | S | O | H |
思想:替换
凯撒密码表比上面的希腊方格更容易记,因为只是将明文右移3位。
二、密码学的基本概念:
研究信息系统安全技术的科学,包含两个分支:密码编码学,对信息进行编码实现隐藏信息的学问;密码分析学:研究分析破解密码或伪造的学问。两者相互对立,又互相促进地向前发展。
发送者:消息的发送方
接受者:消息的发送目标
窃听者:信息传输过程和处理系统中的非授权者
明文:将被隐藏的消息
密文:明文经变换后的形式
加密:将明文变换为密文的过程
解密:将密文恢复为明文的过程
加密算法:对明文进行加密时采用的一组规则
解密算法:对密文进行解密采用的一组规则
密钥:控制加密和解密算法操作的数据,分别有加密密钥和解密密钥
三、保密系统模型:
保密系统(M,C,K1,K2,Ek1,Dk2):
明文消息空间M
密文消息空间C
密钥空间K1和K2、在单钥体制下K1=K2=K,此时密钥k属于K
四、密码算法分类:
按保密性依赖的基础分为:
1.受限制的算法:算法的保密性基于保持算法的秘密(保密算法不公开)。
2.基于密钥的算法:算法的保密性基于对密钥的保密。
按密钥的特点分为:
对称密码算法:加密密钥和解密密钥相同,或实质上等同,即从一个易于推出另一个。又称单密钥算法。
非对称密钥算法:加密密钥和解密密钥不相同,从一个很难推出另一个,又称公钥密钥算法。
五、密码算法的安全性:
1.无条件安全:破译者即便拥有无限的资源,也无法解出对应的明文
2.计算上安全:破译的代价超出信息本身价值,破译时间超过信息的有效期