论文部分内容阅读
密钥协商协议是密码学中一个重要的基本组成部分,它是指两方或多方间在不安全的公共数据网上通过一定的方法产生一个共享的会话密钥,以实现相互间的安全通信。因此,安全的密钥协商协议是构建安全、复杂的高层协议或系统的基础。自从两方认证密钥协商协议MQV和HMQV被建议为相关标准的草案以来,而认证群密钥协商协议(AGKA:Authentiacated Group Key Agreement)方面的标准仍在进一步讨论中,因此,AGKA协议已成为国内外同行研究的热点。本论文首先介绍了群密钥协商协议的应用背景,接着对主要的一些密钥协商协议安全模型进行了分析和比较。根据认证密钥协商协议认证方式的不同,一般可分为三类:1)基于传统公钥密码体制(PKI/CA)的群密钥协商协议;2)基于身份(ID-Based)的群密钥协商协议;3)基于口令(Password)的群密钥协商协议。最后,对上述三类协议从两个方面进行研究,一是对已有的AGKA协议进行分析;另一个设计新的AGKA协议。具体创新工作如下:在基于传统公钥密码体制(PKI/CA)的群密钥协商协议方面,由于抵抗临时秘密信息泄露攻击是AGKA协议的一个重要的安全属性,旨在AGKA协议的某次运行中,如果某用户的临时秘密信息(如消息对(x,X=g~x)中用于计算会话密钥的Diffie-Hellman指数x)被泄露,则攻击者不但可以计算出本次会话密钥,而且只要在用户的签名私钥有效期内,攻击者就可能利用该临时秘密信息以及与之相应的签名假冒该用户与其他用户运行AGKA协议.为克服现有的认证群密钥协商(AGKA)协议的不足,在Krawczyk新提出的双指数挑战-应答数字签名(DCR签名)和Burmester等提出的群密钥协商(GKA)协议(BD方案)的基础上,提出了具有常数轮的高效AGKA协议.新协议除具有现有AGKA协议的安全性外,还具有抗临时秘密指数泄露攻击能力,效率也有所提高。在分析现有的基于传统公钥密码体制(PKI/CA)的AGKA协议的安全性、效率中,指出了Abdalla等在TCC2007中提出的群密钥协商协议编译器不能抵抗假冒攻击,进行了相应的改进。在基于身份(ID)的群密钥协商协议方面,现有的大部分基于公钥的AGKA协议可分两类:第一类,认证部分是基于PKI/CA,会话密钥协商部分主要用模指数(或点乘)实现;第二类,认证部分是基于身份(ID)的公钥体制,会话密钥协商部分主要是用Weil对或Tate对实现。而第一类AGKA协议存在一个较显著问题一公钥管理问题;第二类AGKA协议虽然有效地解决了公钥管理问题,但由于其会话密钥协商部分主要是用双线性对(即Weil对或Tate对)实现,故相对前者其计算量较大,效率较低。针对这些不足,设计了一个静态的AGKA协议,该协议的认证部分是基于身份(ID)的公钥体制,会话密钥协商部分的运算主要用模指数(或点乘)实现;并在相应假设下证明了该AGKA协议的安全性。指出了Choi等在PKC2004中的AGKA协议不能抗外部攻击,并给出了相应的改进方案。指出了刘等在ChinaCrypt2007中提出的基于身份的多安全群组群密钥协商协议攻击者能使得群中用户在运行完该协议后所产生的会话密钥不一致,而且不会被群中成员发现;进一步指出只要攻击者能获得相应协议复本,便能计算出会话密钥:并在此基础上,给出了相应的改进方案。与基于PKI/CA、基于身份的密钥协商协议需要参与者验证相关证书和存储高品质的秘密钥(主密钥)相比,基于口令的三方密钥协商协议仅需要参与者记住一个共享的口令,就能构造出较高品质的会话密钥。该类协议的实现成本较低,更具有应用前景。我们前后分别提出了两个用pairing实现的基于口令的三方密钥协商协议:3-PAKE-1和3-PAKE-2,并在标准模型下对其安全性进行了证明,效率也比相关协议有一定提高。该协议比较适合应用于那些不支持PKI/CA或用户不方便保存长期私钥的情况。