曹震寰 顧小卓 顧夢(mèng)鶴
摘 要:安全和效率是影響無證書認(rèn)證組密鑰協(xié)商協(xié)議能否在Ad Hoc網(wǎng)絡(luò)中得到實(shí)際應(yīng)用的兩個(gè)關(guān)鍵因素。針對(duì)這兩個(gè)關(guān)鍵因素,以提高Ad Hoc網(wǎng)絡(luò)安全組通信的安全性和效率為目標(biāo),提出一個(gè)無證書認(rèn)證組密鑰協(xié)商協(xié)議,基于橢圓曲線密碼體制(ECC)點(diǎn)乘運(yùn)算實(shí)現(xiàn)無配對(duì)的無證書認(rèn)證組密鑰協(xié)商和身份認(rèn)證;并使用Huffman密鑰樹優(yōu)化通信輪數(shù),以降低計(jì)算量和通信量,提高組密鑰協(xié)商效率。安全分析和性能分析表明,與現(xiàn)有基于無證書的組密鑰協(xié)商協(xié)議相比,所提方案在組密鑰協(xié)商時(shí)具有較高的效率和安全性,可以滿足資源受限條件下組密鑰建立以及組成員變動(dòng)帶來的密鑰更新問題。
關(guān)鍵詞:Ad Hoc網(wǎng)絡(luò);無證書公鑰密碼體制;組密鑰;密鑰樹;無證書認(rèn)證組密鑰
中圖分類號(hào): TP309
文獻(xiàn)標(biāo)志碼:A
Abstract: Security and efficiency are two key factors that affect whether a certificateless authenticated group key agreement protocol can be applied in Ad Hoc networks. To improve the security and efficiency of key management problems in securing group communications of Ad Hoc networks, a certificateless group key agreement protocol was proposed, which utilizes Elliptic Curves Cryptography (ECC) multiplication to achieve the group key agreement and authentication without pairing. Meanwhile, the Huffman key tree was used to optimize the rounds of key negotiation, decreasing the computation and communication overheads and improving the group key negotiation efficiency. Security analysis and performance comparison demonstrate that the proposed protocol has good efficiency and security in group key negotiation, which can satisfy group key establishment and rekeying for dynamic groups with restrained resources.
Key words: Ad Hoc network; CertificateLess Public Key Cryptosystem (CL-PKC); group key; key tree; certificateless authentication group key
0 引言
Ad Hoc網(wǎng)絡(luò)是一種獨(dú)立于固定基礎(chǔ)設(shè)施的新型無線網(wǎng)絡(luò),在軍事行動(dòng)、搶險(xiǎn)救災(zāi)、緊急救援、環(huán)境監(jiān)測(cè)等場(chǎng)合有著廣泛的應(yīng)用前景。這些特殊的應(yīng)用場(chǎng)景對(duì)通信安全有很高要求,必須使用加密手段來保證信息安全。然而,Ad Hoc網(wǎng)絡(luò)的拓?fù)浣Y(jié)構(gòu)是動(dòng)態(tài)變化的,所有節(jié)點(diǎn)都是分布式存在的,不能使用傳統(tǒng)的密鑰管理方法來分發(fā)管理密鑰;同時(shí),Ad Hoc網(wǎng)絡(luò)中節(jié)點(diǎn)的資源如電池容量、計(jì)算能力和帶寬等都是有限的,因此,在資源受限條件下如何高效地管理密鑰成為Ad Hoc網(wǎng)絡(luò)安全通信的一個(gè)關(guān)鍵問題。
Ad Hoc網(wǎng)絡(luò)中的許多網(wǎng)絡(luò)功能,例如路由、鄰居發(fā)現(xiàn)和拓?fù)淇刂贫际敲嫦蛉航M的,這就要求節(jié)點(diǎn)設(shè)備在通信中必須使用組密鑰來保證通信的安全性。目前,針對(duì)有線網(wǎng)絡(luò)環(huán)境下的安全群組密鑰管理協(xié)議已有許多研究,但有線網(wǎng)絡(luò)環(huán)境下的群組密鑰管理協(xié)議并不能直接應(yīng)用于Ad Hoc網(wǎng)絡(luò)環(huán)境。Ad Hoc網(wǎng)絡(luò)群組通信具有自身的一些特點(diǎn),如節(jié)點(diǎn)設(shè)備的計(jì)算、存儲(chǔ)、通信和電源等能力受限,群組的動(dòng)態(tài)性和隨機(jī)性較大等,所以,Ad Hoc網(wǎng)絡(luò)環(huán)境下的群組密鑰管理更為復(fù)雜,要求也更高。
Ad Hoc網(wǎng)絡(luò)中,由于節(jié)點(diǎn)的地理位置動(dòng)態(tài)變化,節(jié)點(diǎn)只能由電池供電,導(dǎo)致其能量資源、計(jì)算資源、存儲(chǔ)資源和傳輸距離都受到限制。如果將傳統(tǒng)的群組密鑰協(xié)商協(xié)議直接應(yīng)用于Ad Hoc網(wǎng)絡(luò),將會(huì)帶來較高的通信量和計(jì)算量,極大消耗Ad Hoc網(wǎng)絡(luò)中節(jié)點(diǎn)的能量,因此,原有傳統(tǒng)的群組密鑰協(xié)商協(xié)議不能直接應(yīng)用于Ad Hoc網(wǎng)絡(luò)中。
例如,基于公鑰基礎(chǔ)設(shè)施(Public Key Infrastructure, PKI)的認(rèn)證組密鑰協(xié)商協(xié)議在運(yùn)行時(shí),需要通過認(rèn)證中心(Certificate Authority, CA)發(fā)放公鑰證書為用戶提供身份和公鑰之間的一致性證明后才能進(jìn)行后續(xù)的交互,通信效率相對(duì)較低。而且公鑰證書的產(chǎn)生、發(fā)布、更新、注銷等過程相對(duì)繁瑣,對(duì)證書的驗(yàn)證也需要較大的計(jì)算量,同時(shí),證書存儲(chǔ)和管理的開銷也相對(duì)較大,因此,基于PKI的組密鑰協(xié)商協(xié)議不太適合于帶寬、計(jì)算能力和存儲(chǔ)空間均有限的Ad Hoc網(wǎng)絡(luò)環(huán)境。
基于身份的密碼體制(Identity-Based Cryptograph,IBC)避免了基于PKI的傳統(tǒng)公鑰密碼系統(tǒng)中對(duì)證書的使用和驗(yàn)證過程,簡(jiǎn)化了公鑰的管理。在基于身份的密碼系統(tǒng)中,用戶的公鑰是一些公開的身份信息(例如身份標(biāo)識(shí)符、電話號(hào)碼、電子郵件地址等),或者其他用戶可以利用這些身份信息直接計(jì)算出該用戶的公鑰。用戶私鑰則由一個(gè)可信的密鑰生成中心(Key Generation Center, KGC)生成,并通過安全通道分發(fā)給用戶。由于KGC知道所有用戶的私鑰,所以如果KGC有任何不誠(chéng)實(shí)的行為或者系統(tǒng)主私鑰的泄漏都將直接威脅到用戶的隱私。因此,克服密鑰托管的問題也是基于身份的認(rèn)證密鑰協(xié)商協(xié)議面臨的主要問題,因而也不適用于對(duì)安全性有較高要求的Ad Hoc網(wǎng)絡(luò)。
無證書認(rèn)證密鑰協(xié)商協(xié)議基于無證書公鑰密碼體制(CertificateLess Public Key Cryptosystem,CL-PKC)來實(shí)現(xiàn),既避免了傳統(tǒng)PKI體制對(duì)證書的使用和驗(yàn)證過程,也解決了基于身份的密碼體制存在的私鑰托管問題,其獨(dú)特的特性使之成為當(dāng)前密鑰協(xié)商研究的熱點(diǎn)。
針對(duì)Ad Hoc網(wǎng)絡(luò)的特點(diǎn),本文提出基于資源感知的無證書認(rèn)證組密鑰協(xié)商協(xié)議,在獲得網(wǎng)絡(luò)節(jié)點(diǎn)的能量、計(jì)算能力以及地理位置等信息的基礎(chǔ)上,使計(jì)算能力強(qiáng)、能量多的節(jié)點(diǎn)承擔(dān)較多的運(yùn)算,地理位置相近的節(jié)點(diǎn)優(yōu)先進(jìn)行密鑰協(xié)商,可以有效提高組密鑰協(xié)商的效率。同時(shí)通過在協(xié)議中避免使用運(yùn)算量大的無雙線性對(duì)運(yùn)算,可以進(jìn)一步提高密鑰協(xié)商效率,滿足Ad Hoc網(wǎng)絡(luò)安全組通信的要求。
1 相關(guān)工作
自1976年Diffie和Hellman[1]提出著名的DH(Diffie Hellman)協(xié)議后,密鑰管理研究開始進(jìn)入蓬勃發(fā)展時(shí)期。1982年Ingemarsson等[2]基于DH協(xié)議提出了組密鑰協(xié)商算法CKDS (Conference Key Distribution System),由組中成員共同協(xié)商生成組密鑰,可以提供密鑰的獨(dú)立性和完美向前保密[3],具有較強(qiáng)的安全特性。之后,研究者們相繼提出組密鑰協(xié)商協(xié)議BD(Burmester Desmedt)[4]、GDH(Group Diffie-Hellman)[5]、TGDH(Tree-based Group Diffe-Hellman)[6]、JET(Join-Exit-Tree)[7]和HJET(Huffman-based Join-Exit-Tree scheme)[8]等,在保證安全性的基礎(chǔ)上,通過減少通信量或計(jì)算量的方式提高組密鑰協(xié)商效率。但是,上述組密鑰協(xié)商協(xié)議在設(shè)計(jì)時(shí)沒有考慮協(xié)議的認(rèn)證性,容易遭受中間人攻擊。針對(duì)這一缺陷,學(xué)者們對(duì)認(rèn)證組密鑰協(xié)商協(xié)議展開了廣泛研究,主要集中于基于PKI的認(rèn)證組密鑰協(xié)商協(xié)議、基于身份的認(rèn)證組密鑰協(xié)商協(xié)議和無證書認(rèn)證組密鑰協(xié)商協(xié)議三方面?;赑KI的認(rèn)證組密鑰協(xié)商協(xié)議在協(xié)商時(shí),需要通過CA發(fā)放公鑰證書為用戶提供身份和公鑰之間的一致性證明后才能進(jìn)行后續(xù)的交互,通信效率相對(duì)較低。公鑰證書的產(chǎn)生、發(fā)布、更新和注銷等過程相對(duì)繁瑣,對(duì)證書的驗(yàn)證也需要較大的計(jì)算量。而且,一些基于PKI的認(rèn)證組密鑰協(xié)商協(xié)議使用運(yùn)算復(fù)雜的雙線性對(duì)來完成,對(duì)移動(dòng)節(jié)點(diǎn)的計(jì)算負(fù)載和能量消耗非常大。
為了避免證書的使用,1984年,Shamir[9]引入基于身份的密碼概念。在這種密碼系統(tǒng)中,用戶的某種唯一確定的身份信息(例如身份標(biāo)識(shí)符、電話號(hào)碼、電子郵件地址等)就可作為公鑰,或者可以利用這些身份信息直接計(jì)算出該用戶的公鑰。由于已經(jīng)知道對(duì)方的公開身份信息,在使用時(shí)就不需要去查找公鑰,也不需要對(duì)公鑰的真實(shí)性進(jìn)行檢驗(yàn)。由于用戶的身份信息是公開的,不需要對(duì)公鑰進(jìn)行查詢和檢驗(yàn),因此避免了公鑰證書的使用和CA的部署,簡(jiǎn)化了對(duì)公鑰的管理。但是這種系統(tǒng)不可避免地存在一個(gè)固有的安全缺陷,即私鑰托管問題:私鑰生成中心KGC知道所有用戶的私鑰,不誠(chéng)實(shí)的KGC可以竊聽任何用戶的通信,并可以偽造任何用戶的簽名??朔荑€托管的局限性是基于身份的認(rèn)證密鑰協(xié)商協(xié)議面臨的主要問題。
在這種情況下,為了有效解決私鑰托管問題,Al-Riyami等[10]在2003年提出了無證書公鑰密碼體制。與基于PKI的傳統(tǒng)公鑰密碼系統(tǒng)相比,無證書的公鑰密碼體制不需要公鑰證書,同時(shí)也避免了基于身份的密碼系統(tǒng)中的私鑰托管問題。用戶使用由KGC生成的部分私鑰和自己隨機(jī)選擇的一個(gè)秘密值生成完整的私鑰;用戶的公鑰一部分基于公開參數(shù)生成,一部分由用戶自己生成。使用這種方法一方面消除了密鑰托管,另一方面避免了公鑰證書的使用。從2003至今,無證書公鑰密碼體制一直是密碼學(xué)和信息安全領(lǐng)域非常活躍的研究熱點(diǎn),已經(jīng)積累了大量的研究成果[11]。目前已有的無證書認(rèn)證密鑰協(xié)商協(xié)議大部分集中于對(duì)兩方密鑰協(xié)商協(xié)議安全性和效率的研究,或者使用雙線性對(duì)來生成組密鑰,下面從四方面進(jìn)行闡述。
1.1 基于雙線性對(duì)的兩方無證書認(rèn)證密鑰協(xié)商協(xié)議
Al-Riyami等[10]在提出無證書公鑰密碼體制的同時(shí),也設(shè)計(jì)了首個(gè)無證書兩方密鑰協(xié)商協(xié)議;但是,他們沒有給出針對(duì)無證書密鑰協(xié)商協(xié)議的安全模型,也沒有對(duì)協(xié)議作安全性證明。繼他們的開創(chuàng)性工作之后,文獻(xiàn)[12-15]相繼提出了一些改進(jìn)的無證書密鑰協(xié)商協(xié)議,但是這些作者只通過啟發(fā)式的方式證明他們的協(xié)議是安全的。Swanson在文獻(xiàn)[16-17]中提出了第一個(gè)正式的針對(duì)無證書認(rèn)證密鑰協(xié)商協(xié)議的安全模型,并對(duì)文獻(xiàn)[12-15]的密鑰協(xié)商協(xié)議進(jìn)行了分析,指出這些協(xié)議即使在一般的攻擊下也是不安全的。在文獻(xiàn)[18]中,Lippold等提出了適用于無證書兩方密鑰協(xié)商的安全模型和一個(gè)無證書認(rèn)證密鑰協(xié)商協(xié)議,在安全模型中證明了所提協(xié)議的安全性。Lippold等所提的安全模型考慮了攻擊者的各種能力,與Swanson所提的安全模型相比,Lippold等所提模型的安全性更強(qiáng)。Lippold等所提的密鑰協(xié)商協(xié)議只需要一輪,但是每個(gè)用戶需要5個(gè)模指數(shù)運(yùn)算和10個(gè)雙線性對(duì)才能得到協(xié)商的密鑰,因此協(xié)議的實(shí)用性不強(qiáng)。Zhang等在文獻(xiàn)[19]中提了一個(gè)新的安全模型和一個(gè)高效的密鑰協(xié)商協(xié)議,并在安全模型的基礎(chǔ)上證明該協(xié)議是可證安全的。楊浩民等在文獻(xiàn)[20]中提出一個(gè)基于雙線性對(duì)的無證書兩方認(rèn)證密鑰協(xié)商協(xié)議,使用數(shù)字簽名方案實(shí)現(xiàn)協(xié)議中的身份認(rèn)證。該協(xié)議使用的雙線性對(duì)運(yùn)算的個(gè)數(shù)少,不使用模冪運(yùn)算,計(jì)算量相對(duì)較小。Kermanshahi等在文獻(xiàn)[21]中針對(duì)移動(dòng)Ad Hoc網(wǎng)絡(luò)提出了一個(gè)基于雙線性對(duì)的輕量級(jí)的無證書密鑰協(xié)商方法,與文獻(xiàn)[22]中的方案相比,計(jì)算效率更高。
1.2 無雙線性對(duì)的兩方無證書認(rèn)證密鑰協(xié)商協(xié)議
以上提到的無證書密鑰協(xié)商協(xié)議都是基于雙線性對(duì)展開研究的。與有限域中的指數(shù)運(yùn)算、點(diǎn)乘運(yùn)算相比,雙線性對(duì)運(yùn)算花費(fèi)代價(jià)是最高的。由于雙線性對(duì)計(jì)算復(fù)雜度較高,一些學(xué)者開始研究不使用雙線性對(duì)來構(gòu)建無證書認(rèn)證密鑰協(xié)商協(xié)議,以提高計(jì)算效率。Baek等[23]在2005年提出了第一個(gè)不依賴雙線性對(duì)的公鑰加密方案。He等在文獻(xiàn)[24]中提出了一個(gè)不使用雙線性對(duì)的兩方無證書認(rèn)證密鑰協(xié)商協(xié)議,但是該協(xié)議容易受到type I型攻擊。隨后,He等又在文獻(xiàn)[25]中提出了高效的不使用雙線性對(duì)的兩方密鑰協(xié)商協(xié)議,并證明該協(xié)議在eCK(extended Canetti-Krawczyk)模型[26]下是安全的。劉文浩等在文獻(xiàn)[27]中提出一個(gè)適合于帶寬受限網(wǎng)絡(luò)兩方密鑰協(xié)商方案,并證明只要計(jì)算Diffie-Hellman假設(shè)成立,該方案在隨機(jī)語言模型下是安全的。在文獻(xiàn)[28]中,Yang等以eCK 模型為基礎(chǔ)給出了一個(gè)無證書密鑰協(xié)商的安全模型,并設(shè)計(jì)了一個(gè)計(jì)算高效且不使用雙線性對(duì)的無證書認(rèn)證密鑰協(xié)商協(xié)議。在文獻(xiàn)[28]的模型中,Yang等證明了文獻(xiàn)[29-30]中的兩個(gè)沒有雙線性配對(duì)運(yùn)算的密鑰協(xié)商協(xié)議是不安全的。但是,文獻(xiàn)[28]中的無雙線性配對(duì)協(xié)議并不能提供如Lippold等的基于雙線性配對(duì)協(xié)議[18]一樣的強(qiáng)安全性保證。類似的情況也出現(xiàn)在其他一些基于DH算法的無雙線性配對(duì)的認(rèn)證密鑰協(xié)商算法中[31-32]。此外,該類協(xié)議需要采用額外的數(shù)字簽名方案,這會(huì)帶來通信和存儲(chǔ)方面的額外開銷。
1.3 基于雙線性對(duì)的無證書認(rèn)證組密鑰協(xié)商協(xié)議
目前針對(duì)多方參與的組密鑰協(xié)商協(xié)議研究相對(duì)較少,主要集中于使用雙線性對(duì)進(jìn)行組密鑰協(xié)商[33-38]。2007年,Heo等[33]提出了第一個(gè)基于無證書的組密鑰協(xié)商協(xié)議。2008年,Lee等在文獻(xiàn)[34]中指出Heo提出的協(xié)議不能提供完美向前保密,因而提出了一個(gè)能提供前向安全的無證書組密鑰協(xié)商協(xié)議,但由于文獻(xiàn)[34]中的組密鑰協(xié)商協(xié)議是基于有安全缺陷的雙方協(xié)商協(xié)議[35]構(gòu)建的,因而其安全性是不可信賴的。在文獻(xiàn)[36]中,Cao等提出了一個(gè)協(xié)商輪數(shù)恒定的無證書組密鑰協(xié)商協(xié)議,采用簽名來實(shí)現(xiàn)認(rèn)證功能,并對(duì)安全性給出了正式的分析,但是他們?cè)诎踩P椭袑?duì)攻擊者的行為沒有建模。Geng等[37]指出文獻(xiàn)[36]中的協(xié)議存在幾個(gè)安全缺陷,不能提供前向安全,并在批驗(yàn)證簽名的基礎(chǔ)上提出了一個(gè)改進(jìn)的組密鑰協(xié)商協(xié)議,但是對(duì)協(xié)議的安全性沒有進(jìn)行正式分析。之后,Geng等在文獻(xiàn)[38]中提出了另一個(gè)無證書組密鑰協(xié)商協(xié)議,但計(jì)算效率不高。在文獻(xiàn)[39]中,Gao等基于雙線性對(duì)設(shè)計(jì)了一個(gè)高效的三方無證書密鑰協(xié)商協(xié)議。在文獻(xiàn)[40]中,Teng等提出了一個(gè)協(xié)商輪數(shù)恒定的無證書組密鑰協(xié)商協(xié)議,在協(xié)議認(rèn)證中沒有使用簽名,提高了協(xié)議的效率。
1.4 無雙線性對(duì)的無證書認(rèn)證組密鑰協(xié)商協(xié)議
目前面向群組的不使用雙線性對(duì)的無證書密鑰協(xié)商協(xié)議在公開文獻(xiàn)中相對(duì)較少。筆者在文獻(xiàn)[41]中提出了第一個(gè)不使用雙線性對(duì)的無證書組密鑰協(xié)商協(xié)議,提高了組密鑰協(xié)商的效率,之后又在文獻(xiàn)[42]中提出了基于Huffman編碼的組密鑰協(xié)商協(xié)議,進(jìn)一步提高了性能,但是沒有給出正式的安全性證明。Kumar等在文獻(xiàn)[43]中提出了一個(gè)基于橢圓曲線密碼的匿名無雙線性對(duì)無證書組密鑰協(xié)商協(xié)議,基于環(huán)形建立組密鑰,包括成員注冊(cè)階段和密鑰建立階段,組密鑰建立效率要優(yōu)于基于雙線性對(duì)的無證書組密鑰協(xié)商協(xié)議。
從以上分析可以看出,無雙線性對(duì)的無證書認(rèn)證密鑰協(xié)商協(xié)議由于其計(jì)算量小、效率高等特點(diǎn),在很多領(lǐng)域都得到了廣泛研究。但是,由于無雙線性對(duì)無證書密鑰協(xié)商協(xié)議不能提供和基于雙線性對(duì)的無證書密鑰協(xié)商協(xié)議一樣強(qiáng)的安全性保證,同時(shí)還需要借助其他輔助的數(shù)字簽名方案來完成協(xié)議的認(rèn)證,這兩個(gè)因素限制了無雙線性對(duì)無證書密鑰協(xié)商協(xié)議在組通信中的應(yīng)用;同時(shí),已有針對(duì)Ad Hoc網(wǎng)絡(luò)的無證書組密鑰協(xié)商協(xié)議也沒有考慮網(wǎng)絡(luò)中節(jié)點(diǎn)的能量約束。因此,研究安全、高效、基于資源感知的無雙線性對(duì)無證書認(rèn)證組密鑰協(xié)商協(xié)議也成為本文的出發(fā)點(diǎn)。
2 無證書認(rèn)證組密鑰協(xié)商協(xié)議安全模型
針對(duì)目前缺少無證書認(rèn)證組密鑰協(xié)商協(xié)議安全模型的現(xiàn)狀,本文分析影響協(xié)議安全性的各種因素,對(duì)這些因素進(jìn)行形式化描述并建模,具體從以下幾方面展開研究。
2.1 模型概述
假定協(xié)議參與者集合為U={u1,u2,…,un},協(xié)議可在集合U的任何m(m≤n)個(gè)參與者之間運(yùn)行。每個(gè)參與者ui可以并發(fā)執(zhí)行多次協(xié)議實(shí)例(也即會(huì)話),每個(gè)實(shí)例是一個(gè)概率多項(xiàng)式時(shí)間預(yù)言機(jī)。攻擊者也建模為一個(gè)概率多項(xiàng)式預(yù)言機(jī),攻擊者的行為由隨機(jī)預(yù)言機(jī)模擬,可以向挑戰(zhàn)者對(duì)安全參數(shù)進(jìn)行多次查詢,挑戰(zhàn)者通過預(yù)言機(jī)對(duì)攻擊者的詢問進(jìn)行應(yīng)答。
在模型中,假設(shè)攻擊者A可以完全控制網(wǎng)絡(luò)。攻擊者可以延遲、重放、修改、交織、刪除或者重定向消息。用戶ui的第i個(gè)實(shí)例用Πiui表示。如果實(shí)例計(jì)算出會(huì)話密鑰skiui,則實(shí)例Πiui進(jìn)入接受狀態(tài)。實(shí)例或許會(huì)不進(jìn)入接受狀態(tài)而中斷。每個(gè)實(shí)例Πiui通過狀態(tài)stateiui維持一個(gè)內(nèi)部的狀態(tài)信息。如果所有的組成員都接受了一個(gè)相同的會(huì)話密鑰,則協(xié)議是正確的。下面是一些所需的定義。
Session ID:實(shí)例Πiui的會(huì)話ID用sidiui來表示,表示用戶ui的第i個(gè)實(shí)例。
Partner ID:實(shí)例Πiui的組成員ID是用戶ui在第i次實(shí)例中試圖與之建立會(huì)話密鑰的一組成員,用pidiui來表示。
如果sidiui=sidjui,并且pidiui=pidjui,則實(shí)例Πiui和實(shí)例Πjui是相同的。
2.2 攻擊者類型定義
在本模型中,定義下列兩類攻擊者:
第一類攻擊者AI:攻擊者是一個(gè)外部攻擊者,可以查詢用戶的私鑰或者替換合法用戶的公鑰,但是不能獲得系統(tǒng)主密鑰。
第二類攻擊者AII:攻擊者為一個(gè)內(nèi)部攻擊者,相當(dāng)于一個(gè)惡意的KGC,可以獲得系統(tǒng)主密鑰,但不能替換合法用戶公鑰或者查詢用戶私鑰。
在模型中,攻擊者是上述兩類攻擊者的一種,可以是主動(dòng)攻擊者,能夠替換、修改、延遲、插入和刪除協(xié)議通信過程中的消息內(nèi)容,也可以是能力受限的被動(dòng)攻擊者,只能對(duì)通信內(nèi)容進(jìn)行記錄和分析。
由于原始eCK模型是針對(duì)PKI體制的,只涉及到四個(gè)秘密值:協(xié)議雙方的靜態(tài)私鑰和臨時(shí)秘密,而在無證書認(rèn)證組密鑰協(xié)商協(xié)議中,每個(gè)參與方都涉及到三個(gè)秘密值:部分私鑰、秘密值和長(zhǎng)期私鑰。因此,針對(duì)無證書認(rèn)證組密鑰協(xié)商協(xié)議的安全模型將更加復(fù)雜,一般認(rèn)為只要每個(gè)參與方至少有一個(gè)秘密值沒有泄露,即可認(rèn)為該協(xié)議是安全的。
2.3 攻擊者游戲設(shè)定
認(rèn)證密鑰協(xié)商協(xié)議的安全性通過挑戰(zhàn)者與攻擊者A之間的游戲來定義。在游戲的第一個(gè)階段,攻擊者可以進(jìn)行多項(xiàng)式次數(shù)的詢問,以獲得與會(huì)話密鑰相關(guān)的各種安全參數(shù)的信息。在第二階段,攻擊者對(duì)新鮮預(yù)言機(jī)Πiui進(jìn)行Test查詢,該預(yù)言機(jī)隨機(jī)選擇一個(gè)比特b∈{0,1}:如果b=0,返回一個(gè)隨機(jī)數(shù);否則,返回會(huì)話密鑰給攻擊者。進(jìn)行Test查詢后,攻擊者根據(jù)所得信息,猜測(cè)b的值為b′,如果b=b′,那么攻擊者在游戲中獲勝。
任意時(shí)刻,攻擊者都可以作以下任意詢問:
Send(Πiui,M):這個(gè)詢問向Πiui發(fā)送消息M。給攻擊者返回Πiui在產(chǎn)生消息M的過程中生成的結(jié)果。如果M為空,那這個(gè)詢問會(huì)初始化一個(gè)協(xié)議的執(zhí)行。
Reveal session key(Πiui):如果預(yù)言機(jī)Πiui已被接受,則攻擊者可以進(jìn)行這個(gè)詢問,會(huì)話密鑰將返回給攻擊者。
Reveal partial private key(ui):攻擊者通過這個(gè)查詢獲得會(huì)話Πiui中用戶ui的部分私鑰。
Reveal secret value(ui):通過這個(gè)詢問,攻擊者獲得用戶ui的秘密值。
Request public key(ui):通過這個(gè)詢問,攻擊者獲得用戶ui的公鑰。
Replace public key(ui,pk):這個(gè)詢問將用戶ui的公鑰替換為公鑰值域空間的任意值pk,在以后的通信和計(jì)算中將使用新的公鑰,但是用戶ui會(huì)繼續(xù)使用它原始的私鑰來進(jìn)行計(jì)算。
Reveal state(Πiui):這個(gè)詢問返回內(nèi)部狀態(tài)信息stateiui給攻擊者。
Test(Πiui):輸入會(huì)話Πiui必須是新鮮的(見后文定義)。預(yù)言機(jī)隨機(jī)選擇一個(gè)比特?cái)?shù)據(jù)b∈{0,1}:如果b=1,返回會(huì)話密鑰給攻擊者;否則,從有效會(huì)話密鑰的區(qū)域中返回一個(gè)隨機(jī)值。Test詢問只能針對(duì)新鮮的預(yù)言機(jī)詢問一次。
在Test查詢之后,攻擊者可以繼續(xù)進(jìn)行其他查詢,但會(huì)話Πiui應(yīng)保持新鮮。在任意時(shí)刻,攻擊者可以輸出猜測(cè)的b′,如果b′=b,則攻擊者贏得了游戲。攻擊者A贏得游戲的優(yōu)勢(shì)被定義為:AdvA(k)=Pr[Succ]-12。
存在第一類攻擊者時(shí),如果Reveal partial private key(ui)和Reveal secret value(ui),或者Reveal partial private key(ui)和Replace public key(ui,pk)同時(shí)被詢問過,那么用戶ui被認(rèn)為是腐化的。存在第二類攻擊者時(shí),如果Reveal secret value(u)或者Replace public key(ui,pk)被詢問過,則用戶ui是腐化的,因?yàn)榈诙惞粽咧浪杏脩舻牟糠炙借€。一個(gè)沒有被腐化的用戶稱為誠(chéng)實(shí)的用戶。
定義1 新鮮會(huì)話。如果下列條件成立,則實(shí)例Πiui是新鮮的:
1)Πiui接受了會(huì)話密鑰;
2)Πiui和它的成員都沒有進(jìn)行過Reveal session key或者Reveal state詢問;
3)pidiui中的任何用戶都沒有被腐化。
定義2 安全的認(rèn)證密鑰協(xié)商協(xié)議。我們稱一個(gè)無證書認(rèn)證組密鑰協(xié)商協(xié)議(在eCK 模型下)是安全的,如果匹配的會(huì)話計(jì)算出相同的會(huì)話密鑰并且對(duì)于任何概率多項(xiàng)式時(shí)間攻擊者A(包括第一類攻擊者和第二類攻擊者),贏得以上游戲的優(yōu)勢(shì)是可以忽略的。
3 無配對(duì)無證書認(rèn)證組密鑰協(xié)商協(xié)議
為降低組密鑰建立和更新過程中的計(jì)算量和通信量,提高組密鑰協(xié)商效率,本文基于Huffman密鑰樹,提出一個(gè)不使用雙線性配對(duì)運(yùn)算的無證書認(rèn)證組密鑰協(xié)商協(xié)議,避免了復(fù)雜的配對(duì)運(yùn)算。下面對(duì)無配對(duì)無證書認(rèn)證組密鑰協(xié)商協(xié)議進(jìn)行闡述。
3.1 初始化過程
初始化過程分為三個(gè)步驟:
1)系統(tǒng)初始化及參數(shù)設(shè)置。這一階段由KGC完成,KGC輸入k,生成素?cái)?shù)p,確定集合{Fp,E/Fp,G,P}。隨機(jī)選取主私鑰x∈RZ*p,計(jì)算主公鑰Ppub=xP,同時(shí)選擇兩個(gè)哈希函數(shù):H1:{0,1}*×G→Z*p,H2:{0,1}*2×G9→{0,1}k。主私鑰x是秘密的,{Fp,E/Fp,G,P,Ppub,H1,H2}是公開的。
2)部分私鑰生成。對(duì)于ID為IDU的成員,KGC為其選擇一個(gè)隨機(jī)數(shù)rU∈RZ*p,計(jì)算RU=rUP,h=H1(IDU‖RU),sU=(rU+hx)-1,然后由KGC將(sU,RU)秘密地傳遞給IDU。通過檢查等式sU(RU+H1(IDU‖RU)Ppub)=P是否成立,成員IDU可以驗(yàn)證自己部分私鑰的正確性。
3)用戶秘密值生成。用戶IDU隨機(jī)選取xU∈RZ*p作為自己的私鑰uskU=xU,計(jì)算自己的公鑰upkU=xUP。
3.2 組密鑰協(xié)商過程
6 結(jié)語
本文提出了一種基于無證書的無配對(duì)組密鑰協(xié)商協(xié)議,以滿足Ad Hoc網(wǎng)絡(luò)中對(duì)組密鑰協(xié)商的安全性和效率要求。在所提協(xié)議中,采用了Huffman密鑰樹結(jié)構(gòu)來減少協(xié)商輪數(shù),采用標(biāo)量點(diǎn)乘運(yùn)算替代配對(duì)運(yùn)算來減少計(jì)算開銷,并且采用隱式認(rèn)證避免了簽名。通過以上方法,組密鑰建立和更新開銷大大降低。安全性分析表明,本文方案可以滿足安全要求,具有較高的安全性。性能分析表明,與現(xiàn)有基于無證書的組密鑰協(xié)商協(xié)議相比,本文協(xié)議具有較高的效率,適用于Ad Hoc網(wǎng)絡(luò)組通信。
參考文獻(xiàn):
[1] DIFFIE W, HELLMAN M E. New directions in cryptography [J]. IEEE Transactions on Information Theory,1976,22(6):644-654.
[2] INGEMARSSON I, TANG D, WONG C K. A conference key distribution system [J]. IEEE Transactions on Information Theory, 1982, 28(5):714-719.
[3] MENEZES A J, VANSTONE S A, OORSCHOT P C V. Handbook of Applied Cryptography [M]. Boca Raton,F(xiàn)L:CRC Press,1997.
[4] BURMESTER M, DESMEDT Y. A secure and efficient conference key distribution system [C]// Advances in Cryptology — EUROCRYPT94. Berlin: Springer, 1995: 275-286.
[5] STEINER M, TSUDIK G, WAIDNER M. Diffie-Hellman key distribution extended to group communication [C]// Proceedings of the 3rd ACM Conference on Computer and Communications Security. New York: ACM, 1996:31-37.
[6] KIM Y, PERRIG A, TSUDIK G. Tree-based group key agreement [J]. ACM Transactions on Information & System Security,2004,7(1):60-96.
[7] MAO Y, SUN Y, WU M, et al. JET: dynamic join-exit-tree amortization and scheduling for contributory key management [J]. IEEE/ACM Transactions on Networking, 2006, 14(5):1128-1140.
[8] GU X Z, YANG J X, LAN J L, et al. Huffman-based join-exit-tree scheme for contributory key management [J]. Computers & Security, 2009, 28(1):29-39.
[9] SHAMIR A. Identity-based cryptosystems and signature schemes [C]// Proceedings of CRYPTO 84. Berlin: Springer,1984:47-53.
[10] AL-RIYAMI S S, PATERSON K G. Certificateless public key cryptography [C]// Proceedings of the 2003 International Conference on the Theory and Application of Cryptology and Information Security. Berlin: Springer, 2003:452-473.
[11] 張福泰,孫銀霞,張磊,等.無證書公鑰密碼體制研究[J]. 軟件學(xué)報(bào), 2011, 22(6): 1316-1332. (ZHANG F T, SUN Y X, ZHANG L, et al. Research on certificateless public key cryptography [J]. Journal of Software, 2011, 22(6): 1316-1332.)
[12] SHAO Z H. Efficient authenticated key agreement protocol using self-certified public keys from pairings [J]. Wuhan University Journal of Natural Sciences,2005,10(1):267-270.
[13] MANDT T K, TAN C H. Certificateless authenticated two-party key agreement protocols [C]// Proceedings of the 11th Asian Computing Science Conference on Advances in Computer Science: Secure Software and Related Issues. Berlin: Springer, 2006:37-44.
[14] WANG S, CAO Z, WANG L. Efficient certificateless authenticated key agreement protocol from pairings [J]. Wuhan University Journal of Natural Sciences, 2006, 11(5):1278-1282.
[15] XIA L, WANG S, SHEN J. Breaking and repairing the certificateless key agreement protocol from ASIAN 2006 [J]. Wuhan University Journal of Natural Sciences, 2008, 13(5):562.
[16] SWANSON C M. Security in key agreement: two-party certificateless schemes [EB/OL].[2018-03-20]. http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.843.265&rep=rep1&type=pdf.
[17] SWANSON C, JAO D. A study of two-party certificateless authenticated key-agreement protocols [C]// Proceedings of the 10th International Conference on Cryptology in India: Progress in Cryptology. Berlin: Springer, 2009:57-71.
[18] LIPPOLD G, BOYD C, NIETO J G. Strongly secure certificateless key agreement [C]// Proceedings of the 3rd International Conference Palo Alto on Pairing-Based Cryptography. Berlin: Springer, 2009:206-230.
[19] ZHANG L, ZHANG F, WU Q, et al. Simulatable certificateless two-party authenticated key agreement protocol [J]. Information Sciences, 2010, 180(6):1020-1030.
[20] 楊浩民,張堯?qū)W,周悅芝.基于雙線性對(duì)的無證書兩方認(rèn)證密鑰協(xié)商協(xié)議[J].清華大學(xué)學(xué)報(bào)(自然科學(xué)版),2012,52(9):1293-1297. (YANG H M, ZHANG Y X, ZHOU Y Z. Certificateless two-party authenticated key agreement protocol based on bilinear pairings [J]. Journal of Tsinghua University (Science and Technology), 2012, 52(9): 1293-1297.)
[21] KERMANSHAHI S K, SALLEH M. An enhanced certificateless cryptosystem for mobile Ad Hoc networks [C]// Proceedings of the 2014 International Symposium on Biometrics and Security Technologies. Piscataway, NJ: IEEE, 2014:176-181.
[22] EISSA T. A novel lightweight authentication scheme for mobile Ad Hoc networks [J]. Arabian Journal for Science & Engineering, 2012, 37(8): 2179-2192.
[23] BAEK J, SAFAVI-NAINI R, SUSILO W. Certificateless public key encryption without pairing [C]// Proceedings of the 8th International Conference on Information Security. Berlin: Springer, 2005:134-148.
[24] HE D, CHEN Y, CHEN J, et al. A new two-round certificateless authenticated key agreement protocol without bilinear pairings [J]. Mathematical & Computer Modelling, 2011, 54(11):3143-3152.
[25] HE D, PADHYE S, CHEN J. An efficient certificateless two-party authenticated key agreement protocol [J]. Computers & Mathematics with Applications, 2012,64(6):1914-1926.
[26] LAMACCHIA B, LAUTER K, MITYAGIN A. Stronger security of authenticated key exchange [C]// Proceedings of the 1st International Conference on Provable Security. Berlin: Springer, 2007:1-16.
[27] 劉文浩,許春香.無證書兩方密鑰協(xié)商方案[J]. 軟件學(xué)報(bào),2011,22(11):2843-2852. (LIU W H, XU C X. Two party certificateless key agreement schemes [J]. Journal of Software, 2011, 22(11): 2843-2852.)
[28] YANG G, TAN C H. Strongly secure certificateless key exchange without pairing [C]// Proceedings of the 6th ACM Symposium on Information, Computer and Communications Security. New York: ACM, 2011: 71-79.
[29] GENG M, ZHANG F. Provably secure certificateless two-party authenticated key agreement protocol without pairing [C]// Proceedings of the 2009 International Conference on Computational Intelligence and Security. Piscataway, NJ: IEEE, 2010: 208-212.
[30] HOU M, XU Q. A two-party certificateless authenticated key agreement protocol without pairing [C]// Proceedings of the 2009 2nd IEEE International Conference on Computer Science and Information Technology. Piscataway, NJ: IEEE, 2009, 3:412-416.
[31] SARR A P, ELBAZ-VINCENT P, BAJARD J C. A new security model for authenticated key agreement [C]// Proceedings of the 7th International Conference on Security and Cryptography for Networks. Berlin: Springer, 2010:219-234.
[32] SUN H, WEN Q, ZHANG H, et al. A novel pairing-free certificateless authenticated key agreement; protocol with provable security [J]. Frontiers of Computer Science, 2013, 7(4):544-557.
[33] HEO S, KIM Z, KIM K. Certificateless authenticated group key agreement protocol for dynamic groups [C]// Proceedings of the 2007 IEEE Global Telecommunications Conference. Piscataway, NJ: IEEE, 2007:464-468.
[34] LEE E J, LEE S E, YOO K Y. A certificateless authenticated group key agreement protocol providing forward secrecy [C]// Proceedings of the 2008 International Symposium on Ubiquitous Multimedia Computing. Piscataway, NJ: IEEE, 2008:124-129.
[35] SHI Y, LI J. Two-party authenticated key agreement in certificateless public key cryptography [J]. Wuhan University Journal of Natural Sciences, 2007, 12(1):71-74.
[36] CAO C, JIANFENG M A, SANGJAE M. Provable efficient certificateless group key exchange protocol [J]. Wuhan University Journal of Natural Sciences, 2007, 12(1): 41-45.
[37] GENG M, ZHANG F. An improved secure certificateless authenticated group key agreement protocol [C]// Proceedings of the 2009 IEEE International Conference on Intelligent Computing and Intelligent Systems. Piscataway, NJ: IEEE, 2009:337-341.
[38] GENG M, ZHANG F, GAO M. A secure certificateless authenticated group key agreement protocol [C]// Proceedings of the 2009 International Conference on Multimedia Information Networking and Security. Washington, DC: IEEE Computer Society, 2009:342-346.
[39] GAO M, ZHANG F, GENG M. An efficient certificateless authenticated tripartite key agreement protocol [C]// Proceedings of the 2009 International Conference on Management and Service Science. Piscataway, NJ: IEEE, 2009:1-4.
[40] TENG J, WU C. A provable authenticated certificateless group key agreement with constant rounds [J]. Journal of Communications & Networks, 2012, 14(1):104-110.
[41] GU X, XU T, ZHOU W, et al. A pairing-free certificateless authenticated group key agreement protocol [C]// Proceedings of the 2014 IEEE International Conference on High Performance Computing and Communications(HPCC), 2014 IEEE 6th International Symposium on Cyberspace Safety and Security (CSS) and 2014 IEEE 11th International Conference on Embedded Software and Systems (ICESS). Piscataway, NJ: IEEE, 2014:510-513.
[42] GU X, CAO Z, WANG Y. How to get group key efficiently in mobile Ad Hoc networks? [C]// Proceedings of the 2015 IEEE Military Communications Conference. Piscataway, NJ: IEEE, 2015:1009-1014.
[43] KUMAR A, TRIPATHI S. A pairing free anonymous certificateless group key agreement protocol for dynamic group [J]. Wireless Personal Communications, 2015, 82(2):1027-1045.