999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于教育區塊鏈與無證書簽名的身份認證方案①

2022-05-10 12:12:08王曉欣陳志德
計算機系統應用 2022年3期
關鍵詞:用戶

王曉欣,陳志德

1(福建師范大學 計算機與網絡空間安全學院,福州 350117)

2(福建師范大學 福建省網絡安全與密碼技術重點實驗室,福州 350007)

隨著云計算技術和互聯網技術的不斷發展,在教育領域,教育云平臺已經成為了實現教育信息化的重要方式,而教育信息化的發展程度更是成為了衡量一個國家教育現代化程度的重要標志[1].教育云平臺可以為用戶提供方便快捷的教育資源和服務,但是也帶來了一些問題.首先,為了訪問不同平臺的資源,用戶需要注冊多個平臺,這使得一旦一個平臺泄露用戶信息,用戶在其他平臺的數據也可能會威脅;另外大部分平臺采用中心化的管理方式,平臺抵抗惡意攻擊的能力差,用戶隱私數據也容易泄露;最后,對于用戶來說,管理多個賬號信息也比較麻煩.針對以上問題,可以讓同區域的教育云平臺構建區域教育網絡,讓用戶注冊一個賬號就可以訪問本域和權限范圍內的異域教育平臺的資源.為了保證用戶隱私安全,因此需要在區域教育網絡中建立一種安全、可跨域的身份認證方案.

目前,在云環境中常用身份認證方案有以下幾種:1)基于公鑰基礎設施(public key infrastructure,PKI)的身份認證方案[2];2)基于無證書的公鑰密碼體制認證方案[3,4];3)基于代理盲簽名的認證方案[5].其中文獻[2]改進了傳統的PKI,設計了輕量型的PKI 身份認證方案,但是證書驗證過程復雜.文獻[3]和文獻[4]則是引入無證書密碼體制來解決了PKI 體系中的證書問題,其中文獻[3]通過無對運算的聚合簽名實現高效的批認證,提高認證效率,但未解決雙向認證的問題;文獻[4]利用便攜式TPM (portable trusted platform module,PTPM)實現任意終端與云端的雙向認證,但是未解決跨域認證問題.在文獻[5]提出了代理盲簽名的異構身份認證方案,解決了異構跨域身份問題,但該方案中需要引入可信第三方,一旦可信第三方遭受攻擊便會對用戶造成巨大損失.

區塊鏈技術作為一種新興的技術,具有匿名性、去中心化、不可篡改、可追溯的特性,因此在身份認證領域地吸引了大量學者進行研究.文獻[6]提出了一種基于區塊鏈的分布式物聯網設備認證框架,解決了集中式認證兼容性低和單點故障的問題,但未解決跨域認證的問題.文獻[7]提出了一種基于區塊鏈的高效跨域認證方案,解決了跨域認證問題,并可以實現高效的身份認證,但不能進行異構的身份認證;文獻[8]提出了一種基于區塊鏈的跨異構的認證方案,解決了異構的跨域認證,但是該方案只能針對基于PKI的信任域和基于身份密碼體制的信任域的異構跨域認證.文獻[9]設計了一種基于可編輯區塊鏈的身份認證方案,解決了跨域認證問題,但是該方案需要網絡供應商的參與,方案實施比較困難.

本文針對多區域教育網絡的身份認證問題,提出了一種基于教育區塊鏈和無證書簽名的身份認證方案.首先給出了身份認證模型,通過建立本地鏈和跨域鏈,來實現用戶訪問本地資源的本域身份認證和訪問其他域的跨域身份認證.利用無證書簽名算法和用戶身份證明來設計身份認證的具體過程,保證了用戶的安全也解決了密鑰托管問題;通過設置陷門哈希,當有惡意節點出現時,便可以追溯到真實的惡意用戶.本方案在安全性上實現了用戶身份的匿名性,以及用戶和機構的雙向認證,可以抵擋多種安全攻擊.在性能上,與其他方案相比,用戶的計算開銷較少,簽名過程也比較簡單.

1 相關知識

1.1 區塊鏈技術

區塊鏈最早是由中本聰在2008年的論文“Bitcoin:A peer-to-peer electronic cash system”[10]中提出的.在2009年,中本聰建立了比特幣網絡,并開發了其第一個區塊,名為創世區塊.區塊鏈技術具備去中心化、可追溯、不可篡改等優勢.根據準入機制的不同,區塊鏈可以分為3 類:公有鏈、聯盟鏈和私有鏈.其中公有鏈任何人都可以讀取,所有數據默認公開,但交易速度慢;私有鏈將區塊鏈的寫入權限僅僅在一個組織或者個人手里,具備交易速度快、安全性更高但是中心化程度更高;聯盟鏈是介于公有鏈和私有鏈之間的區塊鏈,一般指若干機構或者組織共同參與管理的區塊鏈,其交易速度比公有鏈快,去中心化程度比私有鏈好.在本方案中,我們域內區塊鏈和跨域區塊鏈都是聯盟鏈.

