网络安全与密码学
– 截获、伪造(拒绝服务)、修改(重放和改变消息)、 中断(伪装); – 被动攻击:
被动攻击(截获)
消息内容泄露
通信量分析
被动攻击不对数据进行任何修改
2012-4-12 密码学与网络安全 32/12
攻击类型
• 理论概念:
– 截获、伪造(拒绝服务)、修改(重放和改变 消息)、中断(伪装); – 主动攻击:
2012-4-12
密码学与网络安全
32/31
计算机非对称密钥加密算法
• 1977年,麻省理工学院的Ron Rivest、 Adi Shamir和Len Adleman开发了第一 个非对称密钥加密系统,称为RSA算法。 • 原理:如果一个大数N只有两个素数因 子A和B,则可生成一对密钥。一个为公 钥,一个是私钥。
2012-4-12Fra bibliotek密码学与网络安全
32/20
块替换加密法
• 块替换加密是把一块字母换成另一块字 母,而不是把一个字母换成另一个字母。
2012-4-12
密码学与网络安全
32/21
多码替换加密法
• 使用多个单码秘钥,每个秘钥加密一个 明文字符。用完所有秘钥后,再循环使 用。所有秘钥数量称为密文周期。
密码学与网络安全
32/27
计算机对称密钥加密算法
发送方 接收方
明文
加密 用对称密钥
密文
密文
解密 用对称密钥
明文
公共网络
2012-4-12 密码学与网络安全 32/28
数据加密标准
• DES(Data Encryption Standard) • 加密解密过 程的唯一差 别是16轮密 钥顺序倒过 来。 明文(64位) 初始置换 左明文 右明文
密钥
16轮
16轮
密钥
最终置换 密文(64位)
2012-4-12 密码学与网络安全 32/29
DES的变形
• 双重DES(Double DES):两次DES加密。 • 三重DES(Triple DES):三次DES加密
2012-4-12
密码学与网络安全
32/30
其他数据加密算法
• IDEA--International Data Encryption Algorithm • RC5—Ron Rivest 5 • Blowfish– Bruce Schneier • AES—Advanced Encryption Standard
2012-4-12
密码学与网络安全
32/32
计算机非对称密钥加密算法
发送方A 接收方B
用B的私钥解密
明文 密文 密文 明文
用B的公钥加密
公共网络
2012-4-12 密码学与网络安全 32/33
RSA算法
选择两个大素数P、Q; 计算N=PxQ; 选择一个公钥E,使其不是(P-1)与(Q-1)的因子; 选择一个私钥D,满足 (DxE)mod(P-1)x(Q-1)=1; • 加密时,从明文PT计算密文CT如下: PT CT CT=PTEmod N • 将密文CT发送给接收方; • 解密时,从密文CT计算明文PT如下: PT=CTDmod N • • • •
路由器
分支机构 局域网
分支机构 局域网
2012-4-12
密码学与网络安全
32/3
安全模型
• 无安全性:根本不实现安全性; • 隐藏安全:别人不知他的内容和存在; • 主机安全:每个主机单独实现安全性; • 网络安全:控制各个主机及其服务的网络访问, 是有效且可伸缩的模型;
2012-4-12
密码学与网络安全
2012-4-12 密码学与网络安全 32/18
单码加密法
• 字母替换采用随机替换。 • 由于置换和组合量很大,很难破解。 • 使用26个字母的任何置换与组合,达 4X1026种可能性。
2012-4-12
密码学与网络安全
32/19
同音替换加密法
• 同音替换加密法:也是一次把一个明文 字母换成一个密文字母,但密文字母可 以是所选集合中的任何一个字母。
2012-4-12
密码学与网络安全
32/16
密码学的基本概念
• 密码学(cryptography)的目的是通过将 信息编码使其不可读,从而达到安全性。 • 明文(plain text):发送人、接受人和任 何访问消息的人都能理解的消息。 • 密文(cipher text):明文消息经过某种 编码后,得到密文消息。 • 加密方法:替换法(Substitution)和变换 法(Transposition)。
2012-4-12 密码学与网络安全 32/9
安全原则
• 访问控制(access control):
– 原则确定谁能访问什么;
• 角色管理:用户方能做什么; • 规则管理:什么条件下允许访问什么资源;
– 根据所采用的决策,可以建立访问控制矩阵, 列出用户及其可以访问的项目,访问控制表 (ACL)是访问控制矩阵的子集;
2012-4-12
密码学与网络安全
32/35
对称密钥加密算法加密明文消息
明文
发送方A 对称密钥加密算法
密文
对称密钥K1
2012-4-12
密码学与网络安全
32/36
用接收方的公钥包装对称密钥
对称密钥K1
发送方A 非对称密钥加密算法 用B的公钥K2 将 对称密钥K1加密 B的公钥K2
2012-4-12
用B的公钥K2 将 对称密钥K1加密
2012-4-12
密码学与网络安全
32/40
取得一次性会话密钥
用B的公钥K2 将 对称密钥K1加密 接收方B 非对称密钥加密算法 对称密钥K1
私钥
B的私钥K3
2012-4-12 密码学与网络安全 32/41
用对称密钥取得明文
密文
接收方B 对称密钥加密算法
Cryptography and Network Security
密码学与网络安全 Atul Kahate
要让三个人保住秘密, 其中两个人必须死亡!
--本杰明 富兰克林
2012-4-12
密码学与网络安全
32/2
安全的需求
资源子网
总部 • 暴露于公网上的网络
路由器
管理工作站
路由器
路由器
公共网络
路由器
安全原则
• 鉴别:
– 鉴别机制可以建立身份证明。 – 鉴别过程保证正确标识电子消息或文档来源;
我是 用户A
A C
2012-4-12
B
伪造(fabrication)
缺乏鉴别机制时可能导致伪造
密码学与网络安全 32/7
安全原则
• 完整性(integrity):
– 消息内容在发送方发出后和到达所要接收方 之前发生改变时,就会失去消息的完整性;
2012-4-12 密码学与网络安全 32/23
加密与解密
• • • • • • 加密(encryption):将明文消息变成密文消息。 解密(decryption):将密文消息变成明文消息。 算法:取一个输入文本,产生一个输出文本。 加密算法:发送方进行加密的算法。 解密算法:接收方进行解密的算法。 秘钥(key):只有发送方和接收方理解的消息。
2012-4-12
密码学与网络安全
32/24
加密与解密
• 每个加密与解密过程都有两个方面-加密与 解密的算法与密钥。 • 加密与解密过程使用的算法是公开的,但 加密与解密所用的密钥能够保证加密过程 的安全性。 • 对称密钥加密(Symmetric Key Cryptography)的加密与解密使用相同密钥。 • 非对称密钥加密(Asymmetric Key Cryptography)的加密与解密使用不同密钥。
2012-4-12
密码学与网络安全
32/26
计算机对称密钥加密算法
• 混淆(confusion):使用替换技术,保证 密文中不会反映出明文线索,防止密码 分析员从密文中找到模式,从而求出相 应明文。 • 扩散(diffusion):使用置换技术,增加 明文的冗余度,使其分布在行和列中。
2012-4-12
2012-4-12 密码学与网络安全 32/15
特定攻击
• 分组窃听(Packet sniffing):攻击者不干 扰会话,只是监视传递的分组。 • 分组伪装(Packet spoofing):使用不正确 的源地址发送分组。 • DNS伪装(DNS spoofing):使用假的IP 地址更换电脑中存的ISP的正确地址。 (DNSsec 可以防止攻击)。
密码学与网络安全
32/37
数字信封
密文
发送方A 数字信封
用B的公钥K2 将 对称密钥K1加密
2012-4-12 密码学与网络安全 32/38
数字信封通过网络到达B
发送方A 数字信封
公共网络
接收方B 数字信封
2012-4-12
密码学与网络安全
32/39
B用私钥打开数字信封
密文
接收方B 数字信封 打开
2012-4-12
密码学与网络安全
32/22
变换加密技术
• 栅栏加密技术:将明文消息写成对角线序列, 然后一行一行地产生密文。 • 简单分栏式变换加密技术:只是将明文排成矩 阵中的行序列,按随机顺序读取。 • 多轮简单分栏式变换加密技术:使密文比简单 分栏式变换加密技术得到的密文更复杂。 • Vernam加密法:使用一次性板,用完就要放 弃,适合少量明文消息。 • 书加密法/运动密钥加密法
主动攻击
中断(伪装)
修改
伪造(拒绝服务)
重放攻击
2012-4-12
改变消息攻击
密码学与网络安全 32/13
攻击类型