《孙子兵法》有云:知己知彼,百战不殆;不知彼而知己,一胜一负;不知彼不知己,每战必败。保护己方秘密并洞悉敌方秘密是克敌制胜的重要条件。
何谓“加密”:
- “密码”或“加密系统”用于“加密”数据。
- 对于原始的未加密的数据,我们称之为“明文”
- 对于加密的结果,我们称之为“密文”。
-
通过称为“解密”的过程,我们把密文恢复成原始的明文。
理想的加密系统:
- 过去的明文和密文攻击者可以知道
- 加密和解密的算法对方可以知道
- 只要密钥不泄露,对方就无法破解新的密文
- 可以公开除了密钥之外的整个密码系统的一切内容
古典密码算法历史上曾被广泛应用,大都比较简单,使用手工和机械操作来实现加密和解密。它的主要应用对象是文字信息,利用密码算法实现文字信息的加密和解密。古典密码学的两种加密思路如下:
- 替换密码
简单替换密码加密是通过将当前字母替换为在常规字母表中第n个位置之后的那个字母来完成的。较复杂的替换密码是为字母表建立映射关系,由此可以产生更大的密钥空间。
- 换位密码
换位密码不对任何明文内容进行替换,而是通过换位(打乱顺序)的方法进行加密。典型的换位密码是双换位密码,这种加密方案首先要将明文写在一个给定大小的矩阵中,然后对行和列依据特定的序列进行置换操作。
混淆(confusion&