1.2 無證書簽名體制

在2003年,Al-Riyami 等人提出了無證書的密碼體制CL-PKC (certificateless public key cryptography,CL-PKC)[11].在該密碼體制中其中用戶的私鑰是由密鑰生成中心KGC (key generation center)生成的部分私鑰和用戶秘密值的組合.因此,CL-PKC 解決了密鑰托管問題.對于無證書簽名來說,一般包含以下6 個算法[12]:系統初始化、部分私鑰生成、秘密值的生成、用戶公私鑰生成、用戶簽名算法生成、簽名驗證.

在本方案中,用戶的部分密鑰生成算法、秘密值的生成以及用戶公私鑰的生成均在用戶注冊過程中完成.

1.3 困難問題及假設

橢圓曲線離散對數問題(elliptic curve discrete logarithm problem,ECDLP):給定一個橢圓曲線群G,且P,Q∈G,找到一個標量點a∈ZP,滿足Q=aP,其中,P是群G的生成元,Q是G中的一個元素.

2 基于教育區塊鏈身份認證模型的設計

在本節介紹了基于教育區塊鏈的身份認證模型的模型假設、身份認證模型以及設計目標.

2.1 模型假設

(1)整個系統中的每一個節點都有唯一分配的地址,對應其真實ID;

(2)假設方案初始化的階段是安全的;

(3)權威節點是教育局等權威機構,具備完備的安全性;

(4)權威節點和機構節點都具備一定的存儲和計算能力;

(5)用戶可以下載機構節點和權威節點的公鑰和身份.

2.2 教育區塊鏈身份認證模型

基于教育區塊鏈的身份認證方案,設計了域內聯盟鏈以及跨域聯盟鏈兩種類型的區塊鏈.域內區塊鏈負責本域內用戶對域內的機構進行訪問時的身份認證;跨域區塊鏈在身份認證中負責用戶對跨機構進行訪問時的身份認證.

該模型有3 種類型的參與者:普通用戶、機構、權威部門.其中跨域區塊鏈由教育局這樣的權威部門構成權威節點來進行維護,普通用戶以及機構節點可以查看區塊鏈中的信息;域內區塊鏈主要由本域的機構節點來維護賬本信息,本域內的普通用戶節點只有查看的權限.模型架構圖如圖1所示.

圖1 基于區塊鏈的多域身份認證模型

權威節點:主要負責機構節點的身份注冊以及為合法的跨域用戶頒發跨域身份證明,并將跨域用戶的信息進行上鏈處理.

機構節點:主要包括學校、教育機構等,他們負責幫助普通用戶節點完成注冊,并將域內合法用戶的注冊信息寫入到域內聯盟鏈中.

普通節點:主要由學生、教師等組成.他們是機構節點的用戶,教育資源的擁有者和使用者.

2.3 設計目標

在教育云場景中用戶的身份隱私安全有比較高的需求,設計了以下幾個目標.

去中心化:針對目前教育資源共享平臺大多采用集中式的管理方式,這使得用戶的隱私數據很容易被第三方掌控,一旦第三方被攻擊,很有可能會造成用戶在各個平臺數據的泄露.

用戶身份安全:教育資源共享平臺往往掌握大量用戶數據,為了保證用戶的隱私安全,采用匿名的用戶身份,并且讓用戶私鑰掌握在自己手中.

相互認證:在用戶注冊以及認證過程,不僅僅限于機構對用戶進行認證,用戶同樣也對機構進行認證.雙向認證可以提高用戶的信任,增加用戶的使用率.并且可以及時發現用戶或者機構的惡意行為.

惡意用戶追溯:針對教育資源共享時,用戶量大.確保當系統中出現惡意用戶時,可以及時將惡意用戶記錄在本域和跨域區塊鏈上,并且不再為該用戶服務.這樣可以防止惡意用戶在其他機構節點進行再次注冊,同樣也可以避免惡意節點占用通信資源.因此本方案的設計目標可以實現惡意用戶節點的可追溯,從而追溯到真正的用戶,防止其惡意行為的再次發生.

3 跨域-追溯認證方案

本節介紹了基于教育區塊鏈的身份認證方案的具體細節,包含方案總述、具體方案兩部分.

3.1 方案總述

在本方案中,我們采用通過區塊鏈技術來實現分布式的身份認證,并根據文獻[3],設計無雙線性對的無證書認證方案,來提高認證的效率.

該方案包含初始化階段、注冊階段、認證階段、惡意節點追溯階段4 個階段.

