密码协议的设计准则薛佟佟

密码协议的设计准则薛佟佟

ID:5459724

大小:141.00 KB

页数:15页

时间:2017-11-15

密码协议的设计准则薛佟佟_第1页
密码协议的设计准则薛佟佟_第2页
密码协议的设计准则薛佟佟_第3页
密码协议的设计准则薛佟佟_第4页
密码协议的设计准则薛佟佟_第5页
资源描述:

《密码协议的设计准则薛佟佟》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、密码协议的设计准则薛佟佟密码协议的设计密码协议运行在计算机通信网或分布式系统中,借助于密码算法来达到密钥分配、身份认证等目的的一种交互通信协议,它是为了完成某种安全任务。然而,在密码协议的设计过程中很容易产生各种各样的错误(见密钥的建立.ppt)设计中的安全性考虑如何在协议的设计过程中避免可能出现的安全漏洞是一个值得研究的问题。近年来,已出现多种形式化方法用以考察和分析密码协议,看其是否存在安全缺陷,对于上一节讲过的几种协议,针对某种问题的改进并不彻底,甚至往往会引入其他问题虽然这些方法有时是很有用的,但它本身并没有提出有关设计准则的建议,因此不能直接有效地防止错误的产生。

2、设计的准则准则本身是一种非形式化的指导方针,独立于任何逻辑。尽管这些准则对于协议的正确性来说既非必要条件,也非充分条件,但对于协议的设计却是非常有帮助的,因为遵守它们可以简化协议的设计并防止许多已公布的混淆和错误的产生。有名的文章如:AndersonR,NeedhamR.RobustnessPrinciplesforPublicKeyProtocols.InCoppersmith两条基本准则以下两条准则是贯穿整个安全密码协议设计过程的最基本的准则。准则1:每个消息应清楚地说明它的意思,对消息的解释应完全依靠其内容。即使存在合适的形式化表达方法,每个消息的内容也应可用一个完整

3、的、有意义的语句来描述。准则一例如:A→B:{Ta,Kab,B,A}KbA发送的消息的意义可以解释为:A在时刻Ta向B发送了一个共享的(Kb来保证)会话密钥Kab。B接收到以上的消息但不能确信这个消息是不是A发送的,因此把接收到的消息解释为:B在时刻Ta收到了自称是主体A发送来的会话密钥Kab。准则二准则2:一个消息起作用的条件应该清楚地说明,以便协议的使用者能够根据条件来判断是否采用该协议。例如,如果某人认为会话密钥应该由合适的可信第三方而不是参与会话的某一方选定,那么他将不会希望使用这样的协议。主体命名准则如果主体的身份对于某个消息的意义来说是必要的,那么应该谨慎处理主

4、体的身份信息,如在消息中明确地提到主体的名字。例如,对于如下协议:1)A→S:A,B2)S→A:CA,CB3)A→B:CA,CB,{{Kab,Timea}Ka-1}Kb在第3)步的加密消息中,由于没有主体的身份信息,因此主体B得到消息3)后,可以进行以下操作:B→C:CA,CC,{{Kab,Ta}Ka-1}Kc这样,就可以对C进行欺骗,使得C相信消息来自于A。尤其是,C可能会用Kab加密敏感信息并发送给A,这时B就可以看到这些信息。改进的方法很简单,即把通信双方的身份信息加入消息3)中:3)A→B:CA,CB,{{Kab,Ta,A,B}Ka-1}Kb加密准则应该清楚地知道协

5、议中使用加密的目的,因为加密不是一种简单的运算,它需要的计算量较大,不清楚加密的目的可能会导致冗余。而且加密并不等同于安全,不正确地使用加密甚至会导致协议的错误。例如,Kerberos协议的消息2)S→A:{Ts,L,Kab,B,{Ts,L,Kab,A}Kbs}Kas中采用了双重加密,而从安全和认证的角度来看,这并没有加强安全性,反而增加了计算量。签名准则即使主体对已加过密的消息进行了签名操作,我们也不能由此推断出主体一定就知道该消息的内容。如果主体对消息先签名然后再加密,那么可以推断出主体一定知道该消息的内容。对于认证协议来说,消息在传送时,签名必须在加密之前完成,这样既

6、可以让接收者确定发送者的身份,也保证了发送者知道所发送消息的内容。例如,在之前的例子中,为了进一步确定发送者的身份,可将消息流改为:A→B:{{Ta,Kab,B,A}Ka-1}Kb加密与签名在协议中签名通常应在加密之前完成,但这并不能保证协议完全安全。而且该准则的后半部分还值得考虑,即只有当进行加密和签名操作的是同一主体时,后半部分才能够成立。通过下面的例子可以说明以上两点。对于以下协议:A→B:{{M}Ka-1}Kb其中,A是雇主,B是雇员,M表示"你的工资增加了5000美元",Ka-1是A的签名密钥,Kb是B的公钥。该协议很容易被攻击,即B用自己的私钥解除密,得到{M}

7、Ka-1,并用另一雇员C的公钥加密得到{{M}Ka-1}Kc并发送给C,这样,A与C之间就产生了纠纷。Kerberos协议kerberos是由MIT开发的提供网络认证服务的系统。Kerberos协议主要用于计算机网络的身份鉴别(Authentication),其特点是用户只需输入一次身份验证信息就可以凭借此验证获得的票据(ticket-grantingticket)访问多个服务,即SSO(SingleSignOn)。由于在每个Client和Service之间建立了共享密钥,使得该协议具有相当的安全性。Kerbero

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。