APP下载

适用于双方频繁通信的密钥交换协议

2014-08-03李学宝陈宏朝

计算机工程与科学 2014年7期
关键词:敌手会话口令

易 通,李学宝,陈宏朝

(1.广西师范大学计算机科学与信息工程学院,广西 桂林 541004;2.包头师范学院信息科学与技术学院,内蒙古 包头 014030)

1 引言

两方密钥交换协议[1]能够使通信双方以临时协商的方式得到一把会话密钥,但是由于它并不适合于有大量通信用户的系统,一个可信的第三方服务器随即被加入到协议中,通信双方在服务器的帮助下生成临时会话密钥以达到安全通信的目的,这就是三方密钥交换协议[2,3]。近几年,一系列的三方密钥交换协议陆续被提出,2007年,Lu R X等人[4]提出了一个简单高效的三方密钥交换协议,但随后Chung H R等人[5]指出该协议容易受到假冒攻击和中间人攻击,Kim H S等人[6]也指出该协议容易受到不可察觉的在线字典攻击,并都提出了相应的改进协议。然而这两个改进协议仍被Hu Xue-xian等人[7]发现是不安全的,因为它们都无法抵御不可察觉在线字典攻击。2008年,Liu X M等人[8]提出了一个基于验证元的三方密钥交换协议,但不能抵抗内部人攻击﹑服务器密钥泄露攻击和重放攻击等安全威胁。2010年,Wen Tang等人[9]和Lv Chao等人[10]分别提出了两个高效的基于口令的三方密钥交换协议。但是,Lv Chao等人的协议计算量过大,协议需要多达6轮才能执行一遍,且该协议无法抵御离线字典攻击。同年,Zhang Zi-jian等人[11]也提出了一个基于验证元的3PAKE协议,在该协议中,通信双方先分别与服务器协商好一把临时密钥,再用各自的临时密钥在服务器的帮助下最终生成会话密钥。但是,该协议无法抵御服务器密钥泄露攻击,且计算开销也过大。2012年,我们提出了一个基于双验证元的三方密钥交换协议[12],该协议具有较高的效率,仅需两轮就能生成四把会话密钥。但是,通过后面的研究却发现,该协议不能抵御服务器密钥泄露攻击、不可测的字典攻击,且缺少了前向安全性。本文在该协议的基础上进行了改进,在效率没有降低多少的前提下,引入双线性对的性质,大大增强了协议的安全性能,并通过安全性分析证明了该协议能够抵御包括服务器密钥泄露攻击在内的各种已知攻击。

2 文献[12]协议的描述与安全性分析

我们之前提出过一个高效的基于双验证元的三方密钥交换协议,下面先对这个协议进行简要的回顾。

2.1 文献[12]协议描述

首先介绍该协议所用到的参数:H1、H2、H3分别为哈希函数,P是q阶循环加群G的生成元,F是伪随机函数集,A、B分别为内部用户,S是服务器。A、B分别都有两个独立的口令:PWA1、PWA2和PWB1、PWB2,令XA1=H1(A,S,PWA1),XA2=H1(A,S,PWA2),XB1=H1(B,S,PWB1),XB2=H1(B,S,PWB2)。A、B的验证元分别为:YA1=XA1P,YA2=XA2P和YB1=XB1P,YB2=XB2P。其中,{PWA1,PWA2,XA1,XA2}和{PWB1,PWB2,XB1,XB2}分别为用户A、B所独有,{YA1,YA2}和{YB1,YB2}则分别为A和S,B和S所共有。假设A要和B建立会话密钥,过程如下:

2.2 对文献[12]的攻击方法

(1)服务器密钥泄露攻击。

(2)不可预测的字典攻击。

(3)缺少前向安全性。

若敌手E得到了用户B的两个口令PWB1、PWB2,他可以通过以前截获S发给B的消息{VSB1,VSB2,ZSB,A}来恢复以前通信所用的四把会话密钥KB1=H1(B,S,PWB1)VSB1,KB2=H1(B,S,PWB1)VSB2,KB3=H1(B,S,PWB2)VSB1,KB4=H1(B,S,PWB2)VSB2。因此,只要有一个用户的口令遭到了泄露,之前的通信内容无法确保是安全的,该协议缺少了前向安全性。

3 本文协议

为了克服之前协议的安全隐患,本文引入双线性对性质,在执行轮数仍为两轮、计算开销并未增加多少的前提下,大大提高了该协议的安全性,尤其是很好地解决了如何防御服务器密钥泄露攻击的问题。通过安全性分析证明,该协议能够抵御其他各种已知的攻击。下面先简要介绍本文协议所用到的各个参数:

