国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

對一種基于口令的密鑰交換協(xié)議的分析和改進

2016-09-20 02:47王耀民熊剛強廣東醫(yī)學院信息工程學院東莞523808
現(xiàn)代計算機 2016年6期
關鍵詞:離線口令攻擊者

王耀民,熊剛強(廣東醫(yī)學院信息工程學院,東莞 523808)

對一種基于口令的密鑰交換協(xié)議的分析和改進

王耀民,熊剛強
(廣東醫(yī)學院信息工程學院,東莞 523808)

0 引言

現(xiàn)今社會是一個信息社會,人們通過網絡進行大量的數(shù)據(jù)交換。而網絡上的信息安全環(huán)境又是非常惡劣的。同時人們在交換信息時往往會涉及到銀行卡信息,身份證信息等一些對個人來說非常重要的信息。這些信息一旦被某些犯罪份子得到,會對信息所有人造成經濟上或者精神上的損失。為了保證這些信息的安全,需要對通信雙方通過網絡傳輸?shù)臄?shù)據(jù)進行加密。最可行的辦法是通信雙方的發(fā)送方在通過網絡發(fā)送信息的時候使用一定的加密算法對雙方的通信信息進行加密。接收方在收到發(fā)送方發(fā)送的信息之后使用相對應的解密算法對接收到的信息進行解密。為了達到這個目的,就需要通信雙方在通信之前,協(xié)商建立一個會話密鑰。口令具有方便記憶,操作簡便的特性。因此基于口令的秘鑰交換協(xié)議是目前使用最為廣泛的一種密鑰交換協(xié)議。為了方便記憶,人們往往選用生日、身份證號碼、電話號碼等信息作為自己的口令[1]。這些信息的信息熵非常的低,不能夠抵抗離線字典攻擊。為了增加口令的信息熵,一般采取以下兩種方法[2]。一種使用公鑰密碼算法或者對稱密碼法對用戶的口令進行加密對用戶的口令進行加密。或者是同時使用公鑰密碼和對稱密碼算法對用戶的口令進行加密。一種是既不使用公鑰密碼算法也不使用對稱密碼算法而是采取其他方法來增加用戶口令的信息熵。一個安全的基于口令的密鑰交換協(xié)議應該具有以下特征[1,3-4]:

(1)雙向認證,通信雙方必須能夠互相認證彼此的身份。

(2)動態(tài)性,會話秘鑰必須是動態(tài)的,通信雙方所建立的會話秘鑰應該不包含任何關于口令的信息。

(4)能夠抵抗中間人攻擊,一旦攻擊者發(fā)起中間人攻擊,能夠被通訊雙方的,任何一方及時發(fā)現(xiàn)。

(5)能夠抵抗重放攻擊,攻擊者不能夠利用所記錄的通信雙方之前的信息發(fā)起重放攻擊。

(6)能夠抵靠內部人員攻擊:參加通信雙方的任意一方不能利用自己的口令得到其他協(xié)議參與方的口令。

2010年,Chang等人在文章一當中提出一種基于口令的三方密鑰協(xié)商協(xié)議[5]。在Chang當然所提出的密鑰協(xié)議當中使用異或算法和單向哈希函數(shù)來代替公鑰密碼算法和對稱密碼算法對用戶的口令進行加密。由于執(zhí)行異或算法和單向哈希函數(shù)對用戶的口令進行加密,因此該協(xié)議具有非常高的計算效率。并且Chang等人在文章中使用“隨機預言機”對他們提出的協(xié)議進行了證明,并據(jù)此聲稱他們的協(xié)議是可證明安全的。但是經過我們進行安全分析后發(fā)現(xiàn),Chang等人提出的協(xié)議不能夠抵抗離線字典攻擊,不是一種安全的基于口令的密鑰交換協(xié)議。

本文首先對Chang等人提出的協(xié)議進行安全分析,寫出對Chang等人提出的協(xié)議進行攻擊的模型。然后對Chang等人提出的協(xié)議進行改進,克服其不能夠抵抗離線字典攻擊的缺點。并對本文提出的協(xié)議進行安全分析指出其是一種安全的基于口令的三方密鑰交換協(xié)議。

1 Chang提出的協(xié)議介紹

1.1文中所用的符號介紹

A,B:進行密鑰交換的通信雙方;

S:認證服務器;

Pwx:通信方X的口令;

H():單向哈希函數(shù);

⊕:異或運算;

Idx:通信方X的身份標識;

A→B:通信方A向通信方B發(fā)送消息;

Zq:一個q階的乘法可交換群;

pkx:通信方X的公鑰;

skx:通信方X的私鑰;

E(I)x:使用密鑰X對信息I進行加密;

D(I)x:使用密鑰X對信息I進行解密;

