欢迎来到天天文库
浏览记录
ID:36662503
大小:446.73 KB
页数:14页
时间:2019-05-13
《设计鉴别交换协议鉴别和交换协议》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
1、2008-2009年度北京大学本科生课程讨论议题信息安全引论•密码协议第九讲•鉴别协议•鉴别与密钥交换协议身份鉴别(二)•鉴别与交换协议实例陈钟教授北京大学信息科学技术学院软件研究所--信息安全研究室chen@infosec.pku.edu.cn2008/11/20NISC-09chenzhong©PKU设计鉴别交换协议鉴别和交换协议•介绍在设计鉴别协议时特别需要注意的问题,并•如果用于连接完整性服务的密钥被在线建立,那给出抵抗这些攻击的具体设计策略。么事实证明将鉴别和密钥交换功能组合在一个协•鉴别和密钥交换协议的核心问题有两个:议中
2、是重要的(鉴别和密钥交换协议)。–保密性•最常用的协议,该协议使得通信各方互相鉴别各自的身份,然后交换会话密钥。–时效性•为了防止伪装和防止暴露会话密钥,基本鉴别与会话密码信息必须以保密形式通信。这就要求预先存在保密或公开密钥供实现加密使用。•第二个问题也很重要,因为涉及防止消息重放攻击。重放及对策非重复值的使用•常见的消息重放攻击形式有:①简单重放:攻击者简单复制一条消息,以后在重新发送它;A.序列号:计数的策略:对付重放攻击的一种②可被日志记录的复制品:攻击者可以在一个合法有效的时间窗内方法是在认证交换中使用一个序数来给每一重放一
3、个带时间戳的消息;个消息报文编号。仅当收到的消息序数顺序③不能被检测到的复制品:这种情况可能出现,原因是原始信息已合法时才接受之。但这种方法的困难是要求经被拦截,无法到达目的地,而只有重放的信息到达目的地。双方必须保持上次消息的序号。④反向重放,不做修改。向消息发送者重放。当采用传统对称加密方式时,这种攻击是可能的。因为消息发送者不能简单地识别发B.时间戳:A接受一个新消息仅当该消息包含送的消息和收到的消息在内容上的区别。一个时间戳,该时间戳在A看来,是足够接近•对策:A所知道的当前时间;这种方法要求不同参与①针对同一验证者的重放:非
4、重复值者之间的时钟需要同步②针对不同验证者的重放:验证者的标识符C.验证者发送随机值(如询问):不可预测、不重复1时间戳询问/应答方式(Challenge/Response)•在网络环境中,特别是在分布式网络环境中,时钟同步并不容易做到•A期望从B获得一个消息•一旦时钟同步失败–首先发给B一个随机值(challenge)–B收到这个值之后,对它作某种变换,并送回去–要么协议不能正常服务,影响可用性–A收到B的response,希望包含这个随机值(availability),造成拒绝服务(DOS)•在有的协议中,这个challenge也
5、称为nonce–要么放大时钟窗口,造成攻击的机会–可能明文传输,也可能密文传输•时间窗大小的选择应根据消息的时效性来–这个条件可以是知道某个口令,也可能是其他的事情确定–变换例子:用密钥加密,说明B知道这个密钥;简单运算,比如增一,说明B知道这个随机值•询问/应答方法不适应非连接性的应用,因为它要求在传输开始之前先有握手的额外开销,这就抵消了无连接通信的主要特点。相互鉴别协议讨论议题•在理论上,相互鉴别可通过组合两个单向鉴别交换协议来实现。然而,这种组合需要被仔细地考•密码协议察,因为有可能这样的组合易受窃听重放攻击。•另外,设计协议
6、消息数比相应的单向交换协议的•鉴别协议消息数的两倍少得多的相互鉴别交换协议是可能•鉴别与密钥交换协议的。•因此,由于安全性和性能的原因,相互鉴别交换•鉴别与交换协议实例协议必须为此目的而特别地进行设计。讨论议题CHAP(challenge-Handshake•鉴别与交换协议实例AuthenticationProtocol)–CHAP•拨号用户鉴别协议,是一种通过PPP链接传送–S/Key数据,完成对PPP链接的身份鉴别协议。–双向鉴别CHAP主要适用于NAS(networkaccessServer)对来自于PSTN或ISDN的电路交换
7、连接、拨入–单向鉴别连接或专有连接的身份鉴别–Kerberos–X.509鉴别服务•询问握手鉴别协议(CHAP):RFC1994–采用提问/应答方式进行鉴别,通过在PPP链接的双方进行一次三次握手,完成对对方身份的鉴别2工作原理-iCHAP示意•CHAP是验证方与被验证方之间的三次握手来验证访问者身份的协议。ServerClient•验证方周期地验证登录和访问请求,一旦检测到,就生成和发送一个随机数Challengechallenge给被验证者。被验证者据此生成RespondSucceed/failed一个单向加密的摘要值作为应答(r
8、esponse)传给验证方。验证方根据收到的response来判断用户身份合法性。Challenge=SessionID,ChallengeStringRespond=MD5Hash(SessionID,Challeng
此文档下载收益归作者所有