(1)初始化階段.初始化階段主要生成全局參數以及權威節點的公私鑰.

(2)注冊階段.包含機構注冊和用戶注冊兩部分.用戶通過域內聯盟鏈的機構節點完成用戶注冊.跨域區塊鏈的權威階段主要完成對機構節點的注冊.

(3)認證階段.包含域內認證和跨域認證.對用戶和機構進行雙向身份認證,從而保證雙方訪問的安全性.

(4)惡意節點追溯階段.對于出現惡意節點,通過查詢區塊鏈中的注冊信息追溯惡意節點,將惡意節點信息寫入到聯盟鏈中.

3.2 具體方案

(1)初始化階段

初始化階段為系統生成全局參數進行廣播,每個權威節點也生成各自的公私鑰對,然后將他們各自公鑰和權威節點身份上傳到域間區塊鏈.

KGC作為全局的參數生成中心,首先,隨機選擇一個安全參數k∈Z+作為輸入;然后KGC會選擇一個橢圓曲線上的加法群G,素數q,并且P是G的生成元.再選擇3 個抗碰撞的哈希函數Hi:{0,1}*→Zq*(i=1,2,3).最后廣播系統參數params={G,q,P,H1,H2,H3}.

對于每一個權威節點AIDi,隨機選擇數yi∈Zq*,并計算其公鑰PKi=yiP,私鑰為SKi=yi,并廣播到跨域區塊鏈上{AIDi,PKAIDi}.

(2)注冊階段

注冊階段包含機構的注冊以及用戶的注冊.當注冊完成將會把它們的公鑰以及身份信息分別上傳到跨域區塊鏈以及用戶所在的域內區塊鏈,并且注冊節點會為注冊的機構和用戶生成身份證明,如表1.

表1 身份證明

1)機構節點的注冊

機構節點注冊需要經過權威節點對其進行身份驗證,驗證通過便完成機構節點注冊,然后權威節點將注冊信息上傳到區塊鏈中.機構注冊流程圖如圖2所示.

圖2 機構注冊流程圖

①IDi向AIDj發送注冊申請

機構IDi先下載權威節點AIDj的公鑰,然后生成時間戳treg以及隨機數N1向本域的權威節點發送注冊請求

②AIDj回復IDi的注冊請求

權威節點AIDj先檢查treg是否合理.解密消息之后,檢驗treg是否一致,然后查詢域間的區塊鏈上是否存在該機構.如果存在則返回re ject拒絕機構的注冊申請;如果IDi不存在則允許機構用戶進行注冊,并為IDi生成部分私鑰和部分公鑰.首先,權威節點AIDj的KGC為其隨機選擇隨機數ri∈Zq*,然后計算h1,i=H1(AIDj,IDi,Ri),從而為機構IDi生成部分公鑰Ri=riP和部分私鑰di=(ri+yjh1,i)modq.AIDj通過安全通道發送給IDi帶有其部分公私鑰并允許機構注冊的回復rep_reqAIDj(H2(IDi||AIDj||N1),treq,Ri,di).

③IDi生成公私鑰并將公鑰發送給AIDj

機構用戶IDi接收到消息先檢查treq是否合理,然后驗證H2(IDi||AIDj||N1)的正確性.如果驗證不通過則用戶返回error,若想需要重新提交信息注冊.若驗證通過,機構節點IDi隨機選取一個隨機數xi∈Zq*,計算Xi=xiP和h2,i=H2(AIDi,IDi,Xi),計算部分公鑰Qi=Ri+Xih2,i.隨后IDi生成計算自己的公鑰PKIDi=(Qi,Xi)和私鑰信息S KIDi=(di,xi).然后IDi生成自己的簽名信息,先隨機選擇一個ui∈Zq*,計算Ui=uiP和h3,i=H3(IDi||PKi||t),生成簽名 δIDi=ui+(di+xih2,i)h3,imodq,其中t是機構簽名時間.然后IDi向AIDj發送帶有簽名和其公鑰的回復消息m={PKIDi,IDi,En(t,δIDi,Ui)PKIDi}.

④AIDj為IDi生成身份證明并將其注冊信息上鏈

AIDj解密消息,提取出{t,δIDi,Ui}.先計算h3,i=H3(IDi||PKi||t).驗證機構IDi的簽名是否滿足:Ui+h3,i(Qi+PKAIDih1,i).等式成立即代表對用戶身份驗證通過,為其生成身份信息.首先獲取當前時間ttemp,并計算T1=H1(AIDi||PKAIDi||t).然后生成簽名δAIDj=(rIDi+yiH1(IDi||AIDj))T1.然后為機構注冊節點IDi頒發它的身份證明{En(certIDi)pkIDi,ttemp}.