1.2Chang等人提出的協(xié)議

在本節(jié)當中,我們將對Chang等人在2010年提出的基于口令的三方密鑰交換協(xié)議進行詳細的介紹,Chang等人提出的協(xié)議中,參與通信的用戶與認證服務器共享口令。執(zhí)行如下步驟[5]:

(1)A→S:

A向認證服務器S發(fā)送,請求建立會話密鑰。

(2)S→A:

S收到A發(fā)送的請求后,首先查找對應用戶的口令 pwA、pwB并選擇兩個隨機數(shù)es1,es2∈Zq計算 Rs1= ges1mod p,Rs2=ges2mod p。然后利用Rs1、Rs2、pwA、pwB計算RS1⊕pwA,RS2⊕pwB并將其發(fā)送給A。

(3)A→B:

A在收到S發(fā)送的信息后,利用自己的口令pwA計算RS1⊕pwA⊕pwA得到RS1。選擇一個隨機數(shù)eA∈Zq,計算RA=geAmod p,RAS1=ReSA1mod p。將發(fā)送給通信方B。

(4)B→S:

B在收到A發(fā)送的信息后,使用自己的口令PWB計算RS2⊕pwB⊕pwB得到RS2。選擇一個隨機數(shù)eB∈Zq,計算RB=geBmod p,RBS2=Res2Bmod p,KB=ReABmod p。將發(fā)送給認證服務器S。

(5)S→A:

S在收到B發(fā)送的信息后,計算Rs1A=ReAs1mod p,驗證h(RS1A,RS1,idA,idB)是否與h(RAS1,RS1,idA,idB)。如果相等則證明通信方A是合法用戶。計算RS1B=RBes2 mod p,驗證h(RBS2,RS2,idA,idB)與h(RS2B,RS2,idA,idB)是否相等。如果相等則證明通信方B是合法用戶。將發(fā)送給通信方A。

(6)A→B:

