第6章 密码学和对称秘钥算法
前言
密码的三种状态
- 静止中:存储中的数据,保存在硬盘、备份磁带等存储介质中的数据。
- 运输中:运动中的数据或线路上的数据,正在两个系统之间通过网络传输的数据。
- 使用中:指保存在计算机活跃的内容中
密码的作用
- 提供保密性、完整性、身份验证和不可否认性
6.1 密码学的历史里程碑
6.1.1 凯撒密码(属于替换密码)
加密公式:C = (P + 3) m o d 2 6
解密公式:P=(C-3) m o d 2 6
Ultra :德国军工企业为政府改造了一台商用代码机,取名 Enigma。这台机器用一系列 3 到 6 位轮转执行一种极其复杂的替换密码。
Enigma:为攻击 Enigma 代码,盟国军队开始了一次绝密行动
6.2 密码学基本知识
6.2 1.密码学目标
-
保密性、完整性、身份验证和不可否认性
-
密码分类
对称密码:使用一个共享秘密秘钥
非对称密码:公钥和私钥 -
密码的特性
-
保密性Confidentiality
保密性(Confidentiality)确保数据在静止、传输和使用等三种不同状态下始终保持私密 -
完整性Integrity
确保数据没有被人未经授权更改 -
身份验证Authentication
用于验证系统用户所声称的身份,不可否认性Nonrepudiation,向接收者保证消息发自发送者,而且没有人冒充发送者。
6.2.2 密码学的概念
- 明文:用P表示明文,指一条消息进入编码形式之前
- 密文:用C表示密文,用一种密码算法给明文消息加密,生成一条密文消息。
- 密钥
密钥空间是从全 0 密钥到全 1 密钥空间是从 0 到 2n的数范围,其中 n 是密钥的位大小,如128位,表示2^128。 - 科克霍夫原则:算法应该公开
- 密码学分两块,分别是密码术和密码分析
密码术:创建和执行秘密代码和密码的技艺,也叫加密法。
密码分析:研宄的是打败代码和密码的方法
6.2.3 密码数学
-
布尔数据:开(真)和关(假)
-
逻辑运算
1) AND(与),符号^,两个为真时,值为真 OR(或),用符号 “v 表示,检查输入值中是否至少一个为真2)NOT(非) “NOT”
运算(用符号“~”或“