最后,IDi解 密消息先時間戳ttemp,之后保存身份證明certIDi.權威節點AIDj然后將機構IDi注冊信息{IDi,PKIDi,H1(IDi||AIDj)}上傳到區塊鏈中.

2) 普通用戶的注冊普通用戶的注冊需要經過機構節點對其進行身份驗證,驗證通過之后機構節點將注冊信息上傳到區塊鏈.普通用戶的身份注冊流程如圖3所示.為了保護用戶的身份信息,規定用戶ui的身份為idi=hash(ui||IDi).注冊具體過程如下.

圖3 用戶注冊流程圖

①idi向IDj發送注冊申請

用戶idi先下載注冊機構IDj的公鑰PKIDj,然后生成時間戳treg以及隨機數N1.然后向IDj發送注冊申請

②IDj回 復idi的注冊請求

機構節點IDj先解密消息之后,檢查treg是否合理,再查詢域間的區塊鏈上是否存在該用戶.如果存在該用戶則返回reject拒絕該用戶的注冊申請;如果idi不存在則允許用戶ui注冊,為它生成其部分私鑰和部分公鑰.首先機構節點先生成隨機數vi∈Zq*,計算出用戶的部分公鑰Vi=viP.然后計算h1,i=H1(IDj,idi,Vi)再計算得到用戶的部分私鑰bi=(vi+xjh1,i)modq.通過安全信道發送回復rep_reqIDj(H2(idi||IDj||N1),t1,Vi,bi)給用戶.

③idi生成公私鑰并將公鑰發送給IDj

機構用戶idi接收到消息先檢查t1是否合理,然后驗證H2(idi||IDj||N1)的正確性.如果驗證不通過則用戶返回error,若想繼續注冊則更換其他機構節點進行注冊.驗證通過后,用戶idi提 取出部分公鑰Vidi和部分私鑰didi.然后idi生成隨機數oi∈Z*p,計算出用戶ui部分公鑰Oi=oiP,隨后計算h2,i=H2(IDj,idi,Oi),然后計算Ci=Vi+Oih2,i,生成公鑰pkidi=(Ci,Oi)和私鑰skidi=(oi,bi).然后用戶idi隨機選擇一個數ei∈Z*p并計算Ei=eiP和h3,i=H3(idi||pki||t2),生成簽名信息σidi=ni+h3,i(bi+oih2,i)modq,其中t2是用戶簽名時間.發送消息m={pkidi,idi,En(t2,σidi,Ei)PKIDj}給IDj.

④IDj為idi生成身份證明并將其注冊信息上鏈.

機構IDj接收到消息m,解密消息得到{t2,σidi,Ei}然后驗證用戶idi簽名的有效性.首先,IDj計算h3,i=H3(idi||pkidi||t2),然后用下面等式驗證用戶簽名σidiP=?Ei+(Qi+Xjh1,i)h3,imodq.若等式不成立用戶公鑰有誤,要求用戶重新發送帶有公鑰信息的簽名消息.若等式成立,則用戶注冊成功.機構為用戶idi生成身份信息midi={idi,pkidi,IDj,Tbegin,Tend,Areaidi},其中Tbegin是機構為用戶生成身份信息的時間,Tend是失效時間.先生成隨機數si∈Z*p,計算S=siP,再計算T2=H1(IDj||PKIDj||midi),為用戶idi計算出身份證明中的簽名σIDj=s+(dj+xjH2(AIDi,IDi,Xi))T2.然后,為idi生成它的身份證明certidi={midi,σIDj}.

最后IDj將{En(certidi)pkidi,T} 發送給注冊用戶idi,并將該用戶注冊信息 {idi,pkidi}上傳到域間區塊鏈上.用戶驗證時間戳之后,解密消息并保存身份證明certidi.

(3)域內認證過程

用戶注冊成功,就成為了本域的合法用戶,可以與其他節點進行通訊.域內進行訪問時,只需要通過域內機構節點的參與下完成用戶和機構的雙向身份認證即可.

當用戶a對域內的機構B進行訪問時,需要對完成a和B之間的雙向認證.首先,a發送訪問請求給機構Bacc-connecta(En(ida,IDB,certida)PKIDB,ida).機構B收到請求之后,用自己的私鑰解密加密信息,驗證ida的一致性,然后域內區塊鏈來驗證身份證明.在機構B發送回復acc-connectB(En(IDB,ida,certIDB)PKida,IDB)給用戶a,用戶用自己的私鑰解密加密消息,驗證ida的一致性,然后將身份證明certida交由域內區塊鏈驗證證明的有效性.對以用戶ida證明驗證的流程如下.

1)首先查看證明里面的消息m,檢查用戶a信息;

2)驗證用戶a注冊的機構節點A簽名的正確性;

