主讲人:西安交通 大学 程向前 第 8讲 网络安全 1
第 8讲 网络安全
基本概念,
? 什么是安全性?
? 密码术
? 报文鉴别
? 信息安全性
? 密钥发放和确认
实用安全技术,
? 应用层, 安全邮件
? 传输层, 电子商务,SSL,SET
? 防火墙技术
参考教科书:第 10章
主讲人:西安交通 大学 程向前 第 8讲 网络安全 2
敌友之间, Alice,Bob,Trudy
? 三位网络安全领域里的“知名人士”
? Bob,Alice (恋人 !) 需要进行“私密”的通信
? Trudy,则是,侵入者,有可能对他人的通信进行截获
、删改活动
Figure 7.1 goes here
主讲人:西安交通 大学 程向前 第 8讲 网络安全 3
什么是网络安全?
安全性, 只有发送方,意欲中的接收方能够,理解
” 报文内容
?发送方加密报文
?接收方解密报文
报文鉴别, 收发双方需要证实对方的身份
报文完整性, 收发双方需要保证报文不被篡改 (
在传输过程中,或传输完毕以后 ),不被探测
主讲人:西安交通 大学 程向前 第 8讲 网络安全 4
网络上的主动攻击和被动攻击
?截获 --被动攻击 (主要的对应策略为加密传输 )
?中断 --主动攻击 (主要的对应策略为信道冗余
,防火墙的等 )
?篡改 --主动攻击 (主要的对应策略为报文鉴别 )
?伪造 --主动攻击 (主要的对应策略为报文鉴别 )
主讲人:西安交通 大学 程向前 第 8讲 网络安全 5
因特网的安全隐患举例
分组泄漏( Packet sniffing),
?广播介质
?间谍 NIC 可以读出所有传输的分组
?即可以读出所有未加密的数据 (e.g,passwords)
?e.g.,C 在“嗅,B的分组
A
B
C
src:B dest:A payload
主讲人:西安交通 大学 程向前 第 8讲 网络安全 6
因特网安全隐患
IP 欺骗( Spoofing),
?可以应用程序中产生“原始”的 IP分组,将任意的
值植入 IP信源字段
?接受方往往分辨不出信源地址的真假
?e.g.,C 假装成 B
A
B
C
src:B dest:A payload
主讲人:西安交通 大学 程向前 第 8讲 网络安全 7
因特网安全隐患
拒绝服务 (Denial of service,DOS),
? 发送“洪水”分组将接受方“淹死”
? 分布式 DOS (DDOS),多个协调的信源向接受端发起攻击
? e.g.,C 和远程主机同步攻击 A
A
B
C
SYN
SYNSYNSYN
SYN
SYN
SYN
主讲人:西安交通 大学 程向前 第 8讲 网络安全 8
密码术的术语
对称密钥加密, 收发双方密钥完全相同
公共密钥加密, 加密密钥是 公开的,解密密钥是 保密的
注:密码术是被动攻击主要防护策略
Figure 7.3 goes here
plaintext plaintext
ciphertext
KA KB
主讲人:西安交通 大学 程向前 第 8讲 网络安全 9
常规密钥密码体制 --对称密钥加密术
替代密码, 使用一种符号来替代另一种
? 单字符密码, 用一个字母来替换另一个
明文, abcdefghijklmnopqrstuvwxyz
密文, mnbvcxzasdfghjklpoiuytrewq
Plaintext,bob,i love you,alice
ciphertext,nkn,s gktc wky,mgsbc
E.g.:
Q,这样的简单密码的解码难度如何?:
?brute force (how hard?)
?other?
主讲人:西安交通 大学 程向前 第 8讲 网络安全 10
解码难度分析
?惟秘文攻击:入侵者只有密文,不知道内容的
背景。统计分析对分析加密方案有用。
?已知明文攻击:入侵者已知某些明文和密文
?选择明文攻击:入侵者选择明文信息并且得到
相应的秘文
主讲人:西安交通 大学 程向前 第 8讲 网络安全 11
常规密钥密码体制 --对称密钥密码术, DES
DES,Data Encryption Standard
?美国加密标准 [NIST 1993]
?56-bit 对称密钥,64 bit 明文输入
?DES安全性如何?
?DES 挑战赛, 对使用 56-bit密钥的短语 (“Strong
cryptography makes the world a safer place”) 进
行的解码 (brute force)花费了 4个月
?尚未找到,后门, 解码方法
?让 DES更安全
?对每个数据块顺序使用三层 DES(3-DES)
?使用块状密码链 (use cipher-block chaining)
主讲人:西安交通 大学 程向前 第 8讲 网络安全 12
对称密钥密码术,
DES
初始置换
16轮相同的运算,每
次使用不同的 48
bits 密钥
最终置换
DES 运算
主讲人:西安交通 大学 程向前 第 8讲 网络安全 13
公开密钥密码术
对称 密码密码术
? 要求收发双方约定共
享的密钥
? Q,如何进行密钥的
约定 (特别是在从未
“谋面”的情况下 )?
公开 密钥密码术
? 完全不同于对称密钥的
加密方法 [Diffie-
Hellman76,RSA78]
? 收发双方 不 共享密钥
? 加密的密钥匙 公开的 (
公诸于 世 )
? 解码密钥是保密的 (只
有接收方知道 )
主讲人:西安交通 大学 程向前 第 8讲 网络安全 14
公共密钥密码术
Figure 7.7 goes
here
主讲人:西安交通 大学 程向前 第 8讲 网络安全 15
公共密钥加密算法
需要加密 d ( ) 和解密 e ( )
d (e (m)) = mBB
B Bm m
为 d ( )和 e ( )
选取公开密钥和秘密密钥
m mBB
两个相关的要求,
1
2
RSA,Rivest,Shamir,Adelson 算法
主讲人:西安交通 大学 程向前 第 8讲 网络安全 16
RSA,选择密钥
1,选取两个大质数 p,q,(e.g.,每个 1024 bit)
2,计算 n = pq,z = (p-1)(q-1)
3,选择一个 e (e<n) 并且与 z没有公约数, (e,z 互质 ).
4,找到一个数 d 并且 ed-1可以为 z整除,
(换言之, ed mod z = 1 ).
5,则 公钥 数对为 (n,e).密钥 数对为 (n,d).
主讲人:西安交通 大学 程向前 第 8讲 网络安全 17
RSA,加密,解密
0,假设 (n,e) 和 (n,d) 如前述方法计算
1,则加密过程为,设加密的位流为 m,则可计算出
c = m mod ne (i.e.,也就是 m 为 n除后所得余数 )e
2,若对接收到的位流 c进行解密,则可计算出
m = c mod nd d
m = (m mod n)e mod ndMagichappens!
(i.e.,也就是 c 为 n除后所得余数 )
主讲人:西安交通 大学 程向前 第 8讲 网络安全 18
RSA 举例,
Bob 选择 p=5,q=7,Then n=35,z=24.
e=5 (e,z 互质 ).
d=29 (且 ed-1 可为 z整除 )
字母 m me c = m mod ne
l 12 1524832 17
c m = c mod nd
17 481968572106750915091411825223072000 12
cd 字母
l
加密,
解密,
主讲人:西安交通 大学 程向前 第 8讲 网络安全 19
RSA,原理, m = (m mod n)e mod nd
(m mod n)e mod n = m mod nd ed
数论结果, 如果 p,q 互质,n = pq,那么
x mod n = x mod ny y mod (p-1)(q-1)
= m mod ned mod (p-1)(q-1)
= m mod n1
= m
(使用上述数论结果 )
(由于我们 选择 ed 可为 (p-1)(q-1)所除
且余数为 1 )
主讲人:西安交通 大学 程向前 第 8讲 网络安全 20
报文鉴别
目的, Bob 要求 Alice,证明”其身份
Protocol ap1.0,Alice 说:, I am Alice”
为什么会失败
主讲人:西安交通 大学 程向前 第 8讲 网络安全 21
认证, 再试一次
Protocol ap2.0,Alice 说, I am Alice” 并
发送其 IP地址进行证明
为什么会失败
主讲人:西安交通 大学 程向前 第 8讲 网络安全 22
认证, 又试一次
Protocol ap3.0,Alice说,I am Alice” 并发送口令证明,
为什么会失败?
主讲人:西安交通 大学 程向前 第 8讲 网络安全 23
认证, 再试
Protocol ap3.1,Alice 说, I am Alice” 并发送
其加密的口令进行证明,
为什么会失败?
I am Alice
encrypt(password)
主讲人:西安交通 大学 程向前 第 8讲 网络安全 24
认证, 再试
目的, 避免回放攻击
失败,缺点?
Figure 7.11 goes here
杜撰字 (nonce),number (R) 的结果只用一次
ap4.0,为证明 Alice是否处于“激活,状态,Bob 给 Alice发送
nonce,R,Alice
必须回送 R,同时使用共享密钥对 R进行加密
主讲人:西安交通 大学 程向前 第 8讲 网络安全 25
Figure 7.12 goes here
认证, ap5.0
ap4.0 要求共享对称密钥
?问题, Bob,Alice 如何才能在共享秘钥上达成一致
?我们能否使用公开密钥机进行身份验证?
ap5.0,使用 nonce,公开密钥加密技术
主讲人:西安交通 大学 程向前 第 8讲 网络安全 26
Figure 7.14 goes here
ap5.0,安全漏洞
中间人攻击, Trudy 对 Alice假扮 Bob而对 Bob假
扮 Alice
结论,需要,资质认证的” 公钥
主讲人:西安交通 大学 程向前 第 8讲 网络安全 27
数字签名
模拟手签的加密技术,
? 发送方 (Bob) 对文件进行
数字签名,确定他是文
件的拥有者和创建者,
? 可供鉴定,不可否认证据
:接受方 (Alice) 可以确
认这是 Bob发送的文件,
对报文进行简单的数字签名,
? Bob 使用其私钥 dB 对 m
加密,创建了签过名的报文
,dB(m).
? Bob 将原始报文 m 和数字
签名 dB(m) 发给 Alice.
主讲人:西安交通 大学 程向前 第 8讲 网络安全 28
数字签名 (续 )
? 假设 Alice收到了原始
报文 m,和数字签名
dB(m)
? Alice核对 m报文的签名
过程是使用 Bob的公钥
eB 对数字签名档 dB(m)
进行解密,然后确认是
否 eB(dB(m) ) = m.
? 如果 eB(dB(m) ) = m,
那么无论是谁签署了原
始报文 m,必定使用了
Bob的私钥。
Alice 即可确认,
?Bob 签署了原始报文 m.
?不会是他人签署的 m.
?Bob签署的就是 m 而不是
m’.
不可否认,
?Alice 可以将原始报文
m,和数字签名 dB(m) 提
交法庭作为 Bob签署了报
文 m的证据,
主讲人:西安交通 大学 程向前 第 8讲 网络安全 29
报文摘要
对长报文进行公钥
加密计算成本非常昂贵
目的, 固定长度,产生容易
计算的数字签名,“指纹
”
? 应用散列函数 H() 可以
对报文 m进行处理,得到
固定长度的报文摘要,
H(m).
理想散列函数的特点,
? 多对一 (Many-to-1)
? 产生固定长度的报文摘要 (指
纹 )
? 假设有一个报文摘要 x,但是
如果想通过计算得到报文 m
的摘要并使 x = H(m)是不可
能的
? 使用计算方法想找出两个报文 m 和 m’ 并使得 H(m) =
H(m’)也是不可能的
主讲人:西安交通 大学 程向前 第 8讲 网络安全 30
数字签名 = 签过的报文摘要
Bob 发送数字签名报文, Alice 对数字签名报文的签名和
报文完整性进行核对
主讲人:西安交通 大学 程向前 第 8讲 网络安全 31
哈希函数算法
? 因特网校验和可以看成
性能很差的报文摘要,
?要找到两个相同的校
验和十分容易,
? MD5散列函数得到了广泛的使
用,
?通过 4个步骤计算 128位报
文摘要,
?任意的 128位串 x,如果要
构造一个报文 m使得其
MD5 散列结果等于 x至少
是十分困难的,
? SHA-1 也有应用,
?US 标准
?160-bit 报文摘要
主讲人:西安交通 大学 程向前 第 8讲 网络安全 32
具有公信力的中介( Trusted
Intermediaries)
问题,
?如何解决两个实体通
过网络实现对称密钥
的共享?
解决办法,
? 具有公信力的密钥分发中
心( key distribution
center (KDC) )来
作为诸多实体间的中
介
问题,
?当 Alice获取 Bob的公
钥时 (可以从网站、
e-mail,甚至软盘 ),
如何能够使她相信这
就是 Bob的公钥,而
不是 Trudy的?
解决办法,
? 具有公信力的认证机构(
certification
authority (CA))
主讲人:西安交通 大学 程向前 第 8讲 网络安全 33
( Key Distribution Center, KDC)工作原理
? Alice,Bob 需要共享对
称密钥,
? KDC,为每个注册的用
户提供不同的密钥服务,
? Alice,Bob 在 KDC注册
后,获取了自己的对称
密钥,KA-KDC KB-KDC, ? Alice 与 KDC联系,取得了会
话密钥 R1,and KB-KDC(A,R1)
? Alice 给 Bob发送
KB-KDC(A,R1),Bob 取出 R1
? Alice,Bob 现在共享 R1.
主讲人:西安交通 大学 程向前 第 8讲 网络安全 34
认证机构( Certification
Authorities)工作原理
? 认证机构 (CA)为特定的实体
管理公开密钥,
? 实体 (个人,路由器,etc.)
可以在 CA注册公开密钥,
? 实体提供,身份证明”
给 CA,
? CA 创建信任状将实体与
公开密钥进行绑定,
? 由 CA对信任状进行数字
签名,
? 当 Alice需要 Bob的公开密钥时,
? 获取 Bob信任状 (从 Bob 或其他
什么地方 ).
? 把 CA提供的公开密钥对 Bob的信
任状进行认证和解码,从而得到
Bob的公开密钥
主讲人:西安交通 大学 程向前 第 8讲 网络安全 35
Secure e-mail(保密邮件 )
? 产生一个随机的对称密钥,KS.
? 使用 KS 对报文进行加密
? 同时使用 Bob的公钥对 KS 进行加密,
? 同时将 KS(m) 和 eB(KS) 两项内容发给 Bob.
? Alice 要发送保密邮件报文,m,给 Bob.
主讲人:西安交通 大学 程向前 第 8讲 网络安全 36
Secure e-mail (保密邮件 )(续)
? 如果 Alice需要提供发送方身份认证和报文完整性,
? Alice 对报文进行数字签名,
? 并同时发送两个报文 (明文和数字签名 ).
主讲人:西安交通 大学 程向前 第 8讲 网络安全 37
Secure e-mail (保密邮件 )(续)
? 如果 Alice要提供保密、发送方认证和报文完整性,
注意, Alice即使用了她自己的私钥,也使用了 Bob的公
钥,还有一个对称密钥
主讲人:西安交通 大学 程向前 第 8讲 网络安全 38
Pretty good privacy (PGP)
? 因特网 e-mail的加密机制,
一项既成事实的标准( a
de-facto standard),
? 使用了前述的对称密钥加密
术,公开密钥加密术,哈希
函数,和数字签名技术
? 提供了保密、发送方认证和
报文完整性
? Inventor,Phil Zimmerman,
was target of 3-year
federal investigation.
---BEGIN PGP SIGNED MESSAGE---
Hash,SHA1
Bob:My husband is out of town
tonight.Passionately yours,
Alice
---BEGIN PGP SIGNATURE---
Version,PGP 5.0
Charset,noconv
yhHJRHhGJGhgg/12EpJ+lo8gE4vB3mqJ
hFEvZP9t6n7G6m5Gw2
---END PGP SIGNATURE---
具备 PGP 签署的报文,
主讲人:西安交通 大学 程向前 第 8讲 网络安全 39
安全插口层 (Secure sockets layer,SSL)
? PGP 为特定的网络应用项目
提供安全性保证,
? SSL则工作在传输层, 为任何
使用 TCP传输服务的应用程序
或协议提供安全保障,
? SSL,可以用在 WWW 浏览
器,服务器之间为电子商务
服务 (shttp/https).
? SSL 安全服务包括,
? 服务器认证
? 数据加密
? 客户端认证 (可选 )
? 服务器认证,
? SSL使得浏览器可以使用来
自 CA的公钥,
? 浏览器可以请求由 CA发布的
服务器信用状,
? 浏览器通过 CA的公钥来获取
信用状上服务器的公钥,
? 查看你的浏览器,有关 CA的
内容
主讲人:西安交通 大学 程向前 第 8讲 网络安全 40
安全插口层 (Secure sockets layer,SSL)(续 )
加密的 SSL 会话,
? 浏览器产生对称的会话密钥,
再使用服务器的公钥加密后,
将会话密钥发给服务器,
? 服务器使用它保存的私钥将会
话密钥进行解密,
? 浏览器,服务器由此将下一步
的报文交流的加密密钥取得一
致,
? 所有送入 TCP插口的数据 (无
论是客户端还是服务器 ) 全部
使用对称密钥进行加密,
? SSL:成为 IETF 的传
输层安全性 (TLS) 的基
石,
? SSL 可以用在非 Web
应用程序,e.g.,
IMAP.
? 客户端认证可以通过客
户端信用状 ( client
certificates)解决,
主讲人:西安交通 大学 程向前 第 8讲 网络安全 41
SSL在电子商务应用中的局限性
?SSL比较简单而且发展较早,应用广泛
?SSL为付帐卡交易提供了一个通用平台
?SSL不是专门为支付卡交易设计的
?SSL缺少电子商务协议中要求的许多功能
主讲人:西安交通 大学 程向前 第 8讲 网络安全 42
SSL在电子商务应用中的局限性
?再次考虑 Bob通过 SSL从 Alice 公司购物的过
程
?Bob从 Alice接收到的签名证书可以证明确实在与
Alice Co.进行交易
?一般证书不能够表明 Alice Co.是否被授权接受支
付卡交易以及公司是否是可靠 (可能产生欺骗 )
?客户端身份认证也有类似问题。即使启用 SSL客户
端身份认证,也不能够将 Bob和特定授权的支付卡
联系在一起 (可能产生信用卡盗用 )
主讲人:西安交通 大学 程向前 第 8讲 网络安全 43
安全电子事务 ( Secure electronic transactions
,SET)协议
? 为在因特网上使用信用
卡业务专门设计,
? 在交易的三方间提供安
全服务,
?客户
?商家
?商家的结算银行
三方都必须具备证书,
? SET 定义了各类证书的
法律含义,
?划清各方的责任界限
? 客户的卡号直接送到商家
的结算银行,而商家看不
到客户的卡号(明文),
?防止了商家的滥用或
泄露客户的卡号,
? 三个软件 /部件,
?浏览器钱包
?商家服务器
? 收单银行的支付网关
(Acquirer gateway)
主讲人:西安交通 大学 程向前 第 8讲 网络安全 44
SET交易过程
? 假设 Bob想通过因特网和 SET从 Alice Co购物
1,Bob向 Alice表明他需要进行信用卡购物
2,Alice向 Bob发送发货清单和惟一的交易标
识符
3,Alice向 Bob发送商业证书和商家公钥。
Alice还要发她的银行证书和银行的公钥。
两个证书都用 CA的私钥加密
4,Bob用 CA的公钥对两个证书解密。 Bob现
在有了 Alice Co.和银行的公钥
主讲人:西安交通 大学 程向前 第 8讲 网络安全 45
SET交易过程 (续 )
5,Bob产生两个信息包:订单信息 (0I) 和购买
指令 (PI),发送给 Alice Co.
? OI是给 Alice Co.的,其中包含交易标识符和使用
的卡的种类。但并不包括 Bob的卡号。
? PI是给 Alice的银行的,包含交易标识符、卡号和
Bob的购物价值。
? OI和 PI的加密是不同的; OI是用 Alice 的公钥加
密,而 PI是用 Alice银行的公钥加密 (确切地说,
OI和 PI是用客户 —商商家的会话密钥和客户 -银
行的会话密钥加密 )
主讲人:西安交通 大学 程向前 第 8讲 网络安全 46
SET交易过程 (续 )
6,Alice为支付卡支付请求生成授权请求,其中
包含交易标识符
7,Alice将用银行的公钥加密的报文发送给银行 (
实际上使用会话密钥 )。这个报文包括授权请
求、来自 Bob的 PI包和 Alice Co.的证书
8,Alice的银行接收到报文并且拆解。银行检查
其完整性。它也确定在授权请求中的交易标
识符和 Bob的 PI包中的相同
9,Alice的银行通过传统的银行卡通道向 Bob的
支付卡银行发送支付授权请求
主讲人:西安交通 大学 程向前 第 8讲 网络安全 47
SET交易过程 (续 )
10.一旦 Bob的银行授权了这笔支付,Alice的银
行向 Alice发送响应,这个响应包含交易标识
符。
11.如果这笔交易通过了,Alice向 Bob发送她的
响应报文。这个报文是一个收据,通知 Bob
支付被接受了,商品将要交付。
主讲人:西安交通 大学 程向前 第 8讲 网络安全 48
防火墙
两种类型的防火墙,
?分组过滤器
?应用网关
为防止“拒绝服务”类攻击,
? SYN flooding,攻击者启
动许多虚假的 TCP连接,
占据了主机上的 TCP缓存
资源,从而阻止了主机有
效的服务,
为防止非法修改内部数据,
? e.g.,攻击者使用其他网
页来替换网站原有的主页
为防止入侵者获取主机上的机密
数据,
将某个组织的内部网络与外部因
特网隔离,允许某些分组通过,
而阻止另外一部分,
firewall
主讲人:西安交通 大学 程向前 第 8讲 网络安全 49
分组过滤
? 内部网络通过路由器连
接到因特网,
? 路由器厂商提供了分组
过滤的选项,其依据是
:
? 源 IP 地址
? 宿 IP 地址
? TCP/UDP 源和宿端口号
? ICMP 报文类型
? TCP SYN 和 ACK 位
? 例 1,block incoming and
outgoing datagrams with
IP protocol field = 17 and
with either source or dest
port = 23.
? 所有进出的 UDP数据流和
telnet 连接都被禁止掉了,
? 例 2,Block inbound TCP
segments with ACK=0.
? 防止外部的客户端直接与内
部的客户端进行 TCP连接,
允许内部的客户端与外部的
进行连接,
主讲人:西安交通 大学 程向前 第 8讲 网络安全 50
应用网关
? 根据应用数据和
IP/TCP/UDP 的字段过滤
分组,
? 例如, 允许选择内部用户
使用 telnet访问外部,
host-to-gateway
telnet session
gateway-to-remote
host telnet session
application
gateway
router and filter
1,要求所有的 telnet 用户通过网关进行 telnet 连接,
2,对通过认证的用户,网关为其建立通往目的主机的 telnet 连接,
网关在两个连接之间中转数据
3,路由器将阻止所有未经中转的 telnet连接,
主讲人:西安交通 大学 程向前 第 8讲 网络安全 51
防火墙和网关的局限性
? IP 欺骗, 路由器不能辨
别数据是否真的来自其
自称的信源
? 如果多种应用需要特别
处理,则每一种都需要
各自的应用网关,
? 客户端软件必须能够同
应用网关交互,
? e.g.,在浏览器中设置代
理服务器的地址
? 过滤器经常采用对 UDP
的 all or nothing 策略,
? 折衷方案, 与外部网络
通信应用的程度,设置安
全等级
? 许多高度机密的站点仍
然遭受到攻击,
主讲人:西安交通 大学 程向前 第 8讲 网络安全 52
网络安全 (小结 )
基本技术 …...
?加密术 (对称和公开的 )
?认证
?报文完整性
…,使用在许多安全性的场合
?保密邮件
?安全传输层 (SSL)
?安全电子事务协议
?防火墙
第 8讲 网络安全
基本概念,
? 什么是安全性?
? 密码术
? 报文鉴别
? 信息安全性
? 密钥发放和确认
实用安全技术,
? 应用层, 安全邮件
? 传输层, 电子商务,SSL,SET
? 防火墙技术
参考教科书:第 10章
主讲人:西安交通 大学 程向前 第 8讲 网络安全 2
敌友之间, Alice,Bob,Trudy
? 三位网络安全领域里的“知名人士”
? Bob,Alice (恋人 !) 需要进行“私密”的通信
? Trudy,则是,侵入者,有可能对他人的通信进行截获
、删改活动
Figure 7.1 goes here
主讲人:西安交通 大学 程向前 第 8讲 网络安全 3
什么是网络安全?
安全性, 只有发送方,意欲中的接收方能够,理解
” 报文内容
?发送方加密报文
?接收方解密报文
报文鉴别, 收发双方需要证实对方的身份
报文完整性, 收发双方需要保证报文不被篡改 (
在传输过程中,或传输完毕以后 ),不被探测
主讲人:西安交通 大学 程向前 第 8讲 网络安全 4
网络上的主动攻击和被动攻击
?截获 --被动攻击 (主要的对应策略为加密传输 )
?中断 --主动攻击 (主要的对应策略为信道冗余
,防火墙的等 )
?篡改 --主动攻击 (主要的对应策略为报文鉴别 )
?伪造 --主动攻击 (主要的对应策略为报文鉴别 )
主讲人:西安交通 大学 程向前 第 8讲 网络安全 5
因特网的安全隐患举例
分组泄漏( Packet sniffing),
?广播介质
?间谍 NIC 可以读出所有传输的分组
?即可以读出所有未加密的数据 (e.g,passwords)
?e.g.,C 在“嗅,B的分组
A
B
C
src:B dest:A payload
主讲人:西安交通 大学 程向前 第 8讲 网络安全 6
因特网安全隐患
IP 欺骗( Spoofing),
?可以应用程序中产生“原始”的 IP分组,将任意的
值植入 IP信源字段
?接受方往往分辨不出信源地址的真假
?e.g.,C 假装成 B
A
B
C
src:B dest:A payload
主讲人:西安交通 大学 程向前 第 8讲 网络安全 7
因特网安全隐患
拒绝服务 (Denial of service,DOS),
? 发送“洪水”分组将接受方“淹死”
? 分布式 DOS (DDOS),多个协调的信源向接受端发起攻击
? e.g.,C 和远程主机同步攻击 A
A
B
C
SYN
SYNSYNSYN
SYN
SYN
SYN
主讲人:西安交通 大学 程向前 第 8讲 网络安全 8
密码术的术语
对称密钥加密, 收发双方密钥完全相同
公共密钥加密, 加密密钥是 公开的,解密密钥是 保密的
注:密码术是被动攻击主要防护策略
Figure 7.3 goes here
plaintext plaintext
ciphertext
KA KB
主讲人:西安交通 大学 程向前 第 8讲 网络安全 9
常规密钥密码体制 --对称密钥加密术
替代密码, 使用一种符号来替代另一种
? 单字符密码, 用一个字母来替换另一个
明文, abcdefghijklmnopqrstuvwxyz
密文, mnbvcxzasdfghjklpoiuytrewq
Plaintext,bob,i love you,alice
ciphertext,nkn,s gktc wky,mgsbc
E.g.:
Q,这样的简单密码的解码难度如何?:
?brute force (how hard?)
?other?
主讲人:西安交通 大学 程向前 第 8讲 网络安全 10
解码难度分析
?惟秘文攻击:入侵者只有密文,不知道内容的
背景。统计分析对分析加密方案有用。
?已知明文攻击:入侵者已知某些明文和密文
?选择明文攻击:入侵者选择明文信息并且得到
相应的秘文
主讲人:西安交通 大学 程向前 第 8讲 网络安全 11
常规密钥密码体制 --对称密钥密码术, DES
DES,Data Encryption Standard
?美国加密标准 [NIST 1993]
?56-bit 对称密钥,64 bit 明文输入
?DES安全性如何?
?DES 挑战赛, 对使用 56-bit密钥的短语 (“Strong
cryptography makes the world a safer place”) 进
行的解码 (brute force)花费了 4个月
?尚未找到,后门, 解码方法
?让 DES更安全
?对每个数据块顺序使用三层 DES(3-DES)
?使用块状密码链 (use cipher-block chaining)
主讲人:西安交通 大学 程向前 第 8讲 网络安全 12
对称密钥密码术,
DES
初始置换
16轮相同的运算,每
次使用不同的 48
bits 密钥
最终置换
DES 运算
主讲人:西安交通 大学 程向前 第 8讲 网络安全 13
公开密钥密码术
对称 密码密码术
? 要求收发双方约定共
享的密钥
? Q,如何进行密钥的
约定 (特别是在从未
“谋面”的情况下 )?
公开 密钥密码术
? 完全不同于对称密钥的
加密方法 [Diffie-
Hellman76,RSA78]
? 收发双方 不 共享密钥
? 加密的密钥匙 公开的 (
公诸于 世 )
? 解码密钥是保密的 (只
有接收方知道 )
主讲人:西安交通 大学 程向前 第 8讲 网络安全 14
公共密钥密码术
Figure 7.7 goes
here
主讲人:西安交通 大学 程向前 第 8讲 网络安全 15
公共密钥加密算法
需要加密 d ( ) 和解密 e ( )
d (e (m)) = mBB
B Bm m
为 d ( )和 e ( )
选取公开密钥和秘密密钥
m mBB
两个相关的要求,
1
2
RSA,Rivest,Shamir,Adelson 算法
主讲人:西安交通 大学 程向前 第 8讲 网络安全 16
RSA,选择密钥
1,选取两个大质数 p,q,(e.g.,每个 1024 bit)
2,计算 n = pq,z = (p-1)(q-1)
3,选择一个 e (e<n) 并且与 z没有公约数, (e,z 互质 ).
4,找到一个数 d 并且 ed-1可以为 z整除,
(换言之, ed mod z = 1 ).
5,则 公钥 数对为 (n,e).密钥 数对为 (n,d).
主讲人:西安交通 大学 程向前 第 8讲 网络安全 17
RSA,加密,解密
0,假设 (n,e) 和 (n,d) 如前述方法计算
1,则加密过程为,设加密的位流为 m,则可计算出
c = m mod ne (i.e.,也就是 m 为 n除后所得余数 )e
2,若对接收到的位流 c进行解密,则可计算出
m = c mod nd d
m = (m mod n)e mod ndMagichappens!
(i.e.,也就是 c 为 n除后所得余数 )
主讲人:西安交通 大学 程向前 第 8讲 网络安全 18
RSA 举例,
Bob 选择 p=5,q=7,Then n=35,z=24.
e=5 (e,z 互质 ).
d=29 (且 ed-1 可为 z整除 )
字母 m me c = m mod ne
l 12 1524832 17
c m = c mod nd
17 481968572106750915091411825223072000 12
cd 字母
l
加密,
解密,
主讲人:西安交通 大学 程向前 第 8讲 网络安全 19
RSA,原理, m = (m mod n)e mod nd
(m mod n)e mod n = m mod nd ed
数论结果, 如果 p,q 互质,n = pq,那么
x mod n = x mod ny y mod (p-1)(q-1)
= m mod ned mod (p-1)(q-1)
= m mod n1
= m
(使用上述数论结果 )
(由于我们 选择 ed 可为 (p-1)(q-1)所除
且余数为 1 )
主讲人:西安交通 大学 程向前 第 8讲 网络安全 20
报文鉴别
目的, Bob 要求 Alice,证明”其身份
Protocol ap1.0,Alice 说:, I am Alice”
为什么会失败
主讲人:西安交通 大学 程向前 第 8讲 网络安全 21
认证, 再试一次
Protocol ap2.0,Alice 说, I am Alice” 并
发送其 IP地址进行证明
为什么会失败
主讲人:西安交通 大学 程向前 第 8讲 网络安全 22
认证, 又试一次
Protocol ap3.0,Alice说,I am Alice” 并发送口令证明,
为什么会失败?
主讲人:西安交通 大学 程向前 第 8讲 网络安全 23
认证, 再试
Protocol ap3.1,Alice 说, I am Alice” 并发送
其加密的口令进行证明,
为什么会失败?
I am Alice
encrypt(password)
主讲人:西安交通 大学 程向前 第 8讲 网络安全 24
认证, 再试
目的, 避免回放攻击
失败,缺点?
Figure 7.11 goes here
杜撰字 (nonce),number (R) 的结果只用一次
ap4.0,为证明 Alice是否处于“激活,状态,Bob 给 Alice发送
nonce,R,Alice
必须回送 R,同时使用共享密钥对 R进行加密
主讲人:西安交通 大学 程向前 第 8讲 网络安全 25
Figure 7.12 goes here
认证, ap5.0
ap4.0 要求共享对称密钥
?问题, Bob,Alice 如何才能在共享秘钥上达成一致
?我们能否使用公开密钥机进行身份验证?
ap5.0,使用 nonce,公开密钥加密技术
主讲人:西安交通 大学 程向前 第 8讲 网络安全 26
Figure 7.14 goes here
ap5.0,安全漏洞
中间人攻击, Trudy 对 Alice假扮 Bob而对 Bob假
扮 Alice
结论,需要,资质认证的” 公钥
主讲人:西安交通 大学 程向前 第 8讲 网络安全 27
数字签名
模拟手签的加密技术,
? 发送方 (Bob) 对文件进行
数字签名,确定他是文
件的拥有者和创建者,
? 可供鉴定,不可否认证据
:接受方 (Alice) 可以确
认这是 Bob发送的文件,
对报文进行简单的数字签名,
? Bob 使用其私钥 dB 对 m
加密,创建了签过名的报文
,dB(m).
? Bob 将原始报文 m 和数字
签名 dB(m) 发给 Alice.
主讲人:西安交通 大学 程向前 第 8讲 网络安全 28
数字签名 (续 )
? 假设 Alice收到了原始
报文 m,和数字签名
dB(m)
? Alice核对 m报文的签名
过程是使用 Bob的公钥
eB 对数字签名档 dB(m)
进行解密,然后确认是
否 eB(dB(m) ) = m.
? 如果 eB(dB(m) ) = m,
那么无论是谁签署了原
始报文 m,必定使用了
Bob的私钥。
Alice 即可确认,
?Bob 签署了原始报文 m.
?不会是他人签署的 m.
?Bob签署的就是 m 而不是
m’.
不可否认,
?Alice 可以将原始报文
m,和数字签名 dB(m) 提
交法庭作为 Bob签署了报
文 m的证据,
主讲人:西安交通 大学 程向前 第 8讲 网络安全 29
报文摘要
对长报文进行公钥
加密计算成本非常昂贵
目的, 固定长度,产生容易
计算的数字签名,“指纹
”
? 应用散列函数 H() 可以
对报文 m进行处理,得到
固定长度的报文摘要,
H(m).
理想散列函数的特点,
? 多对一 (Many-to-1)
? 产生固定长度的报文摘要 (指
纹 )
? 假设有一个报文摘要 x,但是
如果想通过计算得到报文 m
的摘要并使 x = H(m)是不可
能的
? 使用计算方法想找出两个报文 m 和 m’ 并使得 H(m) =
H(m’)也是不可能的
主讲人:西安交通 大学 程向前 第 8讲 网络安全 30
数字签名 = 签过的报文摘要
Bob 发送数字签名报文, Alice 对数字签名报文的签名和
报文完整性进行核对
主讲人:西安交通 大学 程向前 第 8讲 网络安全 31
哈希函数算法
? 因特网校验和可以看成
性能很差的报文摘要,
?要找到两个相同的校
验和十分容易,
? MD5散列函数得到了广泛的使
用,
?通过 4个步骤计算 128位报
文摘要,
?任意的 128位串 x,如果要
构造一个报文 m使得其
MD5 散列结果等于 x至少
是十分困难的,
? SHA-1 也有应用,
?US 标准
?160-bit 报文摘要
主讲人:西安交通 大学 程向前 第 8讲 网络安全 32
具有公信力的中介( Trusted
Intermediaries)
问题,
?如何解决两个实体通
过网络实现对称密钥
的共享?
解决办法,
? 具有公信力的密钥分发中
心( key distribution
center (KDC) )来
作为诸多实体间的中
介
问题,
?当 Alice获取 Bob的公
钥时 (可以从网站、
e-mail,甚至软盘 ),
如何能够使她相信这
就是 Bob的公钥,而
不是 Trudy的?
解决办法,
? 具有公信力的认证机构(
certification
authority (CA))
主讲人:西安交通 大学 程向前 第 8讲 网络安全 33
( Key Distribution Center, KDC)工作原理
? Alice,Bob 需要共享对
称密钥,
? KDC,为每个注册的用
户提供不同的密钥服务,
? Alice,Bob 在 KDC注册
后,获取了自己的对称
密钥,KA-KDC KB-KDC, ? Alice 与 KDC联系,取得了会
话密钥 R1,and KB-KDC(A,R1)
? Alice 给 Bob发送
KB-KDC(A,R1),Bob 取出 R1
? Alice,Bob 现在共享 R1.
主讲人:西安交通 大学 程向前 第 8讲 网络安全 34
认证机构( Certification
Authorities)工作原理
? 认证机构 (CA)为特定的实体
管理公开密钥,
? 实体 (个人,路由器,etc.)
可以在 CA注册公开密钥,
? 实体提供,身份证明”
给 CA,
? CA 创建信任状将实体与
公开密钥进行绑定,
? 由 CA对信任状进行数字
签名,
? 当 Alice需要 Bob的公开密钥时,
? 获取 Bob信任状 (从 Bob 或其他
什么地方 ).
? 把 CA提供的公开密钥对 Bob的信
任状进行认证和解码,从而得到
Bob的公开密钥
主讲人:西安交通 大学 程向前 第 8讲 网络安全 35
Secure e-mail(保密邮件 )
? 产生一个随机的对称密钥,KS.
? 使用 KS 对报文进行加密
? 同时使用 Bob的公钥对 KS 进行加密,
? 同时将 KS(m) 和 eB(KS) 两项内容发给 Bob.
? Alice 要发送保密邮件报文,m,给 Bob.
主讲人:西安交通 大学 程向前 第 8讲 网络安全 36
Secure e-mail (保密邮件 )(续)
? 如果 Alice需要提供发送方身份认证和报文完整性,
? Alice 对报文进行数字签名,
? 并同时发送两个报文 (明文和数字签名 ).
主讲人:西安交通 大学 程向前 第 8讲 网络安全 37
Secure e-mail (保密邮件 )(续)
? 如果 Alice要提供保密、发送方认证和报文完整性,
注意, Alice即使用了她自己的私钥,也使用了 Bob的公
钥,还有一个对称密钥
主讲人:西安交通 大学 程向前 第 8讲 网络安全 38
Pretty good privacy (PGP)
? 因特网 e-mail的加密机制,
一项既成事实的标准( a
de-facto standard),
? 使用了前述的对称密钥加密
术,公开密钥加密术,哈希
函数,和数字签名技术
? 提供了保密、发送方认证和
报文完整性
? Inventor,Phil Zimmerman,
was target of 3-year
federal investigation.
---BEGIN PGP SIGNED MESSAGE---
Hash,SHA1
Bob:My husband is out of town
tonight.Passionately yours,
Alice
---BEGIN PGP SIGNATURE---
Version,PGP 5.0
Charset,noconv
yhHJRHhGJGhgg/12EpJ+lo8gE4vB3mqJ
hFEvZP9t6n7G6m5Gw2
---END PGP SIGNATURE---
具备 PGP 签署的报文,
主讲人:西安交通 大学 程向前 第 8讲 网络安全 39
安全插口层 (Secure sockets layer,SSL)
? PGP 为特定的网络应用项目
提供安全性保证,
? SSL则工作在传输层, 为任何
使用 TCP传输服务的应用程序
或协议提供安全保障,
? SSL,可以用在 WWW 浏览
器,服务器之间为电子商务
服务 (shttp/https).
? SSL 安全服务包括,
? 服务器认证
? 数据加密
? 客户端认证 (可选 )
? 服务器认证,
? SSL使得浏览器可以使用来
自 CA的公钥,
? 浏览器可以请求由 CA发布的
服务器信用状,
? 浏览器通过 CA的公钥来获取
信用状上服务器的公钥,
? 查看你的浏览器,有关 CA的
内容
主讲人:西安交通 大学 程向前 第 8讲 网络安全 40
安全插口层 (Secure sockets layer,SSL)(续 )
加密的 SSL 会话,
? 浏览器产生对称的会话密钥,
再使用服务器的公钥加密后,
将会话密钥发给服务器,
? 服务器使用它保存的私钥将会
话密钥进行解密,
? 浏览器,服务器由此将下一步
的报文交流的加密密钥取得一
致,
? 所有送入 TCP插口的数据 (无
论是客户端还是服务器 ) 全部
使用对称密钥进行加密,
? SSL:成为 IETF 的传
输层安全性 (TLS) 的基
石,
? SSL 可以用在非 Web
应用程序,e.g.,
IMAP.
? 客户端认证可以通过客
户端信用状 ( client
certificates)解决,
主讲人:西安交通 大学 程向前 第 8讲 网络安全 41
SSL在电子商务应用中的局限性
?SSL比较简单而且发展较早,应用广泛
?SSL为付帐卡交易提供了一个通用平台
?SSL不是专门为支付卡交易设计的
?SSL缺少电子商务协议中要求的许多功能
主讲人:西安交通 大学 程向前 第 8讲 网络安全 42
SSL在电子商务应用中的局限性
?再次考虑 Bob通过 SSL从 Alice 公司购物的过
程
?Bob从 Alice接收到的签名证书可以证明确实在与
Alice Co.进行交易
?一般证书不能够表明 Alice Co.是否被授权接受支
付卡交易以及公司是否是可靠 (可能产生欺骗 )
?客户端身份认证也有类似问题。即使启用 SSL客户
端身份认证,也不能够将 Bob和特定授权的支付卡
联系在一起 (可能产生信用卡盗用 )
主讲人:西安交通 大学 程向前 第 8讲 网络安全 43
安全电子事务 ( Secure electronic transactions
,SET)协议
? 为在因特网上使用信用
卡业务专门设计,
? 在交易的三方间提供安
全服务,
?客户
?商家
?商家的结算银行
三方都必须具备证书,
? SET 定义了各类证书的
法律含义,
?划清各方的责任界限
? 客户的卡号直接送到商家
的结算银行,而商家看不
到客户的卡号(明文),
?防止了商家的滥用或
泄露客户的卡号,
? 三个软件 /部件,
?浏览器钱包
?商家服务器
? 收单银行的支付网关
(Acquirer gateway)
主讲人:西安交通 大学 程向前 第 8讲 网络安全 44
SET交易过程
? 假设 Bob想通过因特网和 SET从 Alice Co购物
1,Bob向 Alice表明他需要进行信用卡购物
2,Alice向 Bob发送发货清单和惟一的交易标
识符
3,Alice向 Bob发送商业证书和商家公钥。
Alice还要发她的银行证书和银行的公钥。
两个证书都用 CA的私钥加密
4,Bob用 CA的公钥对两个证书解密。 Bob现
在有了 Alice Co.和银行的公钥
主讲人:西安交通 大学 程向前 第 8讲 网络安全 45
SET交易过程 (续 )
5,Bob产生两个信息包:订单信息 (0I) 和购买
指令 (PI),发送给 Alice Co.
? OI是给 Alice Co.的,其中包含交易标识符和使用
的卡的种类。但并不包括 Bob的卡号。
? PI是给 Alice的银行的,包含交易标识符、卡号和
Bob的购物价值。
? OI和 PI的加密是不同的; OI是用 Alice 的公钥加
密,而 PI是用 Alice银行的公钥加密 (确切地说,
OI和 PI是用客户 —商商家的会话密钥和客户 -银
行的会话密钥加密 )
主讲人:西安交通 大学 程向前 第 8讲 网络安全 46
SET交易过程 (续 )
6,Alice为支付卡支付请求生成授权请求,其中
包含交易标识符
7,Alice将用银行的公钥加密的报文发送给银行 (
实际上使用会话密钥 )。这个报文包括授权请
求、来自 Bob的 PI包和 Alice Co.的证书
8,Alice的银行接收到报文并且拆解。银行检查
其完整性。它也确定在授权请求中的交易标
识符和 Bob的 PI包中的相同
9,Alice的银行通过传统的银行卡通道向 Bob的
支付卡银行发送支付授权请求
主讲人:西安交通 大学 程向前 第 8讲 网络安全 47
SET交易过程 (续 )
10.一旦 Bob的银行授权了这笔支付,Alice的银
行向 Alice发送响应,这个响应包含交易标识
符。
11.如果这笔交易通过了,Alice向 Bob发送她的
响应报文。这个报文是一个收据,通知 Bob
支付被接受了,商品将要交付。
主讲人:西安交通 大学 程向前 第 8讲 网络安全 48
防火墙
两种类型的防火墙,
?分组过滤器
?应用网关
为防止“拒绝服务”类攻击,
? SYN flooding,攻击者启
动许多虚假的 TCP连接,
占据了主机上的 TCP缓存
资源,从而阻止了主机有
效的服务,
为防止非法修改内部数据,
? e.g.,攻击者使用其他网
页来替换网站原有的主页
为防止入侵者获取主机上的机密
数据,
将某个组织的内部网络与外部因
特网隔离,允许某些分组通过,
而阻止另外一部分,
firewall
主讲人:西安交通 大学 程向前 第 8讲 网络安全 49
分组过滤
? 内部网络通过路由器连
接到因特网,
? 路由器厂商提供了分组
过滤的选项,其依据是
:
? 源 IP 地址
? 宿 IP 地址
? TCP/UDP 源和宿端口号
? ICMP 报文类型
? TCP SYN 和 ACK 位
? 例 1,block incoming and
outgoing datagrams with
IP protocol field = 17 and
with either source or dest
port = 23.
? 所有进出的 UDP数据流和
telnet 连接都被禁止掉了,
? 例 2,Block inbound TCP
segments with ACK=0.
? 防止外部的客户端直接与内
部的客户端进行 TCP连接,
允许内部的客户端与外部的
进行连接,
主讲人:西安交通 大学 程向前 第 8讲 网络安全 50
应用网关
? 根据应用数据和
IP/TCP/UDP 的字段过滤
分组,
? 例如, 允许选择内部用户
使用 telnet访问外部,
host-to-gateway
telnet session
gateway-to-remote
host telnet session
application
gateway
router and filter
1,要求所有的 telnet 用户通过网关进行 telnet 连接,
2,对通过认证的用户,网关为其建立通往目的主机的 telnet 连接,
网关在两个连接之间中转数据
3,路由器将阻止所有未经中转的 telnet连接,
主讲人:西安交通 大学 程向前 第 8讲 网络安全 51
防火墙和网关的局限性
? IP 欺骗, 路由器不能辨
别数据是否真的来自其
自称的信源
? 如果多种应用需要特别
处理,则每一种都需要
各自的应用网关,
? 客户端软件必须能够同
应用网关交互,
? e.g.,在浏览器中设置代
理服务器的地址
? 过滤器经常采用对 UDP
的 all or nothing 策略,
? 折衷方案, 与外部网络
通信应用的程度,设置安
全等级
? 许多高度机密的站点仍
然遭受到攻击,
主讲人:西安交通 大学 程向前 第 8讲 网络安全 52
网络安全 (小结 )
基本技术 …...
?加密术 (对称和公开的 )
?认证
?报文完整性
…,使用在许多安全性的场合
?保密邮件
?安全传输层 (SSL)
?安全电子事务协议
?防火墙