(7)A在收到S發(fā)送的信息后,利用在第三步生成的RAS1和收到的RB計算h(RAS1,RB),然后與收到的h (RS1A',RB)比較,驗證兩者是否相等。如果相等,則證明信息是由認證服務器S發(fā)送的。計算KA=ReBAmod p,h (KA,RB),與收到的h(KB,RA)相比較,如果兩者相等,則證明通信方B是合法用戶,并且B有能力計算雙方的會話密鑰SK=h(geAeBmod p,idA,idB),最后將發(fā)送給通信方B。

1.3攻擊模型

Chang等人提出的密鑰交換協(xié)議是基于Diffie-Hellman問題的一種密鑰交換協(xié)議,Chang等人也給出了其在隨機預言機下的相關證明,宣稱其提出的密鑰交換協(xié)議是安全的。一個安全的密鑰交換協(xié)議應該像前文提到的那樣,不僅能夠抵抗離線字典攻擊,而且應該能夠抵抗離線字典攻擊。同時不能夠泄漏任何關于用戶口令的信息,Chang等人提出的密鑰交換協(xié)議經過我們分析后,其不能夠抵抗離線字典攻擊。下面我們給出其具體的攻擊模型。

攻擊者對Chang等人提出的密鑰交換協(xié)議的攻擊可以分為如下兩個階段:

第一階段,竊聽攻擊:

(1)A向認證服務器S發(fā)送通信請求,并將自己的idA和另一通信方的idB發(fā)送給服務器S。

(2)認證服務器S在收到A發(fā)送的idA和idB后,選擇兩個隨機數(shù)es1,es2∈Zq。計算RS1⊕pwA,RS2⊕pwB并將其發(fā)送給A。由于攻擊者始終在監(jiān)聽網絡上的信息,所以服務器在發(fā)送RS1⊕pwA,RS2⊕pwB給合法用戶A的同時,攻擊者也同時可以監(jiān)聽到這條信息,并將其記錄下來。

第二階段,離線字典攻擊:

(1)假設PWI為一個口令集合,其包含了用戶所有可能選擇的口令。攻擊者在記錄服務器發(fā)送給A的RS1⊕pwA,RS2⊕pwB后,選擇任意一個pwi∈PWI,計算

PAi=(RS1⊕pwA⊕pwi)qmod p和 PBi=(RS2⊕pwB⊕pwi)qmod p。

(2)如果PAi和PBi不等于1,則攻擊者可以確定pwi不是用戶A或用戶B的口令。

攻擊者重復步驟1,2直到求出用戶A和用戶B的口令。因此Chang等人提出的協(xié)議不能夠抵抗離線字典攻擊。

2 協(xié)議改進

通過第二節(jié)的分析,我們發(fā)現(xiàn)Chang等人提出的協(xié)議不能抵抗離線字典攻擊,而這個缺點在Chang等人給出的證明中并沒有發(fā)現(xiàn)。通過分析發(fā)現(xiàn),Chang等人提出的協(xié)議不能抵抗離線字典攻擊的主要原因是在協(xié)議的第二階段中,服務器發(fā)送的信息除了使用了異或操作對用戶口令進行加密處理以外,沒有采取任何其他的方法對用戶的口令進行加密處理。雖然只使用異或操作對用戶口令進行加密,能夠從很大程度上提高整個協(xié)議的計算效率,但正是因為只使用了異或操作對用戶的口令進行加密處理,使得攻擊者能夠發(fā)起像本文前面提的離線字典攻擊,從而得到用戶口令。而攻擊者在得到用戶的口令后,就可以冒充合法用戶與其他的合法用戶進行通信。從而引起整個安全系統(tǒng)的崩潰。

因此為克服Chang等人提出的密鑰交換協(xié)議的缺點,本文對Chang等人提出的協(xié)議的改進主要集中克服Chang等人提出的協(xié)議只使用異或算法對用戶口令進行加密的缺點。本文對Chang等提出的協(xié)議主要為以下兩點:第一,引入公鑰加密算法對協(xié)議中的敏感信息進行加密,以確保整個協(xié)議的安全性。第二,由于異或算法無法保證用戶口令的安全性,所以本文對Chang等人的第二個改進就是去除協(xié)議中使用異或算法的部分改用指數(shù)算法對用戶口令進行加密。本文提出的協(xié)議分為以下兩個階段:

初始化階段:

(1)用戶注冊:用戶選擇自己的id和口令,提交給認證服務器S。認證服務器S在收到用戶的注冊請求后保存用戶的id和口令。選擇自己的公私鑰對pkx和skx。公布自己的公鑰pkx,并保存私鑰skx,確保其無法被攻擊者獲得。

(2)認證服務器選擇一定的公鑰加密算法,并選擇自己的公私鑰對pks和sks。公布自己的公鑰pks,并保存私鑰sks,確保其無法被攻擊者獲得。

會話密鑰建立階段:

(1)A→S:QA

A選擇一個隨機數(shù)NA,計算QA=E(idA,idB,NA)PKS,將QA發(fā)送給認證服務器S。

(2)S→A:

認證在服務器在收到A發(fā)送的QA后計算(idA,idB,NA)=D(idA,idB,NA)SKS,查找 idA,idB對應的 pwA和pwB,選擇兩個隨機數(shù)es1,es2∈Zq,利用解密得到NA,計算RS1=ges1+pwA+NA,RS2=ges2+pwB+NA。將RS1和RS2發(fā)送給通信方A。

(3)A→B:

(4)A在收到S發(fā)送的信息后使用自己的口令和

(5)B→S:

(6)S→A:

認證服務器S在收到通信方B發(fā)送的信息后,計算RS1A=mod p,驗證h(RS1A',RS1,idA,idB)是否與h (RAS1,RS1,idA,idB)。如果相等則證明通信方A是合法用戶。計算RS2B=mod p,驗證h(RS2B,RS2,idA,idB)與h (RBS2,RS2,idA,idB)是否相等。如果相等則證明通信方B是合法用戶。通信雙方驗證通過后,將發(fā)送給通信方A。

(7)A→B:

A在收到S發(fā)送的信息后,利用在第三步生成的RAS1和收到的RB計算h(RAS1,RB),然后與收到的h(RS1A',RB)比較,驗證兩者是否相等。如果相等,則證明信息是由認證服務器S發(fā)送的。計算KA=mod p,h(KA,RB),與收到的h(KB,RA)相比較,如果兩者相等,則證明通信方B是合法用戶,并且B有能力計算雙方的會話密鑰 SK=h(geAeBmod p,idA,idB),最后將發(fā)送給通信方B。

3 安全分析

本文所提出的密鑰交換主要是為了改進Chang等人提出的協(xié)議不能夠抵抗離線字典攻擊的缺點,針對所提出的協(xié)議的改進進行分析。

首先Chang等人提出的協(xié)議不能夠抵抗離線字典攻擊的主要原因是在協(xié)議的第二步中認證服務器向通信方A發(fā)送的信息,僅僅使用了異或算法對用戶的口令進行了加密,從而使得攻擊者可以用窮舉攻擊的方法得到用戶的口令。

本文對Chang等人提出的協(xié)議的主要的改進在于在協(xié)議開始時由通信方A選擇一個隨機數(shù),并使用認證服務器的公鑰對用用戶選擇的隨機數(shù)進行加密。攻擊者在沒有有服務器私鑰的情況下無法獲得用戶選擇的隨機數(shù)。如果攻擊者想要獲得通信方A選擇的隨機數(shù),就必須攻破公鑰密碼算法。而到目前為止還沒有有效的針對公鑰密碼算法的攻擊方法。服務器在收到用戶發(fā)送的信息后,使用收到的通信方A選擇的隨機數(shù)對用戶口令進行加密,并將Chang等提出的協(xié)議中的異或算法變?yōu)橹笖?shù)算法。服務器每次發(fā)送給通信方A的認證數(shù)據(jù)都不同,使攻擊者無法對協(xié)議發(fā)起窮舉攻擊。因而本文所提出的協(xié)議是一種安全的可以抵抗離線字典攻擊的密鑰交換協(xié)議。

4 結語

由于用戶在選擇口令時,往往會選擇容易記憶的信息(電話號碼、生日、門牌號等)。導致用戶口令的信息熵非常的低。非常容易被攻擊者使用離線字典攻擊得到。因此基于口令的三方密鑰交換協(xié)議最大的威脅是離線字典攻擊,本文對文獻提出的協(xié)議進行了分析改進,使其能夠抵抗離線字典攻擊,是一種安全的基于口令的三方密鑰交換協(xié)議。

[1]Mohammad Sabzinejad Farash,Mahmoud Ahmadian Attari.An Efficient Client-Client Password-Based Authentication Scheme with Provable Security.J Supercomput 70:1002-1022.2014.

[2]Farash MS,Bayat M,AttariMA.Vulnerability of Two Multiple-Key Agreement Protocols.ComputElectr Eng 37(2):199-204.2011.

[3]Chung HR,Ku WC.Three Weaknesses in a Simple Three-Party Key ExChange Protocol.Inf Sci 178(1):220-229.2011.

[4]Yang H,Zhang Y,Zhou Y,Fu X,Liu H,Vasilakos AV.Provably Secure Three-Party Authenticated Key Agreement Protocol Using Smart Cards.Comput Netw 58:29-38.2014.

[5]Chang TY,Hwang MS,Yang WP.A Communication-Efficient Three-Party Password Authenticated Key Exchange Protocol.Inf Sci 181:217-226.2011.

Password;Information Security;Key Exchange

Security Analysis and Improvements of a Key Exchange Protocol Based on Password

WANG Rao-min,XIONG Gang-qiang
(School of Information Engineering,Guangdong Medical College,Dongguan 523808)

1007-1423(2016)06-0003-05

10.3969/j.issn.1007-1423.2016.06.001

王耀民(1981-),男,山東煙臺人,碩士,講師,研究方向為信息安全

2015-12-17

2016-02-10

最近幾年很多基于口令的三因素密鑰交換被提了出來。2010年Chang等人提出一種基于口令的三方密鑰交換協(xié)議,并對其進行證明,宣稱其是一種安全高效的密鑰交換協(xié)議。對Chang等人提出的協(xié)議進行介紹,并進行安全分析,證明其不能抵抗離線典攻擊。然后對Chang等人提出的協(xié)議進行改進,使其能夠抵抗離線字典攻擊。對改進的協(xié)議進行安全分析。

口令;信息安全;密鑰交換

廣東醫(yī)學院青年基金(No.XQ1355)、國家自然科學基金面上項目(No.61170320)

熊剛強(1967-),男,湖南常德人,博士,副教授,研究方向為計算機圖形圖像

In recent years,a lot of three factor key exchange based on password is proposed.In 2010,Chang et al proposed a three party key exchange protocol based on password,which was proved to be a safe and efficient key exchange protocol.Introduce the protocol proposed by Chang et al.,and carries out security analysis.It is proved that it cannot resist the off code attack.Then the protocol of Chang et al is improved,which can resist the off-line dictionary attack.Presents the security analysis of the improved protocol.

猜你喜歡
離線口令攻擊者
基于卷積神經網絡的離線筆跡鑒別系統(tǒng)
基于貝葉斯博弈的防御資源調配模型研究
異步電機離線參數(shù)辨識方法
新版Windows 10補丁離線安裝更簡單
高矮胖瘦
口 令
正面迎接批判
正面迎接批判
好玩的“反口令”游戲
健身氣功·五禽戲教學口令
当涂县| 蒲城县| 昌平区| 和平区| 丹巴县| 内黄县| 龙胜| 都昌县| 楚雄市| 海安县| 临夏县| 抚顺市| 绥棱县| 抚松县| 威海市| 江门市| 麻城市| 黄冈市| 泾阳县| 靖边县| 定日县| 珠海市| 闽侯县| 长岭县| 平湖市| 长海县| 贡嘎县| 宁陵县| 天津市| 吉首市| 和林格尔县| 积石山| 新津县| 吉林省| 景洪市| 临西县| 清丰县| 榕江县| 武山县| 彩票| 军事|