3)若全部驗證成功,則返回accept,否則返回reject;

對機構B的身份證明驗證同上,當雙方均收到accept則雙方身份驗證成功.

算法1.對用戶ida的身份證明進行驗證過程如下:

其中在驗證用戶a的身份證明中的簽名時,首先計算T=H1(IDA||PKIDA||mida),然后檢查是否滿足下式:

算法1.用戶身份證明域內驗證certida IDB輸入:、輸出:accept or reject Begin// pb is an intra-blockchain(Equal(Areaa,AreaB)=flase)If then Return reject;(UserExits(ida,PB)=flase)If then Return reject;(NodeExits(IDA)=flase)If then Return reject;(ValidTime(Tbegin,Tend)=flase)If then Verify-sig(ξIDA)=false If ()Return reject;Else return accept;End

算法2.對機構IDB的身份證明進行驗證過程如下:

在驗證機構B的身份證明中的簽名時,首先計算T=H(AIDB||PKAIDB||mIDB),然后檢查是否滿足下式:

?

(4)跨域認證過程

在跨域身份認證過程,用戶提出跨域申請,然后權威節點為用戶頒發跨域身份證明.表2是用戶跨域身份證明格式.

表2 用戶跨域身份證明

用戶跨域的主要包含:用戶跨域身份證明的申請、用戶申請跨域訪問兩部分,其中前者主要為用戶生成用戶跨域證明,而后者主要完成雙方的身份認證.

1)用戶申請跨域身份證明

①ida發送跨域申請給AIDA

用戶ida想要請求異域機構時的服務的時候,先下載權威機構AIDA的公鑰,再發送給它注冊請求.

②AIDA為用戶生成跨域身份

權威節點AIDA用私鑰解密解密消息之后,先檢查時間戳T是否合理,若合理將身份證明certida發送給域area1進行驗證,否則則返回reject.

若身份驗證成功則為用戶ida生成跨域身份證明crocerta={ida,PKida,AIDA,Tbegin,Tend,ξAIDA}其中,令m={ida,PKida,Tbegin,Tend,AIDA},然后隨機生成隨機數wa∈Z*p,并計算Wa=waP,隨后計算用戶跨域證明中的簽名 ξAIDA=yAIDAH1(AIDA||ida||T)+wa,其中T是允許訪問的時間.然后將消息 {En(crocerta,Wa)pkida,T}給用戶ida.

最后并將用戶的跨域信息上傳到區塊鏈上{ida,pkida,AIDA}.而用戶ida接收到消息之后,用自己的私鑰解密消息之后,保存{crocerta,Wa}.

2)用戶跨域訪問

① 當用戶ida要訪問異域的機構ID1_B時,先在跨域區塊鏈中下載它的公鑰PKID1_B,再給異域機構發送訪問請求acc_req(En(crocerta,Wa,ida,t)PKID1_B).

② 機構ID1_B收到訪問請求后,先用私鑰S KID1_B解密消息,檢查時間t和ida是否合理.若一致發送acc-rep(En(ID1_B,ida,certID1_B,T)PKida) 給ida,同時將{crocerta,Wa,ida}發送給跨域區塊鏈,讓跨域區塊鏈驗證ida的身份.身份驗證成功,跨域區塊鏈會生成accpet;否則返回false.

③ 用戶ida收到ID1_B的消息后,用自己的私鑰解密,驗證時間戳T是否合理,ID1_B是否正確.若均通過驗證,用戶便將 {ID1_B,certID1_B}交由跨域區塊鏈對ID1_B進行身份認證.

④ 若跨域區塊鏈對ida的跨域身份證明和ID1_B的身份均驗證成功,則分別向雙方返回accept;若一方身份驗證未成功,則分別對應返回reject.

算法3.跨域身份認證crocerta ID1_BWa輸入:、、輸出:accept or reject Begin// PB is an cross-blockchain(UserExits(ida,PB)=flase)If then Return reject;(NodeExits(AIDA)=flase)If then Return reject;(ValidTime(Tbegin,Tend)=flase)If then Verify-sig(ξAIDA)=false If ()Return reject;Else return accept;End

其中驗證的AIDA簽名ξAIDA,先計算H1(AIDA||ida||T),驗證下列等式是否成立:

若上述認證算法執行完畢,輸出accept,則對跨域用戶ida完成了身份認證;否則輸出reject,則對tda身份認證失敗.

在跨域認證中,除了驗證節點變成了權威節點,對于機構ID1_B的身份認證算法基本與域內算法一致,這里就不再陳述.

(5)惡意用戶追溯

