• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看

      ?

      完美前向安全的基于身份認(rèn)證密鑰協(xié)商方案*

      2020-03-02 09:34:12霏,
      密碼學(xué)報(bào) 2020年1期
      關(guān)鍵詞:敵手會(huì)話私鑰

      王 霏, 陳 明

      宜春學(xué)院數(shù)學(xué)與計(jì)算機(jī)科學(xué)學(xué)院, 宜春336000

      1 引言

      認(rèn)證密鑰協(xié)商(authenticated key agreement, AKA) 協(xié)議廣泛應(yīng)用于兩個(gè)用戶或多個(gè)用戶在開放網(wǎng)絡(luò)環(huán)境下確認(rèn)彼此身份、協(xié)商共享的會(huì)話密鑰, 建立安全的通信信道.自Diffie 和Hellman[1]提出密鑰交換概念以來, AKA 協(xié)議得到了廣泛的研究和應(yīng)用, 是保障互聯(lián)網(wǎng)安全的基礎(chǔ)協(xié)議之一.

      基于身份密碼 (identity-based cryptography, IBC) 由 Shamir[2]在 1984 年 CRYPTO 會(huì)議上首次提出, 核心思想是將用戶身份 (ID) 嵌入其公鑰中, 避免使用公鑰證書.IBC 系統(tǒng)中, 可信的密鑰生成中心 (private-key generator, PKG) 根據(jù)用戶 ID 使用 PKG 主密鑰為用戶生成長期私鑰, 用戶公鑰由PKG 公鑰 + 用戶 ID 組成, 不產(chǎn)生用戶公鑰證書, 去除了公鑰證書的管理負(fù)擔(dān), 易于構(gòu)建分布式的信任權(quán)威.IBC 體制可作為 PKI 體制的補(bǔ)充, 適合需要簡單密鑰管理結(jié)構(gòu)的應(yīng)用環(huán)境, 比如傳感器網(wǎng)絡(luò)等.自Boneh 等人[3]采用雙線性對理論提出基于身份公鑰加密方案以來, IBC 體制得到廣泛研究.2007 年發(fā)布的 RFC5091[4]草案將 Boneh-Franklin(BF) 算法推薦為基于身份加密標(biāo)準(zhǔn), 標(biāo)志著 IBC 體制的標(biāo)準(zhǔn)化工作已經(jīng)開始.

      近年來, 基于身份的認(rèn)證密鑰交換 (ID-AKA) 方案也得到深入研究, 提出了許多有效和實(shí)用的方案[5–19].主要的研究成果采用類似 HMQV[20]協(xié)議的一輪 (one-round, 部分文獻(xiàn)稱為 two-message)隱式認(rèn)證密鑰交換結(jié)構(gòu), 而另一些研究者則提出通用的ID-AKA 構(gòu)造方案.一輪ID-AKA 方案具有實(shí)現(xiàn)成本低、開銷小等優(yōu)點(diǎn), 其安全性可直接規(guī)約到給定的困難數(shù)學(xué)問題和假設(shè); 通用ID-AKA 方案的可擴(kuò)展性和可移植性更好, 但其安全性往往取決于所使用的密碼學(xué)原語.文獻(xiàn) [17]對最近提出的幾種 ID-AKA方案進(jìn)行了對比分析.不過, 截止目前, 大多數(shù)的 ID-AKA 方案在 CK[21]或 eCK 模型[22]下可證明安全, 僅實(shí)現(xiàn)了弱的完美前向安全性(weak perfect forward secrecy, wPFS).

      一輪隱式認(rèn)證密鑰交換協(xié)議被認(rèn)為無法實(shí)現(xiàn)完美前向安全性[20,22].最近, Cremers 等人[23,24]對一輪隱式認(rèn)證密鑰交換協(xié)議稍加擴(kuò)展, 定義了兩消息的AKA(記為DH-2) 協(xié)議類型, 提出一種適用于DH-2類型協(xié)議的通用變換(SIG 變換).SIG 變換采納了通用構(gòu)造的思想, 可實(shí)現(xiàn)密鑰協(xié)商協(xié)議的模塊化設(shè)計(jì),將滿足eCK 安全的DH-2 協(xié)議增強(qiáng),實(shí)現(xiàn)完美前向安全性.文獻(xiàn)[16]采用了Cremers 等人[23]的方法,提出了完美前向安全的ID-AKA 方案(下面記為Xie-ID-AKA).但是, 文獻(xiàn)[24](見文獻(xiàn)[24]定理1)特別指出SIG 變換需要使用強(qiáng)不可偽造(SUF-CMA[25])的簽名算法.而Xie-ID-AKA 方案采用的Schnorr-like簽名算法[26]不具有 SUF-CMA 安全性, 不滿足 SIG 變換的要求, 并且文獻(xiàn)[16]中沒有采用 Cremers 等人[23,24]提出的安全模型對 Xie-ID-AKA 方案進(jìn)行嚴(yán)格的安全性規(guī)約.因此, 本文認(rèn)為 Xie-ID-AKA 方案不能實(shí)現(xiàn)完備的完美前向安全性.此外, Wang 等人[10]、Khatoon 等人[19]分別提出了完美前向安全的ID-AKA 方案 (分別記為Wang-ID-AKA、Khatoon-ID-AKA), 但是, 文獻(xiàn) [10,19]采用的安全模型與eCK 模型相近似, 僅模擬被動(dòng)的 wPFS 敵手.事實(shí)上, Wang-ID-AKA 方案和 Khatoon-ID-AKA 方案僅實(shí)現(xiàn)了弱的完美前向安全性.就目前掌握的文獻(xiàn)來看, 尚沒有能夠真正實(shí)現(xiàn)完美前向安全性的DH-2 類型ID-AKA 協(xié)議.

      本文的主要工作:基于 Cremers 等人[24]的研究, 提出一種完美前向安全的 ID-AKA 方案 (下文中如未特別注明, 那么均指 DH-2 類型的 ID-AKA 協(xié)議), 主要內(nèi)容分為以下三個(gè)方面.(1) 基于 Boneh 和Boyen[27]提出的強(qiáng)不可偽造的短簽名方案(下文記為BBS), 提出強(qiáng)不可偽造的基于身份簽名方案(記為ID-BBS), 并將ID-BBS 方案的安全性規(guī)約到BBS 方案的強(qiáng)不可偽造性.(2) 對Ni 等人[18]提出的eCK安全的 ID-AKA 方案進(jìn)行簡化以提高效率 (簡化后的方案記為 sN-ID-AKA), 結(jié)合 ID-BBS 方案, 采用SIG 變換方法, 將sN-ID-AKA 方案轉(zhuǎn)化為實(shí)現(xiàn)eCK-PFS[24]安全的ID-AKA 方案.(3) 結(jié)合eCK-PFS模型和ID-eCK 模型[17,28], 定義了ID-AKA 方案分析的強(qiáng)安全模型ID-eCK-PFS, 并將本文提出方案的安全性規(guī)約到ID-BBS 方案的強(qiáng)不可偽造性、以及sN-ID-AKA 方案的ID-eCK 安全性.此外, 本文對比分析了eCK-PFS 模型和eCK 模型的主要區(qū)別, 明確了eCK-PFS 模型更強(qiáng)安全性的優(yōu)勢所在.

      2 背景知識(shí)

      2.1 困難數(shù)學(xué)問題與假設(shè)

      這里簡要闡述雙線性映射理論, 及存在的困難數(shù)學(xué)問題和假設(shè), 詳細(xì)內(nèi)容請參考文獻(xiàn)[18,27].

      雙線性映射:給定大素?cái)?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的一個(gè)有效的雙線性映射, 則滿足如下性質(zhì).

      (1) 雙線性: 給定 u ∈ G1, v ∈ G2和任意的 a, b ∈ Zp, 滿足 e(ua,vb)=e(u,v)ab;

      (2) 非退化性: e(g1,g2)1;

      (3) 可計(jì)算性: 給定任意的u ∈G1, v ∈G2, 存在多項(xiàng)式時(shí)間算法能成功計(jì)算e(u,v).

      CDH (computational Diffie–Hellman) 問題:對于任意未知的 a,b ∈ Zp, 給定求解其中, i ∈{1,2}.

      CDH 假設(shè):如果不存在多項(xiàng)式時(shí)間算法在時(shí)間 t 內(nèi)以至少 ? 的概率求解 CDH 問題, 那么稱 (?,t)-CDH 假設(shè)成立.

      q-SDH(q-Strong Diffie-Hellman) 問題:給定 q+2 個(gè)元素的元組且存在同構(gòu)函數(shù) ψ(g2)=g1, 計(jì)算輸出其中, c ∈Zp.

      q-SDH 假設(shè):如果不存在多項(xiàng)式時(shí)間算法在時(shí)間 t 內(nèi)以至少? 的概率求解 q-SDH 問題, 那么稱(q,?, t)-SDH 假設(shè)成立.

      說明: 為了敘述簡潔, 本文省略了 “mod p” 運(yùn)算.

      2.2 ID-AKA協(xié)議及其安全模型

      2.2.1 ID-AKA 協(xié)議定義

      ID-AKA 協(xié)議包含系統(tǒng)設(shè)置、密鑰生成和密鑰協(xié)商三個(gè)算法.

      系統(tǒng)設(shè)置: 輸入安全參數(shù), PKG 產(chǎn)生主密鑰和公開的系統(tǒng)參數(shù).

      密鑰生成: 輸入用戶身份, PKG 產(chǎn)生基于用戶身份的長期認(rèn)證密鑰, 通過安全信道返回給用戶.

      密鑰協(xié)商: 期望建立安全信道的兩個(gè)用戶之間通過公開信道完成交互式協(xié)議, 相互認(rèn)證彼此身份, 交換會(huì)話密鑰材料, 建立共享的會(huì)話密鑰.

      2.2.2 ID-AKA 協(xié)議安全模型定義

      基于文獻(xiàn) [17,24,28]的工作, 本文將 eCK-PFS 模型擴(kuò)展到 ID-AKA 協(xié)議分析領(lǐng)域, 記為 ID-eCKPFS 模型.

      令 P = {ID1,ID2,··· ,IDN} 表示包含 N 個(gè)誠實(shí)用戶的有限集合, IDi為用戶身份標(biāo)識(shí), i ∈{1,··· ,N}.

      會(huì)話(Session): 協(xié)議實(shí)例的一次運(yùn)行被稱為一個(gè)會(huì)話.每一個(gè)會(huì)話 s 由一個(gè)確定的六元組Ts唯一標(biāo)識(shí), Ts= (sactor,speer,srole,ssent,srecv,scomp).其中, sactor,speer表示會(huì)話擁有者及會(huì)話對端實(shí)體的ID;srole表示會(huì)話擁有者在當(dāng)前會(huì)話中的角色, 要么是一個(gè)發(fā)起者 (用 I 表示), 或者是一個(gè)響應(yīng)者 (用 R 表示); ssent,srecv表示會(huì)話發(fā)送和接收的消息, scomp表示會(huì)話 s 是否已完成, scomp= T 表示會(huì)話已完成,否則 scomp=⊥ 表示會(huì)話未完成(“⊥” 表示為空, 下同).

      敵手(Adversary): 敵手被模擬為一個(gè)概率多項(xiàng)式時(shí)間圖靈機(jī), 允許執(zhí)行多項(xiàng)式有界(次) 的詢問.

      Send(s, M) 詢問: Send 詢問模擬敵手發(fā)送消息 M 到會(huì)話 s.模擬器根據(jù)協(xié)議規(guī)范返回相應(yīng)的應(yīng)答,然后更新Ts中的相應(yīng)內(nèi)容.特定地, 敵手通過發(fā)起Send(s, IDj) 詢問和 Send(s, IDj, M) 詢問分別創(chuàng)建發(fā)起者會(huì)話和響應(yīng)者會(huì)話, 并且假定speer=IDj.

      Corrupt(ID) 詢問: 如果ID ∈P, 模擬器輸出用戶 ID 的長期私鑰, 否則返回 ⊥.

      Ephemeral-key(s) 詢問: 如果 s 存在, 那么返回該會(huì)話的臨時(shí)秘密.

      Session-key(s) 詢問: 如果 s 存在, 且已完成(scomp=T), 則返回該會(huì)話的會(huì)話密鑰.

      Test(s?) 詢問: 模擬器隨機(jī)選擇 b ∈ (0,1), 如果 b = 0, 輸出隨機(jī)的 SK ←{0,1}κ, 否則輸出 s?的會(huì)話密鑰.其中, κ 為安全參數(shù).Test 詢問僅執(zhí)行一次, 且要求s?是已完成的新鮮會(huì)話, 并且在整個(gè)模擬過程中不能破壞s?的新鮮性, 否則模擬失敗.

      下面定義原始會(huì)話、匹配會(huì)話和會(huì)話新鮮性.

      定義 1 (Origin-session)如果會(huì)話 s′(可能尚未完成) 與已完成的會(huì)話 s 滿足:那么s′是 s 的原始會(huì)話, 用關(guān)系 s′→ s 表示.

      定義 2 (Matching-session)如果兩個(gè)已完成的會(huì)話 s 與 s′滿足:那么 s 與 s′互為匹配會(huì)話, 用關(guān)系 s ?s′表示.

      注意, 匹配會(huì)話是相互的, 即關(guān)系 s ? s′和 s′? s 同時(shí)成立; 而原始會(huì)話是單向的, 即關(guān)系 s′→ s和 s → s′不一定同時(shí)成立.

      定義 3 (ID-eCK-PFSfresh)如果已完成的會(huì)話s 滿足如下條件, 那么 s 滿足ID-eCK-PFSfresh.

      (1) sactor,speer是誠實(shí)的參與者;

      (2) 未執(zhí)行過Session-key(s) 詢問;

      (3) 如果存在 s??s, 則未執(zhí)行過 Session-key (s?) 詢問;

      (4) 不允許同時(shí)執(zhí)行 Ephemeral-key(s) 詢問和 Corrupt(sactor) 詢問;

      (5) 對于所有的 s′→ s, 不允許同時(shí)執(zhí)行 Corrupt(speer) 詢問和 Ephemeral-key(s′) 詢問;

      (6) 如果不存在 s′滿足 s′→ s, 那么在 s 完成之前, 不允許執(zhí)行 Corrupt(speer) 詢問.

      安全游戲 (Security Game): 安全游戲被模擬為挑戰(zhàn)者 C 與敵手 A 之間的一系列測試游戲 Game.游戲分為初始化、詢問和挑戰(zhàn)三個(gè)階段.初始化階段, 輸入安全參數(shù)κ, C 創(chuàng)建系統(tǒng)參數(shù)和用戶密鑰, 并將所有公開參數(shù)發(fā)送給A.詢問階段, A 自適應(yīng)地執(zhí)行多項(xiàng)式時(shí)間有界(次) 的詢問, 但僅能提交1 次對挑戰(zhàn)會(huì)話 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é)議滿足如下條件, 被認(rèn)為滿足 ID-eCK-PFS 安全: 1) 如果兩個(gè)誠實(shí)的參與者完成了一次匹配的會(huì)話, 那么他們必然以極大的概率計(jì)算得到相同的會(huì)話密鑰; 2) 對任意多項(xiàng)式時(shí)間敵手是可忽略的.

      2.2.3 eCK-PFS 模型與eCK 模型前向安全性比較

      下面首先回顧eCK 模型的新鮮性定義, 原定義請參考文獻(xiàn)[22]的定義2 和定義3.

      定義 5[eCKfresh]如果已完成的會(huì)話 s 滿足如下條件, 那么s 滿足eCKfresh.

      (1) sactor,speer是誠實(shí)的參與者;

      (2) 未執(zhí)行過 Session-key(s) 詢問和 Session-key(s′) 詢問 (如果 s′? s 存在);

      (3) 如果存在 s′? s , 則,

      - 不允許同時(shí)執(zhí)行Ephemeral-key(s) 詢問和 Corrupt(sactor) 詢問;

      - 不允許同時(shí)執(zhí)行Ephemeral-key(s′) 詢問和 Corrupt(speer) 詢問.

      (4) 如果不存在 s′? s , 則,

      - 不允許同時(shí)執(zhí)行Ephemeral-key(s) 詢問和 Corrupt(sactor) 詢問;

      - 在s 完成以前, 不允許執(zhí)行Corrupt(speer) 詢問; 特定地, 對于一輪密鑰交換協(xié)議, 任何時(shí)候均不允許執(zhí)行Corrupt(speer) 詢問 (參考文獻(xiàn) [22]的定義 3).

      在 eCK 模型中, 未定義原始會(huì)話.與匹配會(huì)話不同, 原始會(huì)話能區(qū)分重放消息, 強(qiáng)調(diào)會(huì)話消息的來源, 即一個(gè)會(huì)話的輸出等于另一會(huì)話的輸入.事實(shí)上, 匹配會(huì)話是原始會(huì)話的子集.表1 對 eCK 模型和eCK-PFS 模型中前向安全性進(jìn)行了對比, 其它安全性, 如密鑰泄露偽裝(KCI) 攻擊等, 兩類模型等效.其中, S1–S4 和 S1′–S2′表示安全模型能模擬的攻擊場景, TS, MS, OS 分別表示 Test 會(huì)話、匹配會(huì)話和原始會(huì)話, sk 和ek 分別表示會(huì)話擁有者的長期私鑰和臨時(shí)私鑰, ek 值等于 n 表示對應(yīng)的會(huì)話不存在, r 表示允許敵手詢問相應(yīng)私鑰, r?表示允許敵手在會(huì)話完成之后詢問相應(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 會(huì)話不存在匹配會(huì)話時(shí)的情形, 事實(shí)上 S1′包含了存在原始會(huì)話 (場景 S3 和 S4) 或不存在 (場景 S1) 兩種情形, 但是, 由于eCK 模型未定義原始會(huì)話, 因此不區(qū)分這兩種情形, 均不允許敵手詢問Test 會(huì)話中對端實(shí)體的sk (見定義5 第 (4) 條對一輪密鑰協(xié)議的補(bǔ)充定義)(注意: 根據(jù)定義, Test 會(huì)話的對端實(shí)體等于其匹配會(huì)話 (可能并不存在) 的擁有者).也就是說, 從敵手的視角來看, 場景 S1′與 S3 和 S4 等效, 而不包含 S1 (或者說, 在場景 S1 中, eCK 模型按照與 S3 和 S4 相同的方式處理).在場景 S1 中, eCK-PFS 模型允許敵手在 Test 會(huì)話完成以后詢問參與雙方實(shí)體的sk, 實(shí)現(xiàn)了模擬強(qiáng)的 PFS 安全性.此外, 從敵手的視角來看,場景 S2 與 S2′等效.

      3 完美前向安全的ID-AKA方案

      本文方案的提出分為兩步: 首先, 將 Boneh 和 Boyen[27]提出的強(qiáng)不可偽造的短簽名方案 (BBS 方案) 改造為強(qiáng)不可偽造的基于身份簽名方案(ID-BBS 方案); 第二步, 在N-ID-AKA 方案的基礎(chǔ)上提出更為簡潔高效的 sN-ID-AKA 方案, 然后采用 SIG 變換, 將其轉(zhuǎn)化為實(shí)現(xiàn) eCK-PFS 安全的 ID-AKA 方案.

      3.1 強(qiáng)不可偽造的基于身份簽名

      下面簡要描述BBS 方案.

      給定簽名者的公私鑰對: PK=(g1,g2,u,v,z),SK=(x,y).其中, g1和 g2分別是群 G1和 G2的生成元,

      BBS 簽名: 輸入待簽名消息 m ∈ Zp和用戶私鑰 SK = (x,y), 隨機(jī)選擇 r ∈ Zp, 計(jì)算輸出簽名 (σ,r).

      BBS 簽名驗(yàn)證: 收到消息 m 的簽名 (σ,r), 輸入用戶公鑰 PK = (g1,g2,u,v,z), 驗(yàn)證等式是否成立, 若等式成立則接受簽名, 否則拒絕簽名.

      文獻(xiàn) [27]證明了, 在 SUF-CMA 模型下, 如果 q-SDH 假設(shè)成立, 則 BBS 方案滿足強(qiáng)的不可偽造性.

      SUF-CMA 是對 EUF-CMA 的增強(qiáng), 是指在 EUF-CMA 安全性基礎(chǔ)上, 即使敵手獲得用戶 Alice 對消息 m 的合法簽名 σ, 也不能偽造 Alice 對消息 m 的新的簽名 σ?σ.而 EUF-CMA 模型則不能模擬該場景.

      本文改造的ID-BBS 方案包括: 系統(tǒng)建立、密鑰生成、簽名和簽名驗(yàn)證四個(gè)算法.

      系統(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 隨機(jī)選擇r1,r2∈Zp,計(jì)算q2=H2(ID,R2), x=r1+sq1,y =r2+sq2, 輸出用戶私鑰則用戶公鑰PK=(u,v,z).

      ID-BBS 簽名 (SignID-BBS): 輸入待簽名消息 m ∈G2和用戶私鑰 SK=(x,y), 隨機(jī)選擇 r ∈Zp, 計(jì)算輸出簽名 (σ,r).由于本文密鑰交換方案中需要對 G2中的成員進(jìn)行簽名, 而 BBS 簽名算法僅能對Zp中成員進(jìn)行簽名, 因此, 我們引入 Hash 函數(shù)H3.

      ID-BBS 簽名驗(yàn)證 (VerifyID-BBS): 收到消息 m 的簽名 (σ,r), 輸入用戶公鑰 PK = (u,v,z), 計(jì)算m′=H3(m), 驗(yàn)證等式是否成立, 若等式成立則接受簽名, 否則拒絕簽名.

      3.1.1 ID-BBS 方案安全性分析

      本文將 ID-BBS 方案的不可偽造性規(guī)約到BBS 方案的不可偽造性, 即, 如果存在敵手在多項(xiàng)式時(shí)間內(nèi)成功偽造一個(gè)有效的ID-BBS 的簽名, 則模擬器能輸出一個(gè)有效的偽造BBS 簽名.規(guī)約過程簡要描述如下.

      定理 1如果群 G1,G2,GT上的 q-SDH 假設(shè)成立, 且如果 BBS 簽名具有強(qiáng)不可偽造性, 那么, IDBBS 簽名方案實(shí)現(xiàn)了強(qiáng)不可偽造性.

      證明:安全性規(guī)約過程分為初始化、詢問和偽造三個(gè)階段, 包含兩類模擬器B0和B1, 以及敵手A.規(guī)約形式采用嵌套的游戲模擬方式, 外層模擬 (ID-BBS 游戲, 采用了Paterson 等人[29]提出的選擇身份安全模型) 以B0模擬器, A 為敵手, 內(nèi)層模擬(BBS 游戲, 本文不詳細(xì)描述, 參考文獻(xiàn)[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模擬為隨機(jī)預(yù)言機(jī) (ID-BBS 方案采用了與文獻(xiàn) [18]相同的基于身份密鑰生成算法, 采用Schnorr 簽名[30]生成用戶私鑰, 而Schnorr 簽名是隨機(jī)預(yù)言模型下的簽名方案, 因此外層模擬使用了隨機(jī)預(yù)言機(jī)), 其它參數(shù)如上所述.為了實(shí)現(xiàn)模擬過程的一致性, B0維護(hù)初始為空的列表L1= (ID,R1,h1),L2= (ID,R2,h2) 和LID分別記錄H1,H2詢問和用戶密鑰, 對同一詢問做出相同的應(yīng)答.

      詢問: A 自適應(yīng)地提交多項(xiàng)式時(shí)間的下列詢問.

      H1詢問: 提交 (ID,R1) 詢問, 若 (ID,R1,h1) 在 L1中已存在, 則返回 h1, 否則隨機(jī)選擇 h1∈Zp,并返回給 A, 然后將 (ID,R1,h1) 插入 L1中.

      H2詢問: 提交 (ID,R2) 詢問, 若 (ID,R2,h2) 在 L2中已存在, 則返回 h2, 否則隨機(jī)選擇 h2∈Zp,并返回給 A, 然后將 (ID,R2,h2) 插入 L2中.

      密鑰詢問: 敵手 A 提交用戶身份 IDi, 若 IDi= IDI, 則 B0終止模擬, 模擬失敗; 否則按照 IDBBS 方案的密鑰生成算法產(chǎn)生 IDi的私鑰并發(fā)送給 A, 然后將用戶密鑰信息插入 LID.注意, 密鑰生成算法中對哈希函數(shù) H1,H2的計(jì)算用 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計(jì)算 m′= H3(m), 提交 BBS 游戲的簽名詢問, 將得到的簽名結(jié)果直接輸出給 A; 否則, 通過密鑰詢問取得 IDi的私鑰, 按照 ID-BBS 簽名算法計(jì)算簽名并返回給A.

      偽造: 最后, A 提交對 ID-BBS 簽名的偽造簽名 (ID?,m?,σ?,r?).如果 ID?IDI, 則模擬失敗, 否則, B0計(jì)算 m??=H3(m?), 提交 (m??,σ?,r?) 作為對 BBS 游戲的偽造結(jié)果.

      模擬過程到此結(jié)束.顯然, 如果 A 成功偽造 ID-BBS 簽名, 則 B0也能成功偽造 BBS 簽名.令 A 成功的概率為 ?, 那么 B0成功的概率為 f(?), 其中, f(?) 為多項(xiàng)式函數(shù).

      3.2 完美前向安全的ID-AKA方案

      本節(jié)首先對 N-ID-AKA 方案進(jìn)行簡化, 提出 sN-ID-AKA 方案, 然后, 整合 ID-BBS 簽名, 提出強(qiáng)安全的 eN-ID-AKA 方案.由于N-ID-AKA 方案采用了橢圓曲線上的加法群, 為了實(shí)現(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 為素?cái)?shù)階 p 的乘法循環(huán)群, g 為群 G 的生成元, P0= gs為 PKG 的公鑰, s ∈ Zp為 PKG 的主密鑰,H1:{0,1}ID×G →Zp將身份ID 映射到Zp中的一個(gè)隨機(jī)成員, H :{0,1}?→(0,1)κ為密鑰導(dǎo)出函數(shù).

      密鑰生成: 提交用戶身份IDi,PKG 隨機(jī)選擇ri∈Zp,計(jì)算Ri=gri,qi=H1(IDi,Ri),xi=ri+sqi,輸出用戶私鑰ski=(xi,Ri); 令ui=gxi, 則用戶公鑰pki=ui.

      密鑰協(xié)商: Alice 和Bob 期望建立安全通信信道, 按照以下步驟進(jìn)行密鑰協(xié)商.

      (1) Alice 隨機(jī)選擇臨時(shí)私鑰 tA∈Zp, 計(jì)算臨時(shí)公鑰 TA=gtA, 發(fā)送 (IDA,RA,TA) 給 Bob; Bob 隨機(jī)選擇臨時(shí)私鑰 tB∈Zp, 計(jì)算臨時(shí)公鑰 TB=gtB, 發(fā)送 (IDB,RB,TB) 給 Alice.

      (2) 收到 (IDA,RA,TA) 后, Bob 計(jì)算計(jì)算會(huì)話密鑰skBA=H(IDA,IDB,TA,TB,KB).

      (3) 收到 (IDB,RB,TB) 后, Alice 計(jì)算計(jì)算會(huì)話密鑰skAB=H(IDA,IDB,TA,TB,KA).

      容易驗(yàn)證skAB=skBA, Alice 和Bob 計(jì)算得到相同的會(huì)話密鑰, 實(shí)現(xiàn)了相互的隱式認(rè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),說明: 本文采用獨(dú)立的兩組密鑰分別用于認(rèn)證和簽名以增強(qiáng)安全性, (xi1,Ri1,ui1) 用于認(rèn)證,(xi2,yi,Ri2,Ri3,ui2,vi) 用于簽名.

      密鑰協(xié)商: Alice 和Bob 按照以下步驟進(jìn)行密鑰協(xié)商.

      (1) 與 sN-ID-AKA 方案步驟 (1) 基本相同, 其中,此外, Alice 計(jì)算對 TA的簽名 σA=SignID-BBS(param,xA2,yA,TA) 發(fā)送 (IDA,RA1,RA2,RA3,TA,σA) 給 Bob; Bob 計(jì)算對 TB的簽名 σB= SignID-BBS(param,xB2,yB,TB) 發(fā)送 (IDB,RB1,RB2,RB3,TB,σB) 給Alice.

      (2) 收到(IDA,RA1,RA2,RA3,TA,σA)后,Bob 首先驗(yàn)證簽名σA,若簽名有效則按照與sN-ID-AKA方案步驟(2) 相同的方法計(jì)算會(huì)話密鑰skBA.

      (3) 收到 (IDB,RB1,RB2,RB3,TB,σB) 后, Alice 首先驗(yàn)證簽名 σB, 若簽名有效則按照與 sN-IDAKA 方案步驟(3) 相同的方法計(jì)算會(huì)話密鑰skAB.

      eN-ID-AKA 方案密鑰協(xié)商過程如圖1.

      4 分析與比較

      4.1 eN-ID-AKA方案安全性分析

      首先, 本節(jié)采用 ID-eCK 模型[17,28]對 sN-ID-AKA 方案進(jìn)行安全性規(guī)約, 然后采用第 2 節(jié)描述的ID-eCK-PFS 模型對eN-ID-AKA 方案進(jìn)行安全性規(guī)約.參照文獻(xiàn) [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 問題實(shí)例g,ga,gb∈G, 下面演示模擬器 C 利用敵手 A 求解 CDH 問題.令π 表示 sN-ID-AKA 方案, Si表示游戲 Game i 中敵手對 Test 會(huì)話猜測成功事件, 那么 Game i 中敵手成功的優(yōu)勢: ?i=|2P(Si)?1|.令N,qs分別表示游戲中創(chuàng)建的用戶數(shù)和會(huì)話數(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 考慮一些小概率的碰撞事件, 比如在不同的會(huì)話中發(fā)生臨時(shí)私鑰碰撞事件等, 當(dāng)出現(xiàn)此類事件則終止模擬, 模擬失敗.令Collπ表示上述小概率事件, 那么根據(jù)差分引理 (文獻(xiàn) [24]的 Lemma 1), 有: |P(S0)? P(S1)|≤ P(Collπ), 進(jìn)而可推導(dǎo) ?0≤ ?1+P(Collπ), 推導(dǎo)過程同文獻(xiàn) [24]定理 1.

      Game 2.在Game 1 的基礎(chǔ)上, Game 2 考慮一類較大概率的失敗事件E1.模擬開始之前, C 隨機(jī)選擇 l ∈ {1,2,··· ,qs},ID?∈ {ID1,ID2,··· ,IDN}, 令 s?表示游戲中的第 l 個(gè)會(huì)話, 并且期望敵手 A 發(fā)起會(huì)話 s?的 Test(s?) 詢問,且令 E1表示 A 發(fā)起了 Test(s′) 詢問,并且如果事件 E1發(fā)生, 則終止模擬過程, 敵手 A 輸出隨機(jī)的 b ∈(0,1).如果事件 E1不發(fā)生, 則 A 成功的概率與 Game 1 相同, 即:如果事件 E1發(fā)生, 則 P(S2|E1) = 1/2.那么:由此可推導(dǎo):

      Game 3.在 Game 2 的基礎(chǔ)上, Game 3 引入隨機(jī)預(yù)言機(jī) OH1, OH分別模擬密碼哈希函數(shù) H1,H.輸入安全參數(shù)κ, C 產(chǎn)生公開參數(shù)param=(G,g,P0), 維護(hù)初始為空的列表LID, LSK.其中, P0=ga.

      (1) A 提交 OH1詢問.如果 ID 在 LID中存在, 則輸出 qID, 否則 C 隨機(jī)選擇并輸出 qID∈Zp; 如果 ID = ID?, C 隨機(jī)選擇 rID∈ Zp, 計(jì)算 RID= grID, 將 (ID,RID,rID,⊥,qID) 插入 LID; 否則C 隨機(jī)選擇 xID∈Zp, 計(jì)算將 (ID,RID,⊥,xID,qID) 插入 LID.

      (2) A 提交OH詢問.如果 (IDi,IDj,Ti,Tj,K,SK) 在 LSK中存在, 則輸出SK; 否則隨機(jī)選擇并輸出 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?則終止游戲, 模擬失敗; 如果會(huì)話 s 已建立臨時(shí)密鑰, 則返回 s 的臨時(shí)密鑰, 否則返回 ⊥.

      (5) A 提交 Session-key(s) 詢問, 如果 s = s?∨s ? s?則終止游戲, 模擬失敗; 如果 scompT,則返回 ⊥; 如果 (IDi,IDj,Ti,Tj,K,SK) 在 LSK中存在, 則輸出 SK; 否則, 隨機(jī)選擇并輸出SK ∈{0,1}κ.其中, IDi,IDj為會(huì)話 s 中參與者身份, Ti,Tj是 s 中發(fā)送和接收的消息.

      (6) A 提交 Send(s) 詢問, C 按照下列方式作出應(yīng)答.假設(shè)sactor=IDi.

      - 如果 A 提交 Send(s,IDj) 詢問以激活發(fā)起者會(huì)話 s.如果 s = s?則令 Ti= gb, 否則 C 隨機(jī)選擇 ti∈Zp, 計(jì)算 Ti=gti, 輸出 (IDi,Ri,Ti).

      - 如果A 提交Send(s,IDj,M) 詢問以激活響應(yīng)者會(huì)話 s.如果s=s?則令Ti=gb, 否則C 隨機(jī)選擇 ti∈ Zp, 計(jì)算 Ti=gti, 輸出 (IDi,Ri,Ti), 設(shè)置 scomp=T.

      - 如果 A 提交 Send(s, M) 詢問.此時(shí), s 是一個(gè)已激活的會(huì)話, 則接受該會(huì)話, 設(shè)置scomp=T.

      (7) A 提交 Test(s?) 詢問, C 隨機(jī)選擇 SK ∈ {0,1}κ, 并返回給 A.

      (8) 最后, A 輸出其猜測 b′∈ (0,1).

      如果 A 猜測成功, 則 LSK中必然存在 (IDi,IDj,Ti,Tj,K?) 與 s?匹配.如果 s?為發(fā)起者會(huì)話, 那么 C 計(jì)算否則 s?為響應(yīng)者會(huì)話, 則計(jì)算 gab=作為對CDH 實(shí)例的回答.

      從模擬過程可以看出, 如果 A 成功, 則 C 也成功.令 A 成功的優(yōu)勢定義為 ?3, 令 C 成功的概率為則那么:

      Game 3 模擬了 ID-eCK 模型中的抗密鑰泄露偽裝 (KCI) 安全性, 而wPFS 安全性和抗臨時(shí)密鑰泄露(ESR) 安全性與此類似, 限于論文篇幅, 本文不再詳細(xì)論述, 相關(guān)內(nèi)容可參考文獻(xiàn)[17,28].

      定理 3如果群G1, G2, GT上的CDH 假設(shè)和 q-SDH 假設(shè)成立, 且如果ID-BBS 簽名具有強(qiáng)不可偽造性、sN-ID-AKA 方案滿足 ID-eCK 安全, 那么 eN-ID-AKA 方案實(shí)現(xiàn)了 ID-eCK-PFS 安全.

      證明:令π 表示sN-ID-AKA 方案, SIG(π) 表示本文提出的eN-ID-AKA 方案, Si表示游戲Game i 中敵手對Test 會(huì)話猜測成功事件, 那么Game i 中敵手成功的優(yōu)勢: ?i=|2P(Si)?1|.令N,qs分別表示游戲中創(chuàng)建的用戶數(shù)和會(huì)話數(shù)的上界.

      Game 0.Game 0 模擬多項(xiàng)式時(shí)間敵手 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 考慮一些小概率的碰撞事件, 比如在不同的會(huì)話中發(fā)生臨時(shí)私鑰碰撞事件等, 當(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 輸出隨機(jī)的 b ∈(0,1).根據(jù)差分引理[24],有: |P(S2)?P(S3)|≤P(E2).

      引理 1如果 ID-BBS 簽名具有強(qiáng)不可偽造性, 那么,是可忽略的.其中,表示算法 F 成功偽造 ID-BBS 簽名的概率.

      證明:考慮如下算法 F, 以敵手A 作為子模塊.給定N 個(gè)用戶, 并隨機(jī)選擇一個(gè)挑戰(zhàn)用戶身份ID?,F 可以訪問簽名預(yù)言機(jī) 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?的長期認(rèn)證密鑰、以及除ID?以外的其他用戶密鑰, 算法描述如下.注意, ID?的簽名驗(yàn)證公鑰從OID-BBS取得, 對應(yīng)的簽名私鑰未知.

      (1) 輸入安全參數(shù)κ, 運(yùn)行子算法A, 將公開參數(shù)param 以及N 個(gè)用戶的身份和公鑰發(fā)送給A.

      (2) A 提交Send(s,IDj) 詢問以激活發(fā)起者會(huì)話 s.此時(shí), speer=IDj, F 按以下方式進(jìn)行應(yīng)答.

      - 如果sactor=IDiID?, 那么按照協(xié)議步驟計(jì)算響應(yīng)消息(IDi,Ri1,Ri2,Ri3,Ti,σi)發(fā)送給A.

      - 如果 sactor= ID?, 那么首先按照協(xié)議計(jì)算 T?, 然后訪問預(yù)言機(jī) OID-BBS取得 ID?對 T?的簽名 σ?, 并將響應(yīng)消息發(fā)送給A.F 將記錄(ID?,T?,σ?) 插入初始為空的列表 L.

      (3) A 提交Send(s,IDj,M) 詢問以激活響應(yīng)者會(huì)話 s.F 首先驗(yàn)證消息 M 是否符合協(xié)議規(guī)范, 以及M 是否包含IDj的合法簽名; 如果驗(yàn)證不成功, 則返回⊥, 否則按以下方式進(jìn)行應(yīng)答.

      - 如果sactor=IDiID?, 那么按照協(xié)議步驟計(jì)算響應(yīng)消息(IDi,Ri1,Ri2,Ri3,Ti,σi)發(fā)送給A.

      - 如果 sactor=ID?, 那么首先按照協(xié)議計(jì)算 T?, 然后訪問預(yù)言機(jī) OID-BBS取得 ID?對 T?的簽名σ?, 并將響應(yīng)消息發(fā)送給A.F 將記錄(ID?,T?,σ?) 插入列表L.

      (4) A 提交Send(s,M) 詢問.此時(shí), s 是一個(gè)已激活的會(huì)話.F 首先驗(yàn)證消息 M 是否符合協(xié)議規(guī)范,以及 M 是否包含 speer的合法簽名.如果驗(yàn)證不成功, 則返回 ⊥; 如果 s = s?是創(chuàng)建的第 l 個(gè)會(huì)話, 且尚未完成, 如果 M 包含 ID?對 T??的合法簽名 σ??滿足 (ID?,T??,σ??)L, 則 F 直接輸出 (ID?,T??,σ??) 作為 ID-BBS 偽造簽名.

      (5) A 提交 Corrupt(ID) 詢問.如果 ID = ID?, 算法終止, 模擬失敗; 如果 IDID?, 且 ID 屬于給定的 N 個(gè)用戶, F 輸出用戶 ID 的長期私鑰 skID, 否則返回 ⊥.

      (6) A 提交 Ephemeral-key(s) 詢問.如果 s 的臨時(shí)密鑰存在, 則返回 s 的臨時(shí)密鑰, 否則返回 ⊥.

      (7) A 提交Session-key(s) 詢問, F 按以下方式進(jìn)行應(yīng)答.

      - 如果會(huì)話 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 會(huì)話存在原始會(huì)話, 那么有

      證明:Game 3 中, 如果事件 E2發(fā)生則敵手 A 輸出隨機(jī)的 b ∈(0,1), 那么: |P(S3|E2)?1/2| =|1/2 ?1/2| = 0; 如果事件 E2不發(fā)生, 則 Test 會(huì)話必然存在原始會(huì)話, 此時(shí) A 成功的優(yōu)勢為

      引理 3如果存在會(huì)話 s′是 Test 會(huì)話 s?的原始會(huì)話, 且如果 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 個(gè)用戶身份和認(rèn)證公鑰.A′生成Game 3 的公開參數(shù)param 和所有N 個(gè)用戶的簽名密鑰, 執(zhí)行如下.

      (1) 輸入安全參數(shù)κ, 運(yùn)行子算法A, 將公開參數(shù)param 以及 N 個(gè)用戶的身份和公鑰發(fā)送給A.

      (2) A 提交Corrupt(ID) 詢問.A′在中提交Corrupt(ID) 詢問, 取得ID 的認(rèn)證私鑰,并組合其簽名私鑰返回給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ā)起者會(huì)話s.則A′在中提交相同的詢問, 以激活會(huì)話 s.A′得到輸出 (IDi,Ri1,Ti).

      - 如果 A 提交 Send(s,IDj,M) 詢問以激活響應(yīng)者會(huì)話 s.A′首先驗(yàn)證消息 M = (IDj,Rj1,Rj2,Rj3,Tj,σj) 是否符合協(xié)議規(guī)范, 以及 σj是否是 IDj對 Tj的合法簽名, 如果驗(yàn)證不成功,則返回 ⊥.否則A′在中提交Send(s,IDj,M′) 詢問, 其中, M′=(IDj,Rj1Tj),得到輸出(IDi,Ri1,Ti).

      - 如果 A 提交 Send(s,M) 詢問.此時(shí), s 是一個(gè)已激活的會(huì)話.A′首先驗(yàn)證消息 M 是否符合協(xié)議規(guī)范, 以及 M 是否包含 speer的合法簽名.如果驗(yàn)證不成功, 則返回 ⊥; 否則 A′在中提交Send(s,M′) 詢問, 其中, M′=(IDj,Rj1Tj).

      - A′計(jì)算 IDi對 Ti的簽名 σi, 將 (IDi,Ri1,Ri2,Ri3,Ti,σi) 返回給 A.

      (5) A 提交Test(s?) 詢問, 則A′向提交Test(s?) 詢問, 并將得到的輸出返回給A.

      (6) 最后, A 輸出其猜測 b′∈(0,1).如果不存在會(huì)話 s 是 Test 會(huì)話 s?的原始會(huì)話, 那么 A′終止模擬, 模擬失敗; 否則A′直接輸出b′作為其對的猜測.

      模擬過程中, 如果 A 破壞了ID-eCK-PFS 新鮮性, 那么 A′終止模擬, 模擬失敗.

      如果模擬成功完成,則存在會(huì)話s′是Test 會(huì)話s?的原始會(huì)話,根據(jù)本文2.2.3 節(jié)的分析,此時(shí)Game 3 模擬表1 中的場景 S2、S3 和 S4, 而場景 S2 和 S3/S4 分別與 eCK 模型中的場景 S2′和 S1′等效.因此, 如果Game 3 成功完成,也必然成功完成.由模擬過程可知, 如果A 猜測成功, 則A′也成功, 顯然 A′成功的優(yōu)勢為:那么:

      4.2 協(xié)議對比分析

      表2 對幾種前向安全的ID-AKA 協(xié)議進(jìn)行了對比分析, 安全性方面列舉了抗密鑰泄露偽裝(KCI)、臨時(shí)密鑰泄露抵抗(ESR) 和完美前向安全(PFS) 三個(gè)主要的安全屬性, 計(jì)算開銷方面主要列舉了單個(gè)實(shí)體的雙線性對運(yùn)算 (用 P 表示)、模指數(shù)運(yùn)算 (用E 表示) 和點(diǎn)乘運(yùn)算 (用 M 表示) 次數(shù).

      表2 相關(guān)ID-AKA 協(xié)議比較Table 2 Comparison of related ID-AKA protocols

      安全性方面, N-ID-AKA 方案僅實(shí)現(xiàn)了弱的完美前向安全, 文獻(xiàn)[10,19]雖然聲稱其提出的方案實(shí)現(xiàn)了完美前向安全, 但是其安全模型僅模擬被動(dòng)的 wPFS 敵手, 安全性規(guī)約過程中, 在 Test 會(huì)話 s?完成以前, 不允許敵手主動(dòng)地向 s?注入他所選定的臨時(shí)秘密參數(shù).事實(shí)上, Wang-ID-AKA 方案和Khatoon-ID-AKA 方案僅實(shí)現(xiàn)了弱的完美前向安全性.與本文方案相似, Xie-ID-AKA 方案采用了 Cremers 等人提出的 SIG 變換方法, 但是該方案沒有給出完備的安全性證明.相比本文采用的 ID-BBS 簽名機(jī)制,Xie-ID-AKA 方案采用的 Schnorr-like 簽名存在兩個(gè)弱點(diǎn), 第一, Schnorr-like 簽名僅實(shí)現(xiàn)了 EUF-CMA安全, 不滿足SUF-CMA[25]安全性, 第二, 當(dāng)簽名采用的臨時(shí)秘密泄露, 將導(dǎo)致長期認(rèn)證私鑰泄露.因此,Schnorr-like 算法并不滿足 SIG 變換對簽名算法的要求 (見文獻(xiàn) [24]定理 1).表2 中, 我們用 “PFS*” 表示Xie-ID-AKA 方案所實(shí)現(xiàn)的完美前向安全性.顯然, PFS* 強(qiáng)于wPFS, 但弱于PFS.

      從計(jì)算性能來看, Wang-ID-AKA 方案、N-ID-AKA 方案和Khatoon-ID-AKA 方案未使用簽名算法,Xie-ID-AKA 方案采用Schnorr-like 簽名算法, 具有較好的計(jì)算性能.本文方案的認(rèn)證過程在N-ID-AKA方案的基礎(chǔ)上進(jìn)行了優(yōu)化, 但是由于采用了強(qiáng)不可偽造簽名, 總體計(jì)算開銷仍稍高于其它4 種方案.進(jìn)一步優(yōu)化有賴于提出更高效、且具有SUF-CMA 安全性的基于身份簽名機(jī)制.

      5 結(jié)束語

      本文提出一種強(qiáng)安全的 ID-AKA 協(xié)議, 在 eCK 安全的基礎(chǔ)上進(jìn)一步實(shí)現(xiàn)完美的前向安全性.本文首先對 Boneh 和 Boyen 提出的 BBS 簽名方案進(jìn)行改造, 提出基于身份的 ID-BBS 簽名方案, 具有強(qiáng)不可偽造性; 然后, 以 N-ID-AKA 方案為基礎(chǔ)進(jìn)行簡化, 降低計(jì)算開銷, 采用 ID-BBS 算法對會(huì)話臨時(shí)公鑰進(jìn)行簽名, 提出具有更強(qiáng)安全性的 ID-AKA 方案.新方案能防止攻擊者在密鑰協(xié)商階段注入由其選擇的臨時(shí)秘密信息, 實(shí)現(xiàn)了完美前向安全性.此外, 本文對比分析了 eCK-PFS 模型和 eCK 模型的主要區(qū)別, 結(jié)合 eCK-PFS 模型和 ID-eCK 模型, 定義了ID-AKA 方案分析的強(qiáng)安全模型 ID-eCK-PFS, 并基于ID-eCK-PFS 模型對本文提出方案的安全性進(jìn)行了規(guī)約證明.對比分析表明, 本文提出的 ID-AKA 方案具有更強(qiáng)的安全性, 而計(jì)算開銷也在可接受的范圍之內(nèi).

      在一輪隱式認(rèn)證密鑰交換協(xié)議基礎(chǔ)上采用 SIG 變換能實(shí)現(xiàn)完美前向安全性, 且具有通用認(rèn)證方案的優(yōu)點(diǎn), 使得協(xié)議設(shè)計(jì)更加靈活.但是, 簽名算法的使用將隱式認(rèn)證變?yōu)榱孙@示認(rèn)證, 且在一定程度上增加了原方案的計(jì)算開銷.那么, 能實(shí)現(xiàn)完美前向安全性的一輪隱式認(rèn)證密鑰交換協(xié)議仍然是一個(gè)開放性的問題.

      猜你喜歡
      敵手會(huì)話私鑰
      比特幣的安全性到底有多高
      基于改進(jìn)ECC 算法的網(wǎng)絡(luò)信息私鑰變換優(yōu)化方法
      不帶著怒氣做任何事
      一種基于虛擬私鑰的OpenSSL與CSP交互方案
      有意冒犯性言語的會(huì)話含義分析
      漢語教材中的會(huì)話結(jié)構(gòu)特征及其語用功能呈現(xiàn)——基于85個(gè)會(huì)話片段的個(gè)案研究
      沖突語的會(huì)話分析研究
      對外漢語課堂英語通用語的會(huì)話調(diào)整功能
      LeeB私鑰分發(fā)協(xié)議的改進(jìn)方案
      不帶著怒氣作戰(zhàn)
      新平| 万宁市| 涟源市| 嘉祥县| 东兴市| 威宁| 射洪县| 赤城县| 镇雄县| 泰州市| 福贡县| 宜州市| 舟曲县| 鄯善县| 洪泽县| 贡山| 嫩江县| 教育| 丰镇市| 茂名市| 上饶县| 株洲市| 瓮安县| 高雄县| 和顺县| 咸宁市| 红河县| 黎平县| 梧州市| 东乌珠穆沁旗| 高雄县| 德庆县| 景泰县| 淳安县| 高平市| 开平市| 东明县| 大荔县| 麻城市| 宁蒗| 故城县|