王 霏, 陳 明
宜春學(xué)院數(shù)學(xué)與計算機科學(xué)學(xué)院, 宜春336000
認證密鑰協(xié)商(authenticated key agreement, AKA) 協(xié)議廣泛應(yīng)用于兩個用戶或多個用戶在開放網(wǎng)絡(luò)環(huán)境下確認彼此身份、協(xié)商共享的會話密鑰, 建立安全的通信信道.自Diffie 和Hellman[1]提出密鑰交換概念以來, AKA 協(xié)議得到了廣泛的研究和應(yīng)用, 是保障互聯(lián)網(wǎng)安全的基礎(chǔ)協(xié)議之一.
基于身份密碼 (identity-based cryptography, IBC) 由 Shamir[2]在 1984 年 CRYPTO 會議上首次提出, 核心思想是將用戶身份 (ID) 嵌入其公鑰中, 避免使用公鑰證書.IBC 系統(tǒng)中, 可信的密鑰生成中心 (private-key generator, PKG) 根據(jù)用戶 ID 使用 PKG 主密鑰為用戶生成長期私鑰, 用戶公鑰由PKG 公鑰 + 用戶 ID 組成, 不產(chǎn)生用戶公鑰證書, 去除了公鑰證書的管理負擔(dān), 易于構(gòu)建分布式的信任權(quán)威.IBC 體制可作為 PKI 體制的補充, 適合需要簡單密鑰管理結(jié)構(gòu)的應(yīng)用環(huán)境, 比如傳感器網(wǎng)絡(luò)等.自Boneh 等人[3]采用雙線性對理論提出基于身份公鑰加密方案以來, IBC 體制得到廣泛研究.2007 年發(fā)布的 RFC5091[4]草案將 Boneh-Franklin(BF) 算法推薦為基于身份加密標準, 標志著 IBC 體制的標準化工作已經(jīng)開始.
近年來, 基于身份的認證密鑰交換 (ID-AKA) 方案也得到深入研究, 提出了許多有效和實用的方案[5–19].主要的研究成果采用類似 HMQV[20]協(xié)議的一輪 (one-round, 部分文獻稱為 two-message)隱式認證密鑰交換結(jié)構(gòu), 而另一些研究者則提出通用的ID-AKA 構(gòu)造方案.一輪ID-AKA 方案具有實現(xiàn)成本低、開銷小等優(yōu)點, 其安全性可直接規(guī)約到給定的困難數(shù)學(xué)問題和假設(shè); 通用ID-AKA 方案的可擴展性和可移植性更好, 但其安全性往往取決于所使用的密碼學(xué)原語.文獻 [17]對最近提出的幾種 ID-AKA方案進行了對比分析.不過, 截止目前, 大多數(shù)的 ID-AKA 方案在 CK[21]或 eCK 模型[22]下可證明安全, 僅實現(xiàn)了弱的完美前向安全性(weak perfect forward secrecy, wPFS).
一輪隱式認證密鑰交換協(xié)議被認為無法實現(xiàn)完美前向安全性[20,22].最近, Cremers 等人[23,24]對一輪隱式認證密鑰交換協(xié)議稍加擴展, 定義了兩消息的AKA(記為DH-2) 協(xié)議類型, 提出一種適用于DH-2類型協(xié)議的通用變換(SIG 變換).SIG 變換采納了通用構(gòu)造的思想, 可實現(xiàn)密鑰協(xié)商協(xié)議的模塊化設(shè)計,將滿足eCK 安全的DH-2 協(xié)議增強,實現(xiàn)完美前向安全性.文獻[16]采用了Cremers 等人[23]的方法,提出了完美前向安全的ID-AKA 方案(下面記為Xie-ID-AKA).但是, 文獻[24](見文獻[24]定理1)特別指出SIG 變換需要使用強不可偽造(SUF-CMA[25])的簽名算法.而Xie-ID-AKA 方案采用的Schnorr-like簽名算法[26]不具有 SUF-CMA 安全性, 不滿足 SIG 變換的要求, 并且文獻[16]中沒有采用 Cremers 等人[23,24]提出的安全模型對 Xie-ID-AKA 方案進行嚴格的安全性規(guī)約.因此, 本文認為 Xie-ID-AKA 方案不能實現(xiàn)完備的完美前向安全性.此外, Wang 等人[10]、Khatoon 等人[19]分別提出了完美前向安全的ID-AKA 方案 (分別記為Wang-ID-AKA、Khatoon-ID-AKA), 但是, 文獻 [10,19]采用的安全模型與eCK 模型相近似, 僅模擬被動的 wPFS 敵手.事實上, Wang-ID-AKA 方案和 Khatoon-ID-AKA 方案僅實現(xiàn)了弱的完美前向安全性.就目前掌握的文獻來看, 尚沒有能夠真正實現(xiàn)完美前向安全性的DH-2 類型ID-AKA 協(xié)議.
本文的主要工作:基于 Cremers 等人[24]的研究, 提出一種完美前向安全的 ID-AKA 方案 (下文中如未特別注明, 那么均指 DH-2 類型的 ID-AKA 協(xié)議), 主要內(nèi)容分為以下三個方面.(1) 基于 Boneh 和Boyen[27]提出的強不可偽造的短簽名方案(下文記為BBS), 提出強不可偽造的基于身份簽名方案(記為ID-BBS), 并將ID-BBS 方案的安全性規(guī)約到BBS 方案的強不可偽造性.(2) 對Ni 等人[18]提出的eCK安全的 ID-AKA 方案進行簡化以提高效率 (簡化后的方案記為 sN-ID-AKA), 結(jié)合 ID-BBS 方案, 采用SIG 變換方法, 將sN-ID-AKA 方案轉(zhuǎn)化為實現(xiàn)eCK-PFS[24]安全的ID-AKA 方案.(3) 結(jié)合eCK-PFS模型和ID-eCK 模型[17,28], 定義了ID-AKA 方案分析的強安全模型ID-eCK-PFS, 并將本文提出方案的安全性規(guī)約到ID-BBS 方案的強不可偽造性、以及sN-ID-AKA 方案的ID-eCK 安全性.此外, 本文對比分析了eCK-PFS 模型和eCK 模型的主要區(qū)別, 明確了eCK-PFS 模型更強安全性的優(yōu)勢所在.
這里簡要闡述雙線性映射理論, 及存在的困難數(shù)學(xué)問題和假設(shè), 詳細內(nèi)容請參考文獻[18,27].
雙線性映射:給定大素數(shù)p, 令G1, G2, GT是階為 p 的乘法循環(huán)群, 令g1, g2分別是群G1, G2的生成元; 假設(shè)存在同構(gòu)函數(shù) ψ: G2→G1使得 ψ(g2)=g1成立.如果映射 e:G1×G2→GT是從 G1×G2到GT的一個有效的雙線性映射, 則滿足如下性質(zhì).
(1) 雙線性: 給定 u ∈ G1, v ∈ G2和任意的 a, b ∈ Zp, 滿足 e(ua,vb)=e(u,v)ab;
(2) 非退化性: e(g1,g2)1;
(3) 可計算性: 給定任意的u ∈G1, v ∈G2, 存在多項式時間算法能成功計算e(u,v).
CDH (computational Diffie–Hellman) 問題:對于任意未知的 a,b ∈ Zp, 給定求解其中, i ∈{1,2}.
CDH 假設(shè):如果不存在多項式時間算法在時間 t 內(nèi)以至少 ? 的概率求解 CDH 問題, 那么稱 (?,t)-CDH 假設(shè)成立.
q-SDH(q-Strong Diffie-Hellman) 問題:給定 q+2 個元素的元組且存在同構(gòu)函數(shù) ψ(g2)=g1, 計算輸出其中, c ∈Zp.
q-SDH 假設(shè):如果不存在多項式時間算法在時間 t 內(nèi)以至少? 的概率求解 q-SDH 問題, 那么稱(q,?, t)-SDH 假設(shè)成立.
說明: 為了敘述簡潔, 本文省略了 “mod p” 運算.
2.2.1 ID-AKA 協(xié)議定義
ID-AKA 協(xié)議包含系統(tǒng)設(shè)置、密鑰生成和密鑰協(xié)商三個算法.
系統(tǒng)設(shè)置: 輸入安全參數(shù), PKG 產(chǎn)生主密鑰和公開的系統(tǒng)參數(shù).
密鑰生成: 輸入用戶身份, PKG 產(chǎn)生基于用戶身份的長期認證密鑰, 通過安全信道返回給用戶.
密鑰協(xié)商: 期望建立安全信道的兩個用戶之間通過公開信道完成交互式協(xié)議, 相互認證彼此身份, 交換會話密鑰材料, 建立共享的會話密鑰.
2.2.2 ID-AKA 協(xié)議安全模型定義
基于文獻 [17,24,28]的工作, 本文將 eCK-PFS 模型擴展到 ID-AKA 協(xié)議分析領(lǐng)域, 記為 ID-eCKPFS 模型.
令 P = {ID1,ID2,··· ,IDN} 表示包含 N 個誠實用戶的有限集合, IDi為用戶身份標識, i ∈{1,··· ,N}.
會話(Session): 協(xié)議實例的一次運行被稱為一個會話.每一個會話 s 由一個確定的六元組Ts唯一標識, Ts= (sactor,speer,srole,ssent,srecv,scomp).其中, sactor,speer表示會話擁有者及會話對端實體的ID;srole表示會話擁有者在當(dāng)前會話中的角色, 要么是一個發(fā)起者 (用 I 表示), 或者是一個響應(yīng)者 (用 R 表示); ssent,srecv表示會話發(fā)送和接收的消息, scomp表示會話 s 是否已完成, scomp= T 表示會話已完成,否則 scomp=⊥ 表示會話未完成(“⊥” 表示為空, 下同).
敵手(Adversary): 敵手被模擬為一個概率多項式時間圖靈機, 允許執(zhí)行多項式有界(次) 的詢問.
Send(s, M) 詢問: Send 詢問模擬敵手發(fā)送消息 M 到會話 s.模擬器根據(jù)協(xié)議規(guī)范返回相應(yīng)的應(yīng)答,然后更新Ts中的相應(yīng)內(nèi)容.特定地, 敵手通過發(fā)起Send(s, IDj) 詢問和 Send(s, IDj, M) 詢問分別創(chuàng)建發(fā)起者會話和響應(yīng)者會話, 并且假定speer=IDj.
Corrupt(ID) 詢問: 如果ID ∈P, 模擬器輸出用戶 ID 的長期私鑰, 否則返回 ⊥.
Ephemeral-key(s) 詢問: 如果 s 存在, 那么返回該會話的臨時秘密.
Session-key(s) 詢問: 如果 s 存在, 且已完成(scomp=T), 則返回該會話的會話密鑰.
Test(s?) 詢問: 模擬器隨機選擇 b ∈ (0,1), 如果 b = 0, 輸出隨機的 SK ←{0,1}κ, 否則輸出 s?的會話密鑰.其中, κ 為安全參數(shù).Test 詢問僅執(zhí)行一次, 且要求s?是已完成的新鮮會話, 并且在整個模擬過程中不能破壞s?的新鮮性, 否則模擬失敗.
下面定義原始會話、匹配會話和會話新鮮性.
定義 1 (Origin-session)如果會話 s′(可能尚未完成) 與已完成的會話 s 滿足:那么s′是 s 的原始會話, 用關(guān)系 s′→ s 表示.
定義 2 (Matching-session)如果兩個已完成的會話 s 與 s′滿足:那么 s 與 s′互為匹配會話, 用關(guān)系 s ?s′表示.
注意, 匹配會話是相互的, 即關(guān)系 s ? s′和 s′? s 同時成立; 而原始會話是單向的, 即關(guān)系 s′→ s和 s → s′不一定同時成立.
定義 3 (ID-eCK-PFSfresh)如果已完成的會話s 滿足如下條件, 那么 s 滿足ID-eCK-PFSfresh.
(1) sactor,speer是誠實的參與者;
(2) 未執(zhí)行過Session-key(s) 詢問;
(3) 如果存在 s??s, 則未執(zhí)行過 Session-key (s?) 詢問;
(4) 不允許同時執(zhí)行 Ephemeral-key(s) 詢問和 Corrupt(sactor) 詢問;
(5) 對于所有的 s′→ s, 不允許同時執(zhí)行 Corrupt(speer) 詢問和 Ephemeral-key(s′) 詢問;
(6) 如果不存在 s′滿足 s′→ s, 那么在 s 完成之前, 不允許執(zhí)行 Corrupt(speer) 詢問.
安全游戲 (Security Game): 安全游戲被模擬為挑戰(zhàn)者 C 與敵手 A 之間的一系列測試游戲 Game.游戲分為初始化、詢問和挑戰(zhàn)三個階段.初始化階段, 輸入安全參數(shù)κ, C 創(chuàng)建系統(tǒng)參數(shù)和用戶密鑰, 并將所有公開參數(shù)發(fā)送給A.詢問階段, A 自適應(yīng)地執(zhí)行多項式時間有界(次) 的詢問, 但僅能提交1 次對挑戰(zhàn)會話 s?的 Test(s?) 詢問, C 模擬協(xié)議的相應(yīng)算法做出應(yīng)答, 在詢問結(jié)束后, s?仍然滿足新鮮性定義.挑戰(zhàn)階段, A 輸出對 Test(s?) 詢問中 b 的猜測 b′∈ {0,1}.如果 b′= b, A 贏得游戲.A 贏得游戲的優(yōu)勢定義為
定義 4如果 DH-2 類型的 ID-AKA 協(xié)議滿足如下條件, 被認為滿足 ID-eCK-PFS 安全: 1) 如果兩個誠實的參與者完成了一次匹配的會話, 那么他們必然以極大的概率計算得到相同的會話密鑰; 2) 對任意多項式時間敵手是可忽略的.
2.2.3 eCK-PFS 模型與eCK 模型前向安全性比較
下面首先回顧eCK 模型的新鮮性定義, 原定義請參考文獻[22]的定義2 和定義3.
定義 5[eCKfresh]如果已完成的會話 s 滿足如下條件, 那么s 滿足eCKfresh.
(1) sactor,speer是誠實的參與者;
(2) 未執(zhí)行過 Session-key(s) 詢問和 Session-key(s′) 詢問 (如果 s′? s 存在);
(3) 如果存在 s′? s , 則,
- 不允許同時執(zhí)行Ephemeral-key(s) 詢問和 Corrupt(sactor) 詢問;
- 不允許同時執(zhí)行Ephemeral-key(s′) 詢問和 Corrupt(speer) 詢問.
(4) 如果不存在 s′? s , 則,
- 不允許同時執(zhí)行Ephemeral-key(s) 詢問和 Corrupt(sactor) 詢問;
- 在s 完成以前, 不允許執(zhí)行Corrupt(speer) 詢問; 特定地, 對于一輪密鑰交換協(xié)議, 任何時候均不允許執(zhí)行Corrupt(speer) 詢問 (參考文獻 [22]的定義 3).
在 eCK 模型中, 未定義原始會話.與匹配會話不同, 原始會話能區(qū)分重放消息, 強調(diào)會話消息的來源, 即一個會話的輸出等于另一會話的輸入.事實上, 匹配會話是原始會話的子集.表1 對 eCK 模型和eCK-PFS 模型中前向安全性進行了對比, 其它安全性, 如密鑰泄露偽裝(KCI) 攻擊等, 兩類模型等效.其中, S1–S4 和 S1′–S2′表示安全模型能模擬的攻擊場景, TS, MS, OS 分別表示 Test 會話、匹配會話和原始會話, sk 和ek 分別表示會話擁有者的長期私鑰和臨時私鑰, ek 值等于 n 表示對應(yīng)的會話不存在, r 表示允許敵手詢問相應(yīng)私鑰, r?表示允許敵手在會話完成之后詢問相應(yīng)私鑰, ok 表示不允許敵手詢問相應(yīng)私鑰, /表示eCK 模型未定義OS, √表示安全模型能模擬對應(yīng)的攻擊場景, × 則表示不能模擬, Θ 表示該場景在eCK 模型中存在等效的情況.
表1 eCK 模型與eCK-PFS 模型前向安全性對比Table 1 Comparison of forward secrecy between eCK model and eCK-PFS model
從表1 可以看出, eCK 模型不能模擬場景 S1.場景 S1′描述了在 eCK 模型下 Test 會話不存在匹配會話時的情形, 事實上 S1′包含了存在原始會話 (場景 S3 和 S4) 或不存在 (場景 S1) 兩種情形, 但是, 由于eCK 模型未定義原始會話, 因此不區(qū)分這兩種情形, 均不允許敵手詢問Test 會話中對端實體的sk (見定義5 第 (4) 條對一輪密鑰協(xié)議的補充定義)(注意: 根據(jù)定義, Test 會話的對端實體等于其匹配會話 (可能并不存在) 的擁有者).也就是說, 從敵手的視角來看, 場景 S1′與 S3 和 S4 等效, 而不包含 S1 (或者說, 在場景 S1 中, eCK 模型按照與 S3 和 S4 相同的方式處理).在場景 S1 中, eCK-PFS 模型允許敵手在 Test 會話完成以后詢問參與雙方實體的sk, 實現(xiàn)了模擬強的 PFS 安全性.此外, 從敵手的視角來看,場景 S2 與 S2′等效.
本文方案的提出分為兩步: 首先, 將 Boneh 和 Boyen[27]提出的強不可偽造的短簽名方案 (BBS 方案) 改造為強不可偽造的基于身份簽名方案(ID-BBS 方案); 第二步, 在N-ID-AKA 方案的基礎(chǔ)上提出更為簡潔高效的 sN-ID-AKA 方案, 然后采用 SIG 變換, 將其轉(zhuǎn)化為實現(xiàn) eCK-PFS 安全的 ID-AKA 方案.
下面簡要描述BBS 方案.
給定簽名者的公私鑰對: PK=(g1,g2,u,v,z),SK=(x,y).其中, g1和 g2分別是群 G1和 G2的生成元,
BBS 簽名: 輸入待簽名消息 m ∈ Zp和用戶私鑰 SK = (x,y), 隨機選擇 r ∈ Zp, 計算輸出簽名 (σ,r).
BBS 簽名驗證: 收到消息 m 的簽名 (σ,r), 輸入用戶公鑰 PK = (g1,g2,u,v,z), 驗證等式是否成立, 若等式成立則接受簽名, 否則拒絕簽名.
文獻 [27]證明了, 在 SUF-CMA 模型下, 如果 q-SDH 假設(shè)成立, 則 BBS 方案滿足強的不可偽造性.
SUF-CMA 是對 EUF-CMA 的增強, 是指在 EUF-CMA 安全性基礎(chǔ)上, 即使敵手獲得用戶 Alice 對消息 m 的合法簽名 σ, 也不能偽造 Alice 對消息 m 的新的簽名 σ?σ.而 EUF-CMA 模型則不能模擬該場景.
本文改造的ID-BBS 方案包括: 系統(tǒng)建立、密鑰生成、簽名和簽名驗證四個算法.
系統(tǒng)建立: 輸入安全參數(shù) κ, PKG 產(chǎn)生系統(tǒng)公開參數(shù) param = (G1,G2,GT,g1,g2,e,z,P0,H1,H2,H3), 其中, e:G1×G2→GT為滿足條件的雙線性映射, z =e(g1,g2), P0=為 PKG 的公鑰, s ∈Zp為 PKG 的主密鑰, H1: {0,1}ID×G2→ Zp, H2: {0,1}ID×G2→ Zp和 H3: G2→ Zp為密碼 Hash函數(shù).
密鑰生成: 提交用戶身份ID,PKG 隨機選擇r1,r2∈Zp,計算q2=H2(ID,R2), x=r1+sq1,y =r2+sq2, 輸出用戶私鑰則用戶公鑰PK=(u,v,z).
ID-BBS 簽名 (SignID-BBS): 輸入待簽名消息 m ∈G2和用戶私鑰 SK=(x,y), 隨機選擇 r ∈Zp, 計算輸出簽名 (σ,r).由于本文密鑰交換方案中需要對 G2中的成員進行簽名, 而 BBS 簽名算法僅能對Zp中成員進行簽名, 因此, 我們引入 Hash 函數(shù)H3.
ID-BBS 簽名驗證 (VerifyID-BBS): 收到消息 m 的簽名 (σ,r), 輸入用戶公鑰 PK = (u,v,z), 計算m′=H3(m), 驗證等式是否成立, 若等式成立則接受簽名, 否則拒絕簽名.
3.1.1 ID-BBS 方案安全性分析
本文將 ID-BBS 方案的不可偽造性規(guī)約到BBS 方案的不可偽造性, 即, 如果存在敵手在多項式時間內(nèi)成功偽造一個有效的ID-BBS 的簽名, 則模擬器能輸出一個有效的偽造BBS 簽名.規(guī)約過程簡要描述如下.
定理 1如果群 G1,G2,GT上的 q-SDH 假設(shè)成立, 且如果 BBS 簽名具有強不可偽造性, 那么, IDBBS 簽名方案實現(xiàn)了強不可偽造性.
證明:安全性規(guī)約過程分為初始化、詢問和偽造三個階段, 包含兩類模擬器B0和B1, 以及敵手A.規(guī)約形式采用嵌套的游戲模擬方式, 外層模擬 (ID-BBS 游戲, 采用了Paterson 等人[29]提出的選擇身份安全模型) 以B0模擬器, A 為敵手, 內(nèi)層模擬(BBS 游戲, 本文不詳細描述, 參考文獻[27]) 以 B1為模擬器, B0為敵手.
初始化: 輸入安全參數(shù) κ, 模擬器 B0作為 BBS 游戲的敵手從挑戰(zhàn)者 B1處取得用于 BBS 挑戰(zhàn)的公開參數(shù) (G1,G2,GT,g1,g2,e,u,v,z), 然后產(chǎn)生 ID-BBS 系統(tǒng)公開參數(shù) param = (G1,G2,GT,g1,g2,e,z,P0,H1,H2,H3).其中, H1,H2模擬為隨機預(yù)言機 (ID-BBS 方案采用了與文獻 [18]相同的基于身份密鑰生成算法, 采用Schnorr 簽名[30]生成用戶私鑰, 而Schnorr 簽名是隨機預(yù)言模型下的簽名方案, 因此外層模擬使用了隨機預(yù)言機), 其它參數(shù)如上所述.為了實現(xiàn)模擬過程的一致性, B0維護初始為空的列表L1= (ID,R1,h1),L2= (ID,R2,h2) 和LID分別記錄H1,H2詢問和用戶密鑰, 對同一詢問做出相同的應(yīng)答.
詢問: A 自適應(yīng)地提交多項式時間的下列詢問.
H1詢問: 提交 (ID,R1) 詢問, 若 (ID,R1,h1) 在 L1中已存在, 則返回 h1, 否則隨機選擇 h1∈Zp,并返回給 A, 然后將 (ID,R1,h1) 插入 L1中.
H2詢問: 提交 (ID,R2) 詢問, 若 (ID,R2,h2) 在 L2中已存在, 則返回 h2, 否則隨機選擇 h2∈Zp,并返回給 A, 然后將 (ID,R2,h2) 插入 L2中.
密鑰詢問: 敵手 A 提交用戶身份 IDi, 若 IDi= IDI, 則 B0終止模擬, 模擬失敗; 否則按照 IDBBS 方案的密鑰生成算法產(chǎn)生 IDi的私鑰并發(fā)送給 A, 然后將用戶密鑰信息插入 LID.注意, 密鑰生成算法中對哈希函數(shù) H1,H2的計算用 H1,H2詢問代替; IDI是 B0選定的挑戰(zhàn)用戶, 設(shè)置其公鑰為(g1,g2,RI1,RI2,u,v,z), 對 B0來說, 其私鑰未知, 其中,通過H1,H2詢問取得, (u,v,z) 來自 B1.
簽名詢問: A 提交 (IDi,m) 的簽名詢問.若 IDi= IDI, B0計算 m′= H3(m), 提交 BBS 游戲的簽名詢問, 將得到的簽名結(jié)果直接輸出給 A; 否則, 通過密鑰詢問取得 IDi的私鑰, 按照 ID-BBS 簽名算法計算簽名并返回給A.
偽造: 最后, A 提交對 ID-BBS 簽名的偽造簽名 (ID?,m?,σ?,r?).如果 ID?IDI, 則模擬失敗, 否則, B0計算 m??=H3(m?), 提交 (m??,σ?,r?) 作為對 BBS 游戲的偽造結(jié)果.
模擬過程到此結(jié)束.顯然, 如果 A 成功偽造 ID-BBS 簽名, 則 B0也能成功偽造 BBS 簽名.令 A 成功的概率為 ?, 那么 B0成功的概率為 f(?), 其中, f(?) 為多項式函數(shù).
本節(jié)首先對 N-ID-AKA 方案進行簡化, 提出 sN-ID-AKA 方案, 然后, 整合 ID-BBS 簽名, 提出強安全的 eN-ID-AKA 方案.由于N-ID-AKA 方案采用了橢圓曲線上的加法群, 為了實現(xiàn)與 ID-BBS 方案整合, 本文采用與ID-BBS 方案一致的乘法群.盡管采用了不同的群, 但是兩類群具有相似的性質(zhì), 即, CDH假設(shè)在兩類群中都成立.sN-ID-AKA 方案描述如下.
系統(tǒng)設(shè)置: 輸入安全參數(shù) κ, PKG 產(chǎn)生并輸出系統(tǒng)參數(shù) param = (G,g,P0,H1,H).其中, G 為素數(shù)階 p 的乘法循環(huán)群, g 為群 G 的生成元, P0= gs為 PKG 的公鑰, s ∈ Zp為 PKG 的主密鑰,H1:{0,1}ID×G →Zp將身份ID 映射到Zp中的一個隨機成員, H :{0,1}?→(0,1)κ為密鑰導(dǎo)出函數(shù).
密鑰生成: 提交用戶身份IDi,PKG 隨機選擇ri∈Zp,計算Ri=gri,qi=H1(IDi,Ri),xi=ri+sqi,輸出用戶私鑰ski=(xi,Ri); 令ui=gxi, 則用戶公鑰pki=ui.
密鑰協(xié)商: Alice 和Bob 期望建立安全通信信道, 按照以下步驟進行密鑰協(xié)商.
(1) Alice 隨機選擇臨時私鑰 tA∈Zp, 計算臨時公鑰 TA=gtA, 發(fā)送 (IDA,RA,TA) 給 Bob; Bob 隨機選擇臨時私鑰 tB∈Zp, 計算臨時公鑰 TB=gtB, 發(fā)送 (IDB,RB,TB) 給 Alice.
(2) 收到 (IDA,RA,TA) 后, Bob 計算計算會話密鑰skBA=H(IDA,IDB,TA,TB,KB).
(3) 收到 (IDB,RB,TB) 后, Alice 計算計算會話密鑰skAB=H(IDA,IDB,TA,TB,KA).
容易驗證skAB=skBA, Alice 和Bob 計算得到相同的會話密鑰, 實現(xiàn)了相互的隱式認證和密鑰協(xié)商.
eN-ID-AKA 方案描述如下.
系統(tǒng)設(shè)置: 輸入安全參數(shù) κ, PKG 產(chǎn)生并輸出系統(tǒng)參數(shù) param = (G1,G2,GT,g1,g2,e,z,P0,H1,H2,H3,H).其中, (G1,G2,GT,g1,g2,e,z,P0,H1,H2,H3) 與 ID-BBS 方案一致, H 為密鑰導(dǎo)出函數(shù).
密鑰生成: 與 sN-ID-AKA 方案和 ID-BBS 方案基本相同, 用戶 IDi的私鑰為: ski= (xi1,xi2,yi,Ri1,Ri2,Ri3),pki=(ui1,ui2,vi).其中,xi1=ri1+sqi1, xi2=ri2+sqi2, yi=ri3+sqi3, qi1=H1(IDi,Ri1), qi2=H2(IDi,Ri2), qi3=H1(IDi,Ri3),說明: 本文采用獨立的兩組密鑰分別用于認證和簽名以增強安全性, (xi1,Ri1,ui1) 用于認證,(xi2,yi,Ri2,Ri3,ui2,vi) 用于簽名.
密鑰協(xié)商: Alice 和Bob 按照以下步驟進行密鑰協(xié)商.
(1) 與 sN-ID-AKA 方案步驟 (1) 基本相同, 其中,此外, Alice 計算對 TA的簽名 σA=SignID-BBS(param,xA2,yA,TA) 發(fā)送 (IDA,RA1,RA2,RA3,TA,σA) 給 Bob; Bob 計算對 TB的簽名 σB= SignID-BBS(param,xB2,yB,TB) 發(fā)送 (IDB,RB1,RB2,RB3,TB,σB) 給Alice.
(2) 收到(IDA,RA1,RA2,RA3,TA,σA)后,Bob 首先驗證簽名σA,若簽名有效則按照與sN-ID-AKA方案步驟(2) 相同的方法計算會話密鑰skBA.
(3) 收到 (IDB,RB1,RB2,RB3,TB,σB) 后, Alice 首先驗證簽名 σB, 若簽名有效則按照與 sN-IDAKA 方案步驟(3) 相同的方法計算會話密鑰skAB.
eN-ID-AKA 方案密鑰協(xié)商過程如圖1.
首先, 本節(jié)采用 ID-eCK 模型[17,28]對 sN-ID-AKA 方案進行安全性規(guī)約, 然后采用第 2 節(jié)描述的ID-eCK-PFS 模型對eN-ID-AKA 方案進行安全性規(guī)約.參照文獻 [24]的定理1, 本文將eN-ID-AKA 方案的ID-eCK-PFS 安全性規(guī)約到sN-ID-AKA 方案的ID-eCK 安全性, 即, 如果存在敵手以不可忽略的概率攻破eN-ID-AKA 方案的ID-eCK-PFS 安全性, 那么必然存在敵手以不可忽略的優(yōu)勢攻破sN-ID-AKA方案的eCK 安全性.
定理 2如果乘法循環(huán)群 G 上的 CDH 假設(shè)成立, 那么 sN-ID-AKA 方案滿足 ID-eCK 安全.
證明:給定 CDH 問題實例g,ga,gb∈G, 下面演示模擬器 C 利用敵手 A 求解 CDH 問題.令π 表示 sN-ID-AKA 方案, Si表示游戲 Game i 中敵手對 Test 會話猜測成功事件, 那么 Game i 中敵手成功的優(yōu)勢: ?i=|2P(Si)?1|.令N,qs分別表示游戲中創(chuàng)建的用戶數(shù)和會話數(shù)的上界.
圖1 完美前向安全的ID-AKA 方案Figure 1 An ID-AKA scheme with PFS
Game 0.Game 0 模擬 A 與 C 之間的游戲, A 根據(jù) ID-eCK 模型自適應(yīng)地提交詢問, C 按照協(xié)議 π對 A 的詢問做出應(yīng)答.則 Game 0 中 A 成功的優(yōu)勢定義為 ?0.
Game 1.在Game 0 的基礎(chǔ)上, Game 1 考慮一些小概率的碰撞事件, 比如在不同的會話中發(fā)生臨時私鑰碰撞事件等, 當(dāng)出現(xiàn)此類事件則終止模擬, 模擬失敗.令Collπ表示上述小概率事件, 那么根據(jù)差分引理 (文獻 [24]的 Lemma 1), 有: |P(S0)? P(S1)|≤ P(Collπ), 進而可推導(dǎo) ?0≤ ?1+P(Collπ), 推導(dǎo)過程同文獻 [24]定理 1.
Game 2.在Game 1 的基礎(chǔ)上, Game 2 考慮一類較大概率的失敗事件E1.模擬開始之前, C 隨機選擇 l ∈ {1,2,··· ,qs},ID?∈ {ID1,ID2,··· ,IDN}, 令 s?表示游戲中的第 l 個會話, 并且期望敵手 A 發(fā)起會話 s?的 Test(s?) 詢問,且令 E1表示 A 發(fā)起了 Test(s′) 詢問,并且如果事件 E1發(fā)生, 則終止模擬過程, 敵手 A 輸出隨機的 b ∈(0,1).如果事件 E1不發(fā)生, 則 A 成功的概率與 Game 1 相同, 即:如果事件 E1發(fā)生, 則 P(S2|E1) = 1/2.那么:由此可推導(dǎo):
Game 3.在 Game 2 的基礎(chǔ)上, Game 3 引入隨機預(yù)言機 OH1, OH分別模擬密碼哈希函數(shù) H1,H.輸入安全參數(shù)κ, C 產(chǎn)生公開參數(shù)param=(G,g,P0), 維護初始為空的列表LID, LSK.其中, P0=ga.
(1) A 提交 OH1詢問.如果 ID 在 LID中存在, 則輸出 qID, 否則 C 隨機選擇并輸出 qID∈Zp; 如果 ID = ID?, C 隨機選擇 rID∈ Zp, 計算 RID= grID, 將 (ID,RID,rID,⊥,qID) 插入 LID; 否則C 隨機選擇 xID∈Zp, 計算將 (ID,RID,⊥,xID,qID) 插入 LID.
(2) A 提交OH詢問.如果 (IDi,IDj,Ti,Tj,K,SK) 在 LSK中存在, 則輸出SK; 否則隨機選擇并輸出 SK ∈(0,1)κ.然后將 (IDi,IDj,Ti,Tj,K,SK) 插入 LSK.
(3) A 提交 Corrupt(ID) 詢問.如果 ID = ID?, 則終止游戲, 模擬失敗; 否則, 如果 ID 在 LID中存在, 則輸出 xID, 如果 ID 在 LID中不存在, 則通過 OH1詢問創(chuàng)建并返回私鑰 xID.
(4) A 提交 Ephemeral-key(s) 詢問.如果 s = s?則終止游戲, 模擬失敗; 如果會話 s 已建立臨時密鑰, 則返回 s 的臨時密鑰, 否則返回 ⊥.
(5) A 提交 Session-key(s) 詢問, 如果 s = s?∨s ? s?則終止游戲, 模擬失敗; 如果 scompT,則返回 ⊥; 如果 (IDi,IDj,Ti,Tj,K,SK) 在 LSK中存在, 則輸出 SK; 否則, 隨機選擇并輸出SK ∈{0,1}κ.其中, IDi,IDj為會話 s 中參與者身份, Ti,Tj是 s 中發(fā)送和接收的消息.
(6) A 提交 Send(s) 詢問, C 按照下列方式作出應(yīng)答.假設(shè)sactor=IDi.
- 如果 A 提交 Send(s,IDj) 詢問以激活發(fā)起者會話 s.如果 s = s?則令 Ti= gb, 否則 C 隨機選擇 ti∈Zp, 計算 Ti=gti, 輸出 (IDi,Ri,Ti).
- 如果A 提交Send(s,IDj,M) 詢問以激活響應(yīng)者會話 s.如果s=s?則令Ti=gb, 否則C 隨機選擇 ti∈ Zp, 計算 Ti=gti, 輸出 (IDi,Ri,Ti), 設(shè)置 scomp=T.
- 如果 A 提交 Send(s, M) 詢問.此時, s 是一個已激活的會話, 則接受該會話, 設(shè)置scomp=T.
(7) A 提交 Test(s?) 詢問, C 隨機選擇 SK ∈ {0,1}κ, 并返回給 A.
(8) 最后, A 輸出其猜測 b′∈ (0,1).
如果 A 猜測成功, 則 LSK中必然存在 (IDi,IDj,Ti,Tj,K?) 與 s?匹配.如果 s?為發(fā)起者會話, 那么 C 計算否則 s?為響應(yīng)者會話, 則計算 gab=作為對CDH 實例的回答.
從模擬過程可以看出, 如果 A 成功, 則 C 也成功.令 A 成功的優(yōu)勢定義為 ?3, 令 C 成功的概率為則那么:
Game 3 模擬了 ID-eCK 模型中的抗密鑰泄露偽裝 (KCI) 安全性, 而wPFS 安全性和抗臨時密鑰泄露(ESR) 安全性與此類似, 限于論文篇幅, 本文不再詳細論述, 相關(guān)內(nèi)容可參考文獻[17,28].
定理 3如果群G1, G2, GT上的CDH 假設(shè)和 q-SDH 假設(shè)成立, 且如果ID-BBS 簽名具有強不可偽造性、sN-ID-AKA 方案滿足 ID-eCK 安全, 那么 eN-ID-AKA 方案實現(xiàn)了 ID-eCK-PFS 安全.
證明:令π 表示sN-ID-AKA 方案, SIG(π) 表示本文提出的eN-ID-AKA 方案, Si表示游戲Game i 中敵手對Test 會話猜測成功事件, 那么Game i 中敵手成功的優(yōu)勢: ?i=|2P(Si)?1|.令N,qs分別表示游戲中創(chuàng)建的用戶數(shù)和會話數(shù)的上界.
Game 0.Game 0 模擬多項式時間敵手 A 與模擬器 C 之間的游戲, 敵手 A 根據(jù) 2.2.2 節(jié)定義的ID-eCK-PFS 模型自適應(yīng)地提交詢問, C 按照協(xié)議 SIG(π) 對 A 的詢問做出應(yīng)答.則 Game 0 中 A 成功的優(yōu)勢定義為?0.
Game 1.在Game 0 的基礎(chǔ)上, Game 1 考慮一些小概率的碰撞事件, 比如在不同的會話中發(fā)生臨時私鑰碰撞事件等, 當(dāng)出現(xiàn)此類事件則終止模擬, 模擬失敗.令CollSIG(π)表示上述小概率事件, 那么根據(jù)差分引理[24], 有: |P(S0)? P(S1)|≤ P(CollSIG(π)), 同定理 2, 可推導(dǎo) ?0≤ ?1+P(CollSIG(π)).
Game 2.在 Game 1 的基礎(chǔ)上, Game 2 考慮一類較大概率的失敗事件 E1.與定理 2 的 Game 2 相同, 可推導(dǎo):
Game 3.在Game 2 的基礎(chǔ)上, Game 3 考慮對ID-BBS 簽名的偽造事件E2.除非事件E2發(fā)生, 否則 Game 3 與 Game 2 相同.如果事件 E2發(fā)生, 那么敵手 A 輸出隨機的 b ∈(0,1).根據(jù)差分引理[24],有: |P(S2)?P(S3)|≤P(E2).
引理 1如果 ID-BBS 簽名具有強不可偽造性, 那么,是可忽略的.其中,表示算法 F 成功偽造 ID-BBS 簽名的概率.
證明:考慮如下算法 F, 以敵手A 作為子模塊.給定N 個用戶, 并隨機選擇一個挑戰(zhàn)用戶身份ID?,F 可以訪問簽名預(yù)言機 OID-BBS取得 ID?的簽名 (OID-BBS構(gòu)造方式參考 3.1.1 節(jié)的 ID-BBS 游戲), 并從 OID-BBS獲得對 ID-BBS 簽名的挑戰(zhàn); F 構(gòu)造系統(tǒng)公開參數(shù) param 和 ID?的長期認證密鑰、以及除ID?以外的其他用戶密鑰, 算法描述如下.注意, ID?的簽名驗證公鑰從OID-BBS取得, 對應(yīng)的簽名私鑰未知.
(1) 輸入安全參數(shù)κ, 運行子算法A, 將公開參數(shù)param 以及N 個用戶的身份和公鑰發(fā)送給A.
(2) A 提交Send(s,IDj) 詢問以激活發(fā)起者會話 s.此時, speer=IDj, F 按以下方式進行應(yīng)答.
- 如果sactor=IDiID?, 那么按照協(xié)議步驟計算響應(yīng)消息(IDi,Ri1,Ri2,Ri3,Ti,σi)發(fā)送給A.
- 如果 sactor= ID?, 那么首先按照協(xié)議計算 T?, 然后訪問預(yù)言機 OID-BBS取得 ID?對 T?的簽名 σ?, 并將響應(yīng)消息發(fā)送給A.F 將記錄(ID?,T?,σ?) 插入初始為空的列表 L.
(3) A 提交Send(s,IDj,M) 詢問以激活響應(yīng)者會話 s.F 首先驗證消息 M 是否符合協(xié)議規(guī)范, 以及M 是否包含IDj的合法簽名; 如果驗證不成功, 則返回⊥, 否則按以下方式進行應(yīng)答.
- 如果sactor=IDiID?, 那么按照協(xié)議步驟計算響應(yīng)消息(IDi,Ri1,Ri2,Ri3,Ti,σi)發(fā)送給A.
- 如果 sactor=ID?, 那么首先按照協(xié)議計算 T?, 然后訪問預(yù)言機 OID-BBS取得 ID?對 T?的簽名σ?, 并將響應(yīng)消息發(fā)送給A.F 將記錄(ID?,T?,σ?) 插入列表L.
(4) A 提交Send(s,M) 詢問.此時, s 是一個已激活的會話.F 首先驗證消息 M 是否符合協(xié)議規(guī)范,以及 M 是否包含 speer的合法簽名.如果驗證不成功, 則返回 ⊥; 如果 s = s?是創(chuàng)建的第 l 個會話, 且尚未完成, 如果 M 包含 ID?對 T??的合法簽名 σ??滿足 (ID?,T??,σ??)L, 則 F 直接輸出 (ID?,T??,σ??) 作為 ID-BBS 偽造簽名.
(5) A 提交 Corrupt(ID) 詢問.如果 ID = ID?, 算法終止, 模擬失敗; 如果 IDID?, 且 ID 屬于給定的 N 個用戶, F 輸出用戶 ID 的長期私鑰 skID, 否則返回 ⊥.
(6) A 提交 Ephemeral-key(s) 詢問.如果 s 的臨時密鑰存在, 則返回 s 的臨時密鑰, 否則返回 ⊥.
(7) A 提交Session-key(s) 詢問, F 按以下方式進行應(yīng)答.
- 如果會話 s=s?, 則算法終止, 模擬失敗.
(8) 如果A 提交了 Test(s?) 詢問, 則算法終止, 模擬失敗.
從模擬過程可以看出, 如果事件 E2發(fā)生 (模擬過程第 (4) 步), 則算法 F 成功完成 ID-BBS 簽名挑戰(zhàn), 而在第 (5)、(7) 和 (8) 步則可能失敗, 那么 F 成功的優(yōu)勢為從而可推導(dǎo)出
引理 2令其中, 事件 O 表示 Game 3 中 Test 會話存在原始會話, 那么有
證明:Game 3 中, 如果事件 E2發(fā)生則敵手 A 輸出隨機的 b ∈(0,1), 那么: |P(S3|E2)?1/2| =|1/2 ?1/2| = 0; 如果事件 E2不發(fā)生, 則 Test 會話必然存在原始會話, 此時 A 成功的優(yōu)勢為
引理 3如果存在會話 s′是 Test 會話 s?的原始會話, 且如果 Game 3 中存在敵手 A 以不可忽略的優(yōu)勢攻破協(xié)議 SIG(π) 的 ID-eCK-PFS 安全性, 那么可以構(gòu)造算法 A′利用敵手 A 以不可忽略的優(yōu)勢攻破協(xié)議 π 的 ID-eCK 安全性, 且 A′成功的優(yōu)勢為
證明:考慮如下算法A′(以敵手A 作為子模塊), 作為敵手, 從游戲游戲的構(gòu)造可參考本文定理2) 中獲得N 個用戶身份和認證公鑰.A′生成Game 3 的公開參數(shù)param 和所有N 個用戶的簽名密鑰, 執(zhí)行如下.
(1) 輸入安全參數(shù)κ, 運行子算法A, 將公開參數(shù)param 以及 N 個用戶的身份和公鑰發(fā)送給A.
(2) A 提交Corrupt(ID) 詢問.A′在中提交Corrupt(ID) 詢問, 取得ID 的認證私鑰,并組合其簽名私鑰返回給A.
(3) A 提交Ephemeral-key(s) 詢問和Session-key(s) 詢問, 則A′在中提交相應(yīng)詢問,并將得到的輸出返回給A.
(4) A 提交 Send(s) 詢問, 令sactor=IDi.A′按照下列方式作出應(yīng)答.
- 如果A 提交Send(s,IDj) 詢問以激活發(fā)起者會話s.則A′在中提交相同的詢問, 以激活會話 s.A′得到輸出 (IDi,Ri1,Ti).
- 如果 A 提交 Send(s,IDj,M) 詢問以激活響應(yīng)者會話 s.A′首先驗證消息 M = (IDj,Rj1,Rj2,Rj3,Tj,σj) 是否符合協(xié)議規(guī)范, 以及 σj是否是 IDj對 Tj的合法簽名, 如果驗證不成功,則返回 ⊥.否則A′在中提交Send(s,IDj,M′) 詢問, 其中, M′=(IDj,Rj1Tj),得到輸出(IDi,Ri1,Ti).
- 如果 A 提交 Send(s,M) 詢問.此時, s 是一個已激活的會話.A′首先驗證消息 M 是否符合協(xié)議規(guī)范, 以及 M 是否包含 speer的合法簽名.如果驗證不成功, 則返回 ⊥; 否則 A′在中提交Send(s,M′) 詢問, 其中, M′=(IDj,Rj1Tj).
- A′計算 IDi對 Ti的簽名 σi, 將 (IDi,Ri1,Ri2,Ri3,Ti,σi) 返回給 A.
(5) A 提交Test(s?) 詢問, 則A′向提交Test(s?) 詢問, 并將得到的輸出返回給A.
(6) 最后, A 輸出其猜測 b′∈(0,1).如果不存在會話 s 是 Test 會話 s?的原始會話, 那么 A′終止模擬, 模擬失敗; 否則A′直接輸出b′作為其對的猜測.
模擬過程中, 如果 A 破壞了ID-eCK-PFS 新鮮性, 那么 A′終止模擬, 模擬失敗.
如果模擬成功完成,則存在會話s′是Test 會話s?的原始會話,根據(jù)本文2.2.3 節(jié)的分析,此時Game 3 模擬表1 中的場景 S2、S3 和 S4, 而場景 S2 和 S3/S4 分別與 eCK 模型中的場景 S2′和 S1′等效.因此, 如果Game 3 成功完成,也必然成功完成.由模擬過程可知, 如果A 猜測成功, 則A′也成功, 顯然 A′成功的優(yōu)勢為:那么:
表2 對幾種前向安全的ID-AKA 協(xié)議進行了對比分析, 安全性方面列舉了抗密鑰泄露偽裝(KCI)、臨時密鑰泄露抵抗(ESR) 和完美前向安全(PFS) 三個主要的安全屬性, 計算開銷方面主要列舉了單個實體的雙線性對運算 (用 P 表示)、模指數(shù)運算 (用E 表示) 和點乘運算 (用 M 表示) 次數(shù).
表2 相關(guān)ID-AKA 協(xié)議比較Table 2 Comparison of related ID-AKA protocols
安全性方面, N-ID-AKA 方案僅實現(xiàn)了弱的完美前向安全, 文獻[10,19]雖然聲稱其提出的方案實現(xiàn)了完美前向安全, 但是其安全模型僅模擬被動的 wPFS 敵手, 安全性規(guī)約過程中, 在 Test 會話 s?完成以前, 不允許敵手主動地向 s?注入他所選定的臨時秘密參數(shù).事實上, Wang-ID-AKA 方案和Khatoon-ID-AKA 方案僅實現(xiàn)了弱的完美前向安全性.與本文方案相似, Xie-ID-AKA 方案采用了 Cremers 等人提出的 SIG 變換方法, 但是該方案沒有給出完備的安全性證明.相比本文采用的 ID-BBS 簽名機制,Xie-ID-AKA 方案采用的 Schnorr-like 簽名存在兩個弱點, 第一, Schnorr-like 簽名僅實現(xiàn)了 EUF-CMA安全, 不滿足SUF-CMA[25]安全性, 第二, 當(dāng)簽名采用的臨時秘密泄露, 將導(dǎo)致長期認證私鑰泄露.因此,Schnorr-like 算法并不滿足 SIG 變換對簽名算法的要求 (見文獻 [24]定理 1).表2 中, 我們用 “PFS*” 表示Xie-ID-AKA 方案所實現(xiàn)的完美前向安全性.顯然, PFS* 強于wPFS, 但弱于PFS.
從計算性能來看, Wang-ID-AKA 方案、N-ID-AKA 方案和Khatoon-ID-AKA 方案未使用簽名算法,Xie-ID-AKA 方案采用Schnorr-like 簽名算法, 具有較好的計算性能.本文方案的認證過程在N-ID-AKA方案的基礎(chǔ)上進行了優(yōu)化, 但是由于采用了強不可偽造簽名, 總體計算開銷仍稍高于其它4 種方案.進一步優(yōu)化有賴于提出更高效、且具有SUF-CMA 安全性的基于身份簽名機制.
本文提出一種強安全的 ID-AKA 協(xié)議, 在 eCK 安全的基礎(chǔ)上進一步實現(xiàn)完美的前向安全性.本文首先對 Boneh 和 Boyen 提出的 BBS 簽名方案進行改造, 提出基于身份的 ID-BBS 簽名方案, 具有強不可偽造性; 然后, 以 N-ID-AKA 方案為基礎(chǔ)進行簡化, 降低計算開銷, 采用 ID-BBS 算法對會話臨時公鑰進行簽名, 提出具有更強安全性的 ID-AKA 方案.新方案能防止攻擊者在密鑰協(xié)商階段注入由其選擇的臨時秘密信息, 實現(xiàn)了完美前向安全性.此外, 本文對比分析了 eCK-PFS 模型和 eCK 模型的主要區(qū)別, 結(jié)合 eCK-PFS 模型和 ID-eCK 模型, 定義了ID-AKA 方案分析的強安全模型 ID-eCK-PFS, 并基于ID-eCK-PFS 模型對本文提出方案的安全性進行了規(guī)約證明.對比分析表明, 本文提出的 ID-AKA 方案具有更強的安全性, 而計算開銷也在可接受的范圍之內(nèi).
在一輪隱式認證密鑰交換協(xié)議基礎(chǔ)上采用 SIG 變換能實現(xiàn)完美前向安全性, 且具有通用認證方案的優(yōu)點, 使得協(xié)議設(shè)計更加靈活.但是, 簽名算法的使用將隱式認證變?yōu)榱孙@示認證, 且在一定程度上增加了原方案的計算開銷.那么, 能實現(xiàn)完美前向安全性的一輪隱式認證密鑰交換協(xié)議仍然是一個開放性的問題.