當出現惡意用戶的時候,惡意用戶可能會將自己的私鑰泄露給別人,和其他惡意用戶發動共謀攻擊;或者進行重放攻擊占用通信資源.機構節點監測到用戶出現上述惡意行為時,將會通過共識機制和各個機構節點達成共識,然后通過查詢區塊鏈中的注冊信息,讓該用戶的注冊節點追溯用戶真實身份,然后觸發智能合約將用戶真實身份寫入區塊鏈中.惡意用戶真實身份信息記錄在區塊鏈上,可以避免惡意用戶更換注冊節點,進行身份再注冊.

對于惡意用戶,機構節點無法知道用戶的真實身份信息,僅僅知道其“假身份”ida是惡意的,被訪問的機構節點通過查詢區塊鏈上的信息 {ida,pkida,IDB},然后各個節點通過達成對ida真實身份的追溯的共識,然后ida的注冊節點IDB將在本機構注冊的全部用戶的ui帶入到式子ida=?H(ui||IDB) (i=1,···,N),其中N為在該機構進行注冊的用戶數量.直到找到us滿足上述等式,便找到了惡意用戶us,各個節點對于結果達成一致共識之后,便可以將惡意用戶真實信息上傳到區塊鏈中,實現惡意用戶的記錄.當然對于可能誤判的或者可能被竊取的惡意用戶,用戶可以向權威部門進行申請,然后權威部門將惡意記錄進行消除.將惡意節點記錄在區塊鏈中一方面可以約束用戶的行為,另一方面可以防止惡意用戶的再注冊,避免浪費計算資源和通信資源.

4 方案分析

本節主要對本方案與文獻[4,13,14]在安全性、計算開銷和通信開銷等方面進行分析和比較.

4.1 安全分析

在本節對方案進行了安全性的分析,并與其他方案進行比較,比較結果見表3.

表3 安全性屬性比較

1)身份安全

在本方案中,用戶進行訪問時,采用的身份是hash(ui||IDj)的虛擬身份,用戶的公鑰PK、私鑰SK都是由用戶自己生成的.權威節點對機構進行身份認證,用戶由機構節點進行認證,并分別為他們的身份證明進行簽名,確保身份的有效性.權威節點對注冊機構、機構節點對注冊用戶將他們的注冊信息分別上傳到域間區塊鏈、跨域區塊鏈上,因此任何敵手都不能篡改.每一個合法的機構和用戶的(PK,SK)都是基于離散對數困難問題生成的,對于任何一個概率多項式時間的敵手都不能根據公鑰或者加密消息計算出私鑰.在本方案中用戶和機構的私鑰由用戶自己生成,用戶只使用私鑰解密消息和簽名,用戶私鑰只掌握在自己手里.

2)雙向認證

在用注冊過程,無論是用戶注冊還是機構的注冊都實現了用戶與機構的雙向身份認證、機構與權威節點的雙向的身份認證.在域內和跨域過程中通過區塊鏈驗證用戶和機構的身份證書,實現了用戶對訪問機構的身份認證,以及被訪問機構對用戶的身份認證.

3)數據完整性

區塊鏈作為一種分布式賬本技術,其中每一個區塊鏈節點都會保存完整的區塊鏈信息,一旦某個節點出現的區塊信息出現缺失,可以通過更新區塊信息,保證本地的賬本信息與其他節點一致.從而保證節點中的區塊信息的完整性,也避免了惡意攻擊篡改部分節點中的信息,實現了區塊鏈系統中的數據完整性.

4)分布式拒絕服務攻擊

區塊鏈的去中心化以及點對點的交互,即使有一個或者少部分節點失效,其余節點也不會受其影響,并且如果需要的話在多個節點中會有一個合法節點取代失效節點工作;惡意節點的操作也不會在共識階段通過.因此本方案可以抵抗分布式拒絕服務攻擊.

5)重放攻擊

在本方案中,對消息添加時間戳以及采用提問、應答方式.即使敵手截獲了之前的消息,目標服務器通過檢查消息的新鮮性也會拒絕為敵手提供服務.

6)內部攻擊和外部攻擊

外部攻擊者即使獲取了權威機構的公鑰或者機構的公鑰,但是也無法計算出來用戶的私鑰.對于內部攻擊者來說,僅僅根據用戶的公鑰也無法計算出其私鑰.因此本文提出的方案能夠有效地抵抗外部攻擊和內部攻擊.

7)女巫攻擊

在本文的涉及方案中,每一個用戶在網絡中都有一個唯一標識ID,通過使用機構注冊節點的信息生成唯一的標識,并且在每次通信之前都會對用戶信息進行身份認證,認證在域內聯盟鏈或者域間聯盟鏈中進行,因此攻擊者無法偽裝網絡中的合法節點與其他節點進行通信.

