《基本协议》PPT课件.ppt
《《基本协议》PPT课件.ppt》由会员分享,可在线阅读,更多相关《《基本协议》PPT课件.ppt(35页珍藏版)》请在三一办公上搜索。
1、基本协议,密钥交换,通常的密码技术是用单独的密钥对每一次单独的会话加密,这个密钥称为会话密钥,因为它只在一次特殊的通信中使用。这个会话密钥怎么到达会话者的手中可能是很复杂的事情。,对称密码的密钥交换,这个协议假设Alice和Bob(网络上的用户)每人和密钥分配中心(KDC)共享一个秘密密钥,我们的协议中的Trent就是KDC。在协议开始执行前,这些密钥必须在适当的位置(协议忽略了怎么分配这些秘密密钥这个非常实际的问题,只是假设它们在适当的位置,并且Mallory不知道它们是什么)。(1)Alice呼叫Trent,并请求一个与Bob通信的会话密钥。(2)Trent产生一随机会话密钥,并对它的两个
2、副本加密:一个用Alice的密钥,另一个用Bob的密钥加密。Trent发送这两个副本给Alice。(3)Alice对她的会话密钥的副本解密。(4)Alice将Bob的会话密钥副本送给Bob。(5)Bob对他的会话密钥的副本解密。(6)Alice和Bob用这个会话密钥安全地通信。这个协议依赖于Trent的绝对安全性。Trent更可能是可信的计算机程序,而不是可信的个人。如果Mallory破坏了Trent,整个网络都会遭受损害。他有Trent与每个用户共享的所有秘密密钥;他可以读所有过去和将来的通信业务。他所做的事情就是对通信线路进行搭线窃听,并监视加密的报文业务。这个系统的另外一个问题是Tren
3、t可能会成为瓶颈。他必须参与每一次密钥交换,如果Trent失败了,这个系统就会被破坏。,公开密钥密码的密钥交换,Alice和Bob使用公开密钥密码协商会话密钥,并用协商的会话密钥加密数据。在一些实际的实现中,Alice和Bob签了名的公开密钥可在数据库中获得。这使得密钥交换协议更容易,即使Bob从来没有听说过Alice,Alice也能够把信息安全地发送给Bob。(1)Alice从KDC得到Bob的公开密钥。(2)Alice产生随机会话密钥,用Bob的公开密钥加密它,然后将它传给Bob。(3)Bob用他的私钥解密Alice的信息。(4)他们两人用同一会话密钥对他们的通信进行加密。,中间人攻击,E
4、ve除了试图破译公开密钥算法或者尝试对密文作唯密文攻击之外,没有更好的办法。Mallory比Eve更有能力,他不仅能监听Alice和Bob之间的信息、还能修改信息、删除信息、并能产生全新的信息。当Mallory同Alice谈话时,他能模仿Bob,他也能模仿Alice同Bob谈话。(1)Alice将她的公开密钥传送给Bob。Mallory截取了这个密钥并将自己的公开密钥传送给Bob。(2)Bob将他的公开密钥传送给Alice。Mallory截取这个密钥,并将自己的公开密钥传送给Alice。(3)当Alice将用“Bob”的公开密钥加了密的信息传送给Bob时,Mallory截取它。由于信息实际上是
5、用Mallory的公开密钥加密的,他就用自己的私钥解密。再用Bob的公开密钥对信息重新加密,并将它传送给Bob。(4)当Bob将用“Alice”的公开密钥加密的信息传送给Alice时,Mallory截取它。由于信息实际上是用他自己的公开密钥加密的,他用他的私钥解密信息,再用Alice的公开密钥重新加密,并将它传送给Alice。,即使Alice和Bob的公开密钥存储在数据库中,这种攻击也是可行的。Mallory能够截取Alice的数据库查询,并用自己的公开密钥代替Bob的公开密钥,对Bob他也能做同样的事情,用自己的公开密钥代替Alice的公开密钥。他也能秘密地侵入数据库,用他自己的密钥代替Al
6、ice和Bob的密钥。接下来他就简单地等着Alice和Bob互相谈话,然后截取和修改信息,他成功了!“中间人攻击”是可行的,因为Alice和Bob无法验证他们正在作的互相交谈。假设Mallory没有导致任何值得注意的网络延迟,他们两人就没有办法知道有人正在他们中间阅读他们自认为是秘密的消息。,联锁协议,联锁协议是阻止“中间人攻击”的好办法。下面是这个协议怎么工作的:(1)Alice将她的公开密钥传送给Bob。(2)Bob将他的公开密钥传送给Alice。(3)Alice用Bob的公开密钥加密她的报文,并将加密报文的一半传送给Bob。(4)Bob用Alice的公开密钥加密他的报文,并将加密报文的一
7、半传送给Alice。(5)Alice将加了密的另一半报文传送给Bob。(6)Bob将Alice的两半报文合在一起,并用他的私钥解密;Bob将他加了密的另一半报文传送给Alice。(7)Alice将Bob两半报文合在一起,并用她的私钥解密。这里重要的一点是:只有报文的一半,没有另一半,报文是毫无用处的。Bob只有到步骤(6)步才能读Alice的报文,Alice只有到步骤(7)步才能读Bob的报文。,有很多办法实现它:(1)如果采用分组加密算法,每一分组的一半(例如,每隔一比特)能在每半个报文中发送。(2)报文的解密依赖于初始矢量,初始矢量可以在报文的另一半中发送。(3)首先发送的一半报文可能是加
8、密报文的单向hash函数,并且加密报文本身可能是另一半。为了了解这样做是怎样对Mallory制造麻烦的,让我们再看看他破坏协议的企图。他仍然能够在第(1)步和第(2)步中用自己的公开密钥代替Alice和Bob公开密钥。但现在,当他在第(3)步截取Alice的一半报文时,他不能用他的私钥对报文解密,然后用Bob的公开密钥再加密,他不得不虚构一完全不同的新报文,并将它的一半发送给Bob。当他在第(4)步截取Bob给Alice的一半报文时,他有同样的问题,他不能用他的私钥解密,并用Alice的公开密钥再加密,他又不得不虚构一完全不同的新报文,并将它的一半发送给Alice。当他在第(5)步和第(6)步
9、截取到实际报文的另一半时,他再去把他虚构新报文改回来,就太迟了。Alice和Bob之间的会话必会是完全不同的。Mallory也可以不用这种办法。如果他非常了解Alice和Bob,他就可以模仿他们之中的一个同另一人通话,他们绝不会想到正受到欺骗。但这样做肯定比坐在他们之间截取和读他们的报文更难。,使用数字签名的密钥交换,在会话密钥交换协议期间采用数字签名也能防止“中间人攻击”。Trent对Alice和Bob的公开密钥签名。签名的密钥包括一个已签名的所有权证书。当Alice和Bob收到密钥时,他们每人都能验证Trent的签名。那么,他们就知道公开密钥是哪个人的。密钥的交换就能进行了。Mallory
10、会遇到严重的阻力。他不能假冒Bob或者Alice,因为他不知道他们的私钥。他也不能用他的公开密钥代替他们两人的公开密钥,因为当他有由Trent签名的证书时,这个证书是为Mallory签发的。他所能做的事情就是窃听往来的加密报文,或者破坏通信线路,阻止Alice和Bob谈话。,这个协议也动用Trent,但KDC遭受损害的风险比第一种协议小。如果Mallory危及到Trent的安全(侵入KDC),他所得到的只是Trent的私钥。这个密钥使他仅能对新的密钥签名;它不会让他对任何会话密钥解密,或者读取任何报文。为了能够读往来的报文,Mallory不得不冒充网络上的某个用户,并且欺骗合法用户用他的假的公
11、开密钥加密报文。,Mallory能够发起这种攻击:持有Trent的私钥,他能够产生假的签名密钥去愚弄Alice和Bob。然后Mallory就能够在数据库中交换他们真正的签名密钥,或者截取用户向数据库的请求,并用他的假密钥代替。这使他能够发起“中间人攻击”,并读取他人的通信。这种攻击是可行的,但记住Mallory必须能够截取和修改信息。在一些网络中,截取和修改报文比被动地坐在网络旁读取往来的报文更难。在广播信道上,如无线网中,几乎不可能用其他报文来替代某个报文(整个网络可能被堵塞)。在计算机网络中做这种事要容易些,并且随时日的推移变得越来越容易,例如IP欺骗、路由攻击等等;主动攻击并不一定表示有
12、人用数据显示仪抠出数据,且也不限于三字符的代理。,密钥和报文传输,Alice和Bob在交换报文前不需要完成密钥交换协议。在下面的协议中,Alice在没有任何以前的密钥交换协议的情况下,将报文M传送给Bob:(1)Alice产生一随机会话密钥K,并用K加密M。EK(M)(2)Alice从数据库中得到Bob的公开密钥。(3)Alice用Bob的公开密钥加密K。EB(K)(4)Alice将加密的报文和加密的会话密钥传送给Bob。EK(M),EB(K)为了增加安全性,防止“中间人攻击”,Alice可对传输签名。(5)Bob用他的私钥将Alice的会话密钥K解密。(6)Bob用会话密钥将Alice的报文
13、解密。这个混合系统表示,公开密钥密码怎样被经常用于通信系统的。它可以和数字签名、时间标记以及任何其它安全协议组合在一起使用。,密钥和报文广播,Alice可能把加了密的报文传送给几个人。在这个例子中,Alice就把加密报文传送给Bob、Carol和Dave:(1)Alice产生一随机会话密钥K,并用K加密报文M。EK(M)(2)Alice从数据库中得到Bob、Carol和Dave的公开密钥。(3)Alice用Bob的公开密钥加密K,用Carol的公开密钥加密K,用Dave的公开密钥加密K。EB(K),EC(K),ED(K)(4)Alice广播加密的报文和所有加密的密钥,将它传送给要接收它的人。E
14、B(K),EC(K),ED(K),EK(M)(5)只有Bob、Carol和Dave能用他们的私钥将K解密。(6)只有Bob、Carol和Dave能用K将Alice的报文解密。这个协议可以在存储转发网络上实现。中央服务器能够将Alice的报文,连同特别加密的密钥一起转发给Bob、Carol和Dave。服务器不一定是安全的或者可信的,因为它不可能对任何报文解密。,鉴别,当Alice登录进入计算机(或自动柜员机、电话银行系统、或其它的终端类型)时,计算机怎么知道她是谁呢?计算机怎么知道她不是其他人伪造Alice的身份呢?传统的办法是用通行字来解决这个问题的。Alice先输入她的通行字,然后计算机确认
15、它是正确的。Alice和计算机两者都知道这个秘密通行字,当Alice每次登录时,计算机都要求Alice输入通行字。,利用单向函数的鉴别,Roger Needham和Mike Guy意识到计算机没有必要知道通行字。计算机只需有能力区别有效通行字和无效通行字就成。这种办法很容易用单向函数来实现。计算机存储通行字的单向函数而不是存储通行字。(1)Alice将她的通行字传送给计算机。(2)计算机完成通行字的单向函数计算。(3)计算机把单向函数的运算结果和它以前存储的值进行比较。由于计算机不再存储每人的有效通行字表,所以某些人侵入计算机,并偷取通行字的威胁就减少了。由通行字的单向函数生成通行字表是没用的
16、,因为单向函数不可能逆向恢复出通行字。,字典式攻击和Salt,用单向函数加密的通行字文件还是脆弱的。Mallory在他的业余时间编制1,000,000个最常用的通行字表,他用单向函数对所有1,000,000个通行字进行运算,并将结果存储起来。如果每个通行字大约是8个字节,运算结果的文件不会超过8M字节,几张软盘就能存下。现在Mallory偷出加密的通行字文件。把加密的通行字和已加密的可能通行字文件进行比较,再观察哪个能匹配。这就是字典式攻击,它的成功率令人吃惊。Salt是使这种攻击更困难的一种方法。,Salt是一随机字符串,它与通行字连接在一起,再用单向函数对其运算。然后将Salt值和单向函数
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基本协议 基本 协议 PPT 课件
链接地址:https://www.31ppt.com/p-5487005.html