A、B:合法用户。

S:可信的第三方服务器。

H1、H2、H3:三个单向散列函数。

G:q阶有限循环群。

G1:q阶的有限循环加群。

G2:有限循环乘群。

Q、P:Q是G的生成元,P是G1的生成元。

PWA1、PWA2:用户A的口令,令XA1=H1(A,S,PWA1),XA2=H1(A,S,PWA2),PWA1、PWA2、XA1、XA2均为用户A所独有。

PWB1、PWB2:用户B的口令,令XB1=H1(B,S,PWB1),XB2=H1(B,S,PWB2)、PWB1、PWB2、XB1、XB2均为用户B所独有。

YA1、YA2:为用户A的两个验证元,YA1=XA1P,YA2=XA2P,为A和S所共有。

YB1、YB2:为用户B的两个验证元,YB1=XB1P,YB2=XB2P,为B和S所共有。

s:服务器S的私钥。

WS、WA、WB:三个公开参数,其中WS=sP,WA=PWA1P,WB=PWB1P。

Step2、Step2~代表这两个步骤并无先后关系,假设A要和B进行会话,具体步骤如图1所示。

A、B收到各自的消息后,开始计算会话密钥:

4 安全性分析

有同类型协议相比,该协议能够更好地防御服务器密钥泄露攻击。

(2)在线字典攻击。若敌手E要猜测用户A(会话发起者)的口令,无法通过第二轮里S对A身份的验证,当验证失败次数达到一个预设值后,S就会知道哪个用户的口令正被作为口令猜测攻击的目标,可以采取相应措施;若E本身就是一个合法用户,想要猜测用户B(会话响应者)的口令,因为在等式KA i=KB i(i=1,2,3,4)中,存在两个未知数b和PWB i(i=1,2,3,4),所以不可预测的口令攻击失败。同样道理,可预测的在线字典攻击也是不可行的。

(3)离线字典攻击。若敌手E想从传递的消息VAS、ZAS、ZSB中猜测出合法用户的口令或验证元,但这些参数中都包含有两个或两个以上的未知数,因此本协议能够很好地抵御离线字典攻击。

(4)完善的前向安全性。如果敌手E得到了A(会话发起者)的口令和验证元:PWA1、PWA2、YA1、YA2,A每次计算会话密钥时都会重新取一个随机数a,因此E无法从A这里恢复之前的会话密钥;如果敌手E得到了B(会话响应者)的口令和验证元:PWB1、PWB2、YB1、YB2,B每次生成会话密钥也会重新取随机数b,E要得到b就必须解决离散对数问题,因此也无法从B这里获悉之前的通信内容,所以该协议具有完美的前向安全性。

ASBRound 1VAS=aQ+YA1+YA2ZAS=H2(VAS,A,B,YA1,YA2){VAS,ZAS,A,B,t}→{aP,A,t}→Round2ZAS=?H2VAS,A,B,YA1,YA2 VBA1=bYB1QVAB1=(VAS-YA1-YA2)YA1VBA2=bYB2QVAB2=(VAS- YA1-YA2)YA2SKSB=tYB1ESB=e(WB,sH3(A,B))ZSB=H2(VAB1,VAB2,YB1,YB2,SKSB,ESB) {VAB1,VAB2, ZSB}→EBA= e(aP,PWB1H3(A,B))ZBA=H2(VBA1, VBA2,EBA)←{VBA1, VBA2, ZBA}EAB=e(WB,aH3(A,B))EBS=eWS,PWB1H3A,B ZBA=?H2(VBA1,VBA2,EAB)ZSB=?H2VAB1,VAB2,YB1,YB2,tYB1,EBS KA1=aXA1VBA1KB1=bXB1VAB1KA2=aXA2VBA1KB2=bXB1 VAB2

(5)未知密钥共享和内部人攻击。如果敌手E通过腐化等方式得到了用户C的口令和验证元PWC1、PWC2、YC1、YC2,或者E本身就是合法用户,若想假冒A(会话发起者)与B进行通信,无法通过第二轮里服务器S对A身份的验证;若想假冒B(会话响应者)与用户A通信,由于不知道B的口令PWB1,因此无法通过第二轮里A对B身份的验证。因此,该协议能够防御未知密钥共享和内部人攻击。

(6)重放攻击。因为有新鲜标识符t,因此E若给A、B、S中的任何一方重放以前的旧消息,则无法通过A、B、S各自的验证,因此重放攻击不可行。

(7)已知密钥安全。因为每次协商会话密钥时,通信双方都会各取一个随机数参与到会话密钥的计算中,因此即使敌手得到了一次通信的会话密钥,也无助于他破解其他通信的会话密钥,每一次的会话密钥之间具有独立性,因此该协议具有已知密钥安全性。