以上是對本方案的安全性分析,與近幾年的跨域方案相比較,從表3可以看出,本方案在安全性上的優越.在安全性上,本方案通過區塊鏈技術解決了認證過程中中心化可能帶來的單點故障等問題;引入無證書簽名解決了密鑰托管的問題;設計時間戳機制,解決了重放攻擊;在方案的各個階段也都進行了通信雙方的身份認證,實現了雙向的相互認證;通過無證書機制,讓用戶自己掌握自己的私鑰,也解決了內外攻擊的問題.本方案與其他認證方案在安全屬性的比較如表3.

在安全屬性的比較上,與其他方案相比安全屬性更好.其中文獻[4]必須集中式的認證方案,因此不滿足去中心化,另外不能抵抗重放攻擊;文獻[13]中未加入時間戳機制因此無法抵御重放攻擊,用戶私鑰也被存放在密鑰生成中心,容因此不滿足內外部攻擊;文獻[14]不能抵抗重放攻擊.本方案對于解決上安全問題上具備一定優勢.

4.2 方案性能分析

對本方案的性能分析,主要從計算開銷和通信開銷來與其他方案進行比較.

4.2.1 計算開銷

文獻[4,13,14]是基于離散對數數學困難問題來進行雙線性對計算和指數計算設計認證方案,計算開銷大;而本文采用的是基于橢圓曲線上的離散對數困難問題,通過橢圓曲線上的加法運算和倍點運算來實現認證方案的設計,計算開銷小.通過Thumbur 等人[15]的仿真實驗可知,橢圓曲線上的加法運算大約是倍點運算的200 多倍,在各個方案的計算開銷比較上作用也微乎其微.因此在計算開銷的比較上,不考慮橢圓去線上的加法運算.為了對方案進行比較,定義以下符號:TB表示一次雙線性對運算開銷;TE表示一次指數運算開銷;TGM表示運行橢圓曲線上群G上一次點乘運算的開銷,“—”表示不具備此功能.

根據文獻[3]在i5-4460s 2.90 GHz CPU的計算機上部署大數運算函數庫(MIRACL),對雙線性對運算、指數運算以及橢圓曲線上的倍點運算的仿真實驗結果如表4.

表4 運算操作的運行時間 (ms)

在我們的方案中,為了實現機構和用戶的雙向認證,與其他方案不同的是,本方案也為機構也頒發了身份證明,而且機構的數量相比較普通用戶而言少很多,因此在總體計算開銷的用戶注冊階段,僅僅考慮普通用戶注冊時的計算開銷.

本方案與文獻[4,13,14]所提出的方案在用戶計算開銷對比如表5.通過表格可以明顯地看出來與其他認證方案相比較本方案在計算開銷上有明顯優勢,并且文獻[4]和文獻[14]不支持跨域認證,文獻[13]未對域內認證進行分析,而本方案對域內和域外身份認證均進行了設計.因此本方案更加全面,計算開銷也更低.

表5 計算開銷比較

4.2.2 通信開銷

在通信開銷的比較上,由于文獻[14]未設計詳細的交互過程,因此不參與比較,并且為了更為直觀的進行比較,僅對用戶的通信開銷進行比較.假設所有的方案的身份ID 長度都一致,群上的消息長度也一致,加密消息的長度與消息本身長度一致,群變量信息長度是時間戳的10 倍,隨機數不計入長度,身份證明的長度與群變量一致.現定義|p|代表群變量的信息長度,|G|代表橢圓曲線上的信息長度,|t|代表時間戳的信息長度,|id|代表用戶和匿名身份的長度,|hmac|代表HMAC的信息長度.并假設|id|的長度為80 bit;時間戳16 bit;群變量160 bit;證書密文160 bit;身份的80 bit,|hmac|是160 bit.

對于文獻[4]所述方案,在用戶注冊階段用戶發送的注冊信息長度為3|p|+|id|在認證階段,用戶通信開銷為2|p|+|id|+|hmac|.

對于文獻[14],用戶在注冊階段的計算開銷為|t|+3|q|,在認證階段用戶的通信開銷為5|p|+|t|+|id|.

從表6可以看出,總體來看文獻[4]的通信開銷最小,但是認證階段本方案最優,而且在這3 個方案中,用戶只需要注冊一次,之后再進行訪問只需要對其進行認證即可,在認證階段,本方案的通信開銷最小.總之,對于用戶來說本方案的通信開銷可行.

表6 用戶通信開銷比較

另外,本方案采用基于聯盟鏈的基礎架構,由機構節點和權威節點具備交易權限,并且節點數目遠小于公有鏈.并且本文采用本地鏈和跨域鏈兩種區塊鏈.因此機構節點和權威節點的計算開銷和通信開銷與單鏈架構情況下相比要小得多.

對于方案的存儲需求,區塊鏈上的數據都是經過哈希處理的,最終轉化為固定字節的二進制數,然后通過默克爾樹來進行記錄,區塊頭僅存放默克爾根的哈希值.而且區塊鏈上存儲的也僅是用戶的注冊信息以及惡意用戶記錄因此不會占據大量內存,因此滿足存儲需求.

5 總結與展望

針對目前在教育場景下集中式的身份認證的弊端,本文提出了基于無證書簽名與區塊鏈的身份認證方案.利用區塊鏈的分布式架構解決了集中式的單點故障問題;利用無證書簽名讓用戶生成自己的公私鑰,避免了密鑰托管的問題;通過頒發身份證明實現域內、跨域認證;通過區塊鏈技術來輔助用戶來進行身份認證,降低了用戶的計算開銷;另外通過哈希函數實現用戶的真實身份可追溯.最后,將本文所提出的身份認證方案與其他方案進行性能比較分析.結果表明該方案具備去中心化、可跨域、隱私保護、用戶可追溯的特性,并且在安全屬性和用戶開銷上有一定的優勢.本文雖然在教育場景下的身份認證的安全性上提供了有效的解決辦法,但仍存在較大的提升空間,下一步利用分片技術、多通道等技術區塊鏈系統的處理效率以及提高區塊鏈系統的可擴展性,并進一步研究基于教育區塊鏈的身份認證領域.

猜你喜歡
用戶
雅閣國內用戶交付突破300萬輛
車主之友(2022年4期)2022-08-27 00:58:26
您撥打的用戶已戀愛,請稍后再哭
關注用戶
商用汽車(2016年11期)2016-12-19 01:20:16
關注用戶
商用汽車(2016年5期)2016-11-28 09:55:15
兩新黨建新媒體用戶與全網新媒體用戶之間有何差別
關注用戶
商用汽車(2016年6期)2016-06-29 09:18:54
關注用戶
商用汽車(2016年4期)2016-05-09 01:23:12
挖掘用戶需求尖端科技應用
Camera360:拍出5億用戶
創業家(2015年10期)2015-02-27 07:55:08
100萬用戶
創業家(2015年10期)2015-02-27 07:54:39
主站蜘蛛池模板: 四虎国产在线观看| 亚洲综合色吧| 18禁黄无遮挡免费动漫网站| 精品乱码久久久久久久| 亚洲αv毛片| 婷婷色在线视频| 国产精品999在线| 亚洲av无码成人专区| 亚洲精品无码专区在线观看| 亚洲精品福利视频| 亚洲黄色激情网站| 四虎国产永久在线观看| 天天干天天色综合网| 午夜视频在线观看区二区| 国产精品无码久久久久久| 国产精品jizz在线观看软件| 日本一区二区三区精品视频| 国产91小视频在线观看| 91娇喘视频| 日韩人妻少妇一区二区| 欧美午夜在线播放| 亚洲三级影院| 亚洲 欧美 中文 AⅤ在线视频| 永久天堂网Av| 亚洲欧美日韩动漫| 亚洲成a人在线播放www| 激情综合网激情综合| 福利视频一区| 欧美日韩在线成人| 国产一级做美女做受视频| 亚洲男人天堂久久| 国产福利小视频高清在线观看| 国产另类视频| 91成人在线免费观看| 国产精品视频公开费视频| 毛片大全免费观看| 国产精品林美惠子在线观看| 亚洲va视频| 日韩视频福利| 2021国产乱人伦在线播放| 亚洲av日韩av制服丝袜| 天天摸夜夜操| 国产成人1024精品| 婷婷久久综合九色综合88| 久久大香伊蕉在人线观看热2| 国产精品福利社| 尤物精品视频一区二区三区| 人妻无码一区二区视频| 亚洲欧洲日产国码无码av喷潮| 日韩小视频网站hq| 国产白浆在线观看| 久久国产黑丝袜视频| 视频国产精品丝袜第一页| 欧美日韩国产成人在线观看| 亚洲天堂2014| 4虎影视国产在线观看精品| 亚洲精品午夜天堂网页| 小蝌蚪亚洲精品国产| 国产美女无遮挡免费视频| 国产导航在线| 国产在线精品99一区不卡| 韩日免费小视频| 四虎影视国产精品| 国产美女免费网站| 亚洲日韩国产精品综合在线观看| 国产丝袜无码精品| 热久久这里是精品6免费观看| 97免费在线观看视频| 欧美国产综合视频| 亚洲一区无码在线| 久久精品这里只有精99品| 亚洲综合亚洲国产尤物| 久久国产精品波多野结衣| 九九这里只有精品视频| 狼友视频一区二区三区| 伊人久综合| 无码福利日韩神码福利片| 重口调教一区二区视频| 欧洲高清无码在线| 国产成人调教在线视频| 精品成人一区二区| 亚洲免费毛片|