(8)无密钥控制。在本协议中,最终生成的会话密钥都是A、B各自取的随机数共同构造而成,通信双方中的任何一方都不能强迫会话密钥选择一个预先定义的值,通信双方对会话密钥的产生都有贡献,因此单方面不能控制密钥的生成。

(9)中间人攻击。如果敌手E模仿A与S对话,由于不知道A的验证元,所以无法通过S在第二轮里的验证;如果敌手E模仿服务器S与B对话,由于不知道服务器S的私钥和B的验证元,因此无法通过B在第二轮里的验证;如果敌手E模仿B与A进行通话,由于不知道B的口令PWB1,所以无法通过A在第二轮里的验证。故本文协议能够抵御中间人攻击。

5 效率分析

Table 1 Comparison of efficiency among protocols表1 各协议的效率比较

由效率分析可知,本文协议的计算效率远高于文献[8]协议的效率,虽然比之前提出的协议(文献[12]协议)消耗稍高,但是与之相比,安全性能得到了很大的增强。

6 结束语

本文在之前提出的一个三方密钥交换协议的基础上提出了一个新的基于验证元的三方密钥交换协议,与之前的协议相比,本文协议具有更强的安全性,通过安全性分析证明其能够抵御各种已知攻击。本文协议运行一次就能生成四把不同的会话密钥,尤其适用于通信双方频繁通信的网络环境,且与现有大多数同类协议相比,具有很高的效率。

[1] Bellovin S M,Merritt M.Encrypted key exchange:Password-based protocols secure against dictionary attacks[C]∥Proc of the 1992 IEEE Symposium on Research in Security and Privacy,1992:72-84.

[2] Abdalla M,Chevassut O,Fouque P A,et al.A simple threshold authenticated key exchange from short secrets[C]∥Proc of Asiacrypt’05, 2005:566-584.

[3] Kwon J O, Jeong I R, Sakurai K, et al. Efficient verifier-based password-authenticated key exchange in the three-party setting[J]. Computer Standards and Interfaces, 2007,29(5):513-520.

[4] Lu R X, Cao Z F . Simple three-party key exchange protocol[J]. Computer Security, 2007,26(1):94-97.

[5] Chung H R, Ku W C. Three weaknesses in a simple three-party key exchange protocol [J]. Information Science, 2008,178(1):220-229.

[6] Kim H S, Choi J Y. Enhanced password-based simple three-party key exchange protocol[J] . Computer Electrical Engineering, 2009,35(1):107-114.

[7] Hu Xue-xian, Liu Wen-fen. Cryptanalysis of two three-party password-based authentication key exchange protocols[J]. Journal of Information Engineering University,2010,11(1):104-128.(in Chinese)

[8] Liu X M, Zhou F C, Chang G R. Improved key exchange protocol for three-party based on verifier authentication[J].Journal of Southeast University(English Edition), 2008, 24(3): 322-324.

[9] Wen Tang.A simple three party password based key exchange protocol[C]∥Proc of International Conference on Mechanical and Electrical Technology (ICMET’10), 2010:730-732.

[10] Lv Chao,Ma Mao-de,Li Hui, et al. An efficient three-party authenticated key exchange protocol with one-time key[C]∥Proc of INFOCOM IEEE Conference on Computer Communications Workshops, 2010:1-5.

[11] Zhang Zi-jian, Zhang Qi-jian. Verifier-based password authenticated key exchange protocol via elliptic curve[C]∥Proc of International Conference on Information Theory and Information Security (ICITIS’10),2010:407-410.

[12] Yi Tong, Chen Hong-chao, Wu Dai-lin. Two password-authenticated key exchange protocol for three:Safety analysis and improvement[J]. Computer Engineering and Design,2012,33(12):4482-4486.(in Chinese)

附中文参考文献:

[7] 胡学先,刘文芬.对两个三方口令认证密钥交换协议的分析[J].信息工程大学学报,2010,11(1):104-128.

[12] 易通,陈宏朝,吴戴林.两个三方密钥交换协议的安全性分析与改进[J].计算机工程与设计,2012,33(12):4482-4486.

猜你喜欢

敌手会话口令
与“敌”共舞
高矮胖瘦
口 令
不带着怒气做任何事
好玩的“反口令”游戏
有意冒犯性言语的会话含义分析
汉语教材中的会话结构特征及其语用功能呈现——基于85个会话片段的个案研究
SNMP服务弱口令安全漏洞防范
冲突语的会话分析研究
对外汉语课堂英语通用语的会话调整功能