亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于區(qū)塊鏈技術的生物特征和口令雙因子跨域認證方案

        2018-08-28 08:52:28周致成李立新李作輝
        計算機應用 2018年6期
        關鍵詞:跨域口令密鑰

        周致成,李立新,郭 松,李作輝

        (信息工程大學,鄭州450001)

        (*通信作者電子郵箱alphalilixin@163.com)

        0 引言

        在分布式環(huán)境中,各個地區(qū)、行業(yè)、部門為了方便管理用戶,設置相應的資源訪問控制系統(tǒng),形成相對獨立的域。然而單個獨立的域不能提供完整的應用服務,用戶訪問其他域的資源需要進行跨域認證。傳統(tǒng)的跨域認證主要基于對稱密碼體制和公鑰密碼體制。而基于對稱密碼體制的跨域認證主要指Kerberos提供的跨域認證服務,但Kerberos系統(tǒng)所有用戶的密鑰都存儲在中心服務器,危及服務器的安全的行為將危及所有密鑰的安全。而基于公鑰密鑰體制(Public Key Cryptography,PKC)的跨域認證方案主要基于公鑰基礎設施(Public Key Infrastructure,PKI)和基于身份的公鑰密碼體制(IDentity-based Public Key Cryptography,ID-PKC)?;?PKI的跨域認證存在證書管理復雜、認證路徑過長的問題;而ID-PKC存在密鑰托管的問題,且認證效率不高,實際應用困難。

        生物特征具有唯一性和在一定時間內(nèi)不顯著改變的穩(wěn)定性[1],使用生物特征進行認證具有簡便、快捷、易用的特點,因此生物特征識別在身份認證領域得到了廣泛的應用。傳統(tǒng)的生物特征識別方案在識別匹配時要傳輸生物特征模板。生物特征模板是由采集到的生物特征圖像通過提取細節(jié)點的方式產(chǎn)生,所以生物特征模板存儲的是該生物特征細節(jié)點的相關信息,而不是該生物特征圖像。以指紋特征為例,指紋特征模板的數(shù)據(jù)結構通常由指紋細節(jié)點的位置、方向等信息構成。由于生物特征模板具有唯一性與隱私性,在開放的網(wǎng)絡上直接傳輸生物特征模板是不安全的,因此后來出現(xiàn)了借助智能卡的支持在客戶端上進行生物識別。文獻[2]最早提出將生物特征引入智能卡認證,通過識別階段重新采集的指紋特征模板與注冊階段采集并已經(jīng)存儲在智能卡中的指紋特征模板進行識別匹配,然后借助于ElGamal公鑰加密系統(tǒng)和離散對數(shù)問題實現(xiàn)遠程的用戶身份認證。但當智能卡受到攻擊甚至丟失時,遠程身份認證方案將受到嚴重的安全威脅,甚至方案不能實現(xiàn)。因此如何從兩個差別不大的生物特征中提取出相同的秘密值作為遠程生物特征比對匹配的因子,是實現(xiàn)在分布式開放網(wǎng)絡中實現(xiàn)生物特征識別的關鍵。

        2004年,Dodis等[3]提出了模糊提取技術,實現(xiàn)了將兩個在誤差允許范圍內(nèi)的生物特征模板通過模糊提取產(chǎn)生一個相同且秘密的隨機字符作為用戶的隨機密鑰,不僅解決了同一個生物特征在噪聲等干擾因素下能夠提取出一個唯一的秘密值的問題,而且解決了因生物特征表征信息或生物模板泄露導致的生物特征永久不可用的問題。文獻[4]提出將模糊提取技術與口令放大技術結合,克服基于低熵口令認證的低安全性問題,但其對模糊提取的安全性假設是基于被動攻擊的,不能應對遭受主動攻擊面臨被篡改公開信息的威脅。文獻[5]提出了無線傳感器網(wǎng)絡下使用智能卡和模糊提取器的認證與密鑰協(xié)商協(xié)議,但是用戶需要攜帶智能卡,如果智能卡丟失,用戶將不能登錄認證服務器,必須重新注冊,所以使用智能卡在一定程度上對用戶帶來了不便。文獻[6]基于模糊提取技術和橢圓曲線性Diffie-Hellman假設,提出生物特征和口令雙因子認證與密鑰協(xié)商協(xié)議,實現(xiàn)了用戶無需智能卡的認證。雖然,文獻[4]實現(xiàn)了遠程認證,文獻[5]的無線傳感器網(wǎng)絡環(huán)境是一種分布式的網(wǎng)絡環(huán)境,但文獻[4-6]均未實現(xiàn)基于生物特征與口令的跨域認證。

        區(qū)塊鏈技術最早由Nakamoto[7]提出,作為比特幣的底層技術。區(qū)塊鏈技術整合了分布式存儲、現(xiàn)代密碼學、點對點網(wǎng)絡、共識機制和智能合約這幾個關鍵技術,對數(shù)據(jù)進行交換、存儲和處理,是一個安全高效、共享智能的新技術。近幾年區(qū)塊鏈技術在各領域得到了廣泛的研究與應用。文獻[8]提出使用區(qū)塊鏈技術保護個人數(shù)據(jù),將區(qū)塊鏈交易附上用戶的操作指令,使用戶在系統(tǒng)中維護數(shù)據(jù)、操作數(shù)據(jù),但未提及具體應用;文獻[9-11]是基于區(qū)塊鏈技術在傳統(tǒng)PKI身份認證領域應用的研究,解決了傳統(tǒng) PKI領域存在單一 CA(Certifacate Authority)節(jié)點故障和使用 CRL(Certificate Revocation List)造成通信量過大的問題,但未提及跨PKI信任域的身份認證問題的解決方案;文獻[12]提出將區(qū)塊鏈技術應用于基于生物特征的身份認證問題,使用區(qū)塊鏈技術存儲指紋形成一個基于區(qū)塊鏈的身份認證系統(tǒng),但是該方案直接將未加密的指紋存儲在區(qū)塊鏈上,存在安全性與隱私性威脅。

        針對傳統(tǒng)跨域認證方式單一且方案復雜,以及生物特征認證采用的模糊提取技術中公開信息值易遭受篡改等問題,本文提出了基于區(qū)塊鏈技術的生物特征和口令雙因子跨域認證方案?;诓灰状鄹那曳植际酱鎯Φ膮^(qū)塊鏈作為底層數(shù)據(jù)存儲架構,存儲生物特征公開信息,便于用戶恢復作為生物特征因子的隨機密鑰?;陔x散對數(shù)問題把用戶在注冊與認證階段輸入的靜態(tài)口令轉化為動態(tài)口令,作為口令因子。利用對稱加解密與生物特征隨機密鑰的識別匹配,實現(xiàn)了生物特征與口令的雙因子認證。本文利用模糊提取技術解決了傳統(tǒng)的生物識別認證方案存在的用戶生物特征泄露將永久不可用的問題;基于區(qū)塊鏈分布式賬本不易篡改的特點解決了文獻[4]存在的模糊提取器遭受主動攻擊的威脅,解決了文獻[5]中用戶攜帶智能卡不便且易丟失的問題,實現(xiàn)了用戶在不使用智能卡的條件下在任意客戶端進行身份認證。

        1 相關知識

        1.1 模糊提取技術

        Dodis等[3]提出的模糊提取技術存在兩個概念:

        1)模糊提取器(Fuzzy Extractor)。從輸入的生物特征信號中提取出均勻分布的隨機字符串R。

        2)安全梗概(Secure Sketch)。從輸入的生物特征信息ω中提取出公開信息P,當再次輸入的ω'與ω非常相近時,可以由P和ω'恢復出ω。

        模糊提取技術將輸入的生物特征信息ω分別使用模糊提取器和安全梗概以容錯的方式提取出一個均勻的隨機字符串R和一個公開信息P。當再次輸入一個與首次輸入的生物特征信息ω偏差不大的生物特征信息ω'時,借助公開信息P,使用安全梗概恢復出ω,并作為輸入再次通過模糊提取器獲得隨機字符串R。為簡化模糊提取技術的流程,下面將模糊提取技術使用形式化表述:

        1)隨機字符生成算法Gen(ω)→(R,P):輸入用戶的生物特征信息ω,通過隨機字符生成算法,輸出一個對應于用戶生物特征的字符串R作為用戶的隨機密鑰和一個公開信息值P。

        2)隨機字符恢復算法Rep(ω',P)→R:輸入用戶的生物特征ω',和對應用戶的公開信息P,如果滿足兩次輸入的生物特征的誤差在給定容許的范圍ε內(nèi),即dis(ω,ω')≤ε,則輸出對應于用戶生物特征的字符串R。

        1.2 區(qū)塊鏈技術

        區(qū)塊鏈技術簡單來講主要包含以下三個概念:1)交易。在比特幣系統(tǒng)[7]中指以比特幣為貨幣的價值的交換,引申為系統(tǒng)中以某個關鍵數(shù)據(jù)為基礎的數(shù)據(jù)的交換。2)區(qū)塊。記錄一定時間內(nèi)系統(tǒng)的所有的交易和狀態(tài)。3)鏈。代表整個賬本,從以時間順序產(chǎn)生的區(qū)塊連接而成。

        區(qū)塊鏈作為數(shù)據(jù)賬本存儲在點對點網(wǎng)絡中[13]。每一個區(qū)塊存儲網(wǎng)絡中一段時間產(chǎn)生的交易。交易由網(wǎng)絡節(jié)點經(jīng)廣播機制廣播到全網(wǎng)中,參與記賬的節(jié)點按照共識機制把交易記錄在區(qū)塊內(nèi),成為新的區(qū)塊。如圖1所示,后一個區(qū)塊記錄前一個區(qū)塊的哈希值,通過這種方式將每一個區(qū)塊連接成區(qū)塊鏈[14]。

        圖1 區(qū)塊鏈結構Fig.1 Blockchain architecture

        2 系統(tǒng)架構與區(qū)塊鏈設計

        2.1 系統(tǒng)架構

        本文方案的跨域認證系統(tǒng)由多個分布式獨立域和區(qū)塊鏈網(wǎng)絡組成。系統(tǒng)架構如圖2所示,系統(tǒng)由多個獨立的域和區(qū)塊鏈網(wǎng)絡組成,每個獨立的域的內(nèi)部由認證服務器、客戶端和區(qū)塊鏈網(wǎng)絡節(jié)點組成??蛻舳松线B接生物特征采集器。區(qū)塊鏈網(wǎng)絡由眾多服務器和主機節(jié)點以點對點網(wǎng)絡的組網(wǎng)方式構成,這些節(jié)點位于各分布式獨立的域內(nèi)。在實際應用時節(jié)點可以建在認證服務器內(nèi),也可以建在認證服務器外。

        圖2 系統(tǒng)架構Fig.2 System architecture

        2.2 區(qū)塊鏈網(wǎng)絡模型

        由于聯(lián)盟鏈具有分布式多中心的特點,滿足多個獨立域存在的分布式網(wǎng)絡環(huán)境,因此本方案使用區(qū)塊鏈聯(lián)盟鏈技術設計針對生物特征識別的數(shù)據(jù)存儲區(qū)塊鏈網(wǎng)絡,命名為生物公開信息聯(lián)盟鏈(Biometrics Public Information Consortium Blockchain,BPICB),BPICB架構如圖3所示。

        圖3 BPICB架構Fig.3 BPICB architecture

        BPICB網(wǎng)絡節(jié)點建立在不同的域內(nèi),通過網(wǎng)絡互相連接。每個域可以選擇節(jié)點部署的方式,可以部署在認證服務器里,也可以獨立于認證服務器之外部署。節(jié)點類型分為以下兩類:

        1)記賬節(jié)點(Keep Account Peer,KAP)。由服務器充當,主要負責維護區(qū)塊鏈賬本。參與共識機制將交易記錄在區(qū)塊鏈內(nèi),保存有區(qū)塊鏈賬本。

        2)服務節(jié)點(Service Peer,SP)。由主機充當,主要負責為客戶端提供區(qū)塊鏈數(shù)據(jù)存儲與查詢服務。通過接收客戶端的操作請求,組合交易并廣播至網(wǎng)絡中。通過與記賬節(jié)點的同步保存有區(qū)塊鏈賬本,提供客戶端對賬本的查詢功能。

        在BPICB網(wǎng)絡中,記賬節(jié)點記錄區(qū)塊鏈數(shù)據(jù),服務節(jié)點提供區(qū)塊鏈服務。每一個獨立的域內(nèi)至少有一個記賬節(jié)點和服務節(jié)點,提供完整的區(qū)塊鏈數(shù)據(jù)存儲、查詢與審計的功能。記賬節(jié)點通常是運算效率較高的服務器,采用記賬節(jié)點記賬而不是由全網(wǎng)所有節(jié)點競爭記賬,可以有效提高區(qū)塊鏈記賬的效率。服務節(jié)點可以是主機也可以是服務器,連接客戶端,為客戶端提供區(qū)塊鏈數(shù)據(jù)存儲與查詢服務。將區(qū)塊鏈網(wǎng)絡中記錄數(shù)據(jù)和查詢數(shù)據(jù)的節(jié)點分離,各司其職,一方面提高區(qū)塊鏈記賬的效率,減少資源浪費;另一方面更好地提供區(qū)塊鏈賬本服務。

        2.3 區(qū)塊鏈交易

        區(qū)塊鏈的交易對應區(qū)塊鏈賬本內(nèi)的一條條數(shù)據(jù)。本方案使用BPICB網(wǎng)絡存儲模糊提取后的公開信息值P,所以區(qū)塊鏈的交易由公開信息P及其相關信息組成。交易的數(shù)據(jù)結構如圖4所示。其中:Tx-id表示交易號;IDDomain-Number表示每個域的用戶的賬戶號,代表用戶的唯一標識;Data表示模糊提取技術產(chǎn)生的公開信息P;Operation表示對公開信息P的操作,分為注冊(Register)、查詢(Query)、撤銷(Revoke),記錄對公開信息P的全部操作;Signature表示向服務節(jié)點發(fā)送關于公開信息P及其相關操作的認證服務器或客戶端的簽名。

        圖4 交易的數(shù)據(jù)結構Fig.4 Data structure of the transaction

        1)當用戶注冊時,客戶端的生物特征采集器提取生物特征模板ωU,使用模糊提取技術的隨機字符生成算法產(chǎn)生公開信息 P,然后將用戶 IDDomain-Number、公開信息 P、注冊操作Register,以及簽名Signature發(fā)送給服務節(jié)點,服務節(jié)點組裝交易Transaction并附上交易號Tx-id廣播至區(qū)塊鏈網(wǎng)絡,記賬節(jié)點把一定時間內(nèi)收到的區(qū)塊鏈網(wǎng)絡中的交易通過共識機制記錄在新的區(qū)塊中,形成最新的區(qū)塊鏈。用戶注冊時產(chǎn)生交易的具體流程如圖5所示。

        圖5 用戶注冊時產(chǎn)生交易的流程Fig.5 Process of generating a transaction when user registers

        2)當用戶查詢時,客戶端向區(qū)塊鏈網(wǎng)絡的服務節(jié)點發(fā)送用戶的唯一標識符 ID、查詢操作Query和客戶端的簽名Signature,服務節(jié)點根據(jù)用戶的唯一標識符IDDomain-Number查詢區(qū)塊鏈得到用戶對應的公開信息P,返回給客戶端。然后服務節(jié)點組裝交易并附上交易號Tx-id廣播至區(qū)塊鏈網(wǎng)絡,記賬節(jié)點把區(qū)塊鏈網(wǎng)絡中一定時間內(nèi)的交易通過共識機制記錄在新的區(qū)塊中,形成最新的區(qū)塊鏈。用戶查詢時產(chǎn)生交易的具體流程如圖6所示。

        3)當用戶注銷時,認證服務器向區(qū)塊鏈網(wǎng)絡的服務節(jié)點發(fā)送用戶的唯一標識符IDDomain-Number、公開信息值P、注銷操作Revoke和認證服務器的簽名Signature,服務節(jié)點組裝交易Transaction并附上交易號Tx-id并發(fā)往記賬節(jié)點處理,記賬節(jié)點通過共識機制將交易存儲在新的區(qū)塊中,形成最新的區(qū)塊鏈。用戶注銷時產(chǎn)生交易的具體流程如圖7所示。

        圖6 用戶查詢時產(chǎn)生交易的流程Fig.6 Process of generating a transaction when user queries

        圖7 用戶注銷時產(chǎn)生交易的流程Fig.7 Process of generating a transaction when user revokes

        2.4 區(qū)塊鏈共識算法

        在區(qū)塊鏈體系的高度自治去中心化的分布式環(huán)境中,如何讓區(qū)塊鏈節(jié)點記賬并使全網(wǎng)節(jié)點達成數(shù)據(jù)上的共識,是設計區(qū)塊鏈系統(tǒng)和應用方案的關鍵。本方案選用適合于聯(lián)盟鏈環(huán)境的的Raft共識機制[15]使全網(wǎng)數(shù)據(jù)達成共識。根據(jù)Raft共識機制,將BPICB網(wǎng)絡中的節(jié)點分為以下3個角色:

        1)領袖:記賬節(jié)點投票選舉一名擔任;

        2)群眾:落選的記賬節(jié)點和服務節(jié)點擔任;

        3)候選人:所有記賬節(jié)點擔任。

        在BPICB網(wǎng)絡中,網(wǎng)絡中的記賬節(jié)點作為候選人投票表決選舉唯一的領袖,投票時參考記賬節(jié)點的計算速度以及吞吐量,獲得選票最多的記賬節(jié)點成為領袖。投票結束后候選人自動變?yōu)槿罕姟晤I袖的記賬節(jié)點將一段時間內(nèi)的交易驗證后記錄在區(qū)塊中連接成為最新的區(qū)塊鏈賬本,作為群眾的節(jié)點同步區(qū)塊鏈賬本。

        3 基于區(qū)塊鏈技術的雙因子跨域認證協(xié)議

        本章主要介紹基于區(qū)塊鏈技術的生物特征和口令雙因子跨域認證協(xié)議。由于BPICB實現(xiàn)了生物特征公開信息的數(shù)據(jù)共享,用戶在任意客戶端通過查詢區(qū)塊鏈便可得到用戶對應的公開信息,通過模糊提取器技術可在客戶端上恢復出隨機密鑰,因此能夠實現(xiàn)用戶在本地與異地進行跨域認證。方案具體分為用戶注冊、本地認證、本地跨域認證、異地跨域認證四個階段。方案中使用的參數(shù)如表1所示。

        3.1 注冊階段

        用戶在注冊階段的流程如圖8所示。

        用戶在注冊階段的具體流程如下:

        第1步 A域用戶在本地客戶端ClientA-t上輸入用戶名IDA-i和靜態(tài)口令PWA-i,通過生物特征采集器采集生物特征ωA-i。

        第2步 客戶端使用模糊提取技術的隨機密鑰生成函數(shù)Gen(),對輸入的生物特征模板ωA-i進行處理,產(chǎn)生隨機密鑰RA-i和公開信息 PA-i,將用戶的靜態(tài)口令 PWA-i作哈希運算H(PWA-i),記為 y,然后將生物特征模板 ωA-i和靜態(tài)口令PWA-i刪除。客戶端將 IDA-i、RA-i和 y 通過安全的信道發(fā)送到本地認證服務器ASA。

        第 3 步 本地認證服務器 ASA收到包含有 IDA-i、RA-i和y的消息,檢查該用戶的身份標識是否已經(jīng)存在,如果不存在則可以注冊,把 IDA-i、RA-i、y 存儲在數(shù)據(jù)庫內(nèi)。

        第4步 客戶端ClientA-t將公開信息PA-i發(fā)送到服務節(jié)點組裝交易記錄在區(qū)塊鏈上。

        表1 方案參數(shù)說明Tab.1 Description of scheme parameters

        圖8 注冊階段流程Fig.8 Flow chart of registration phase

        3.2 本地認證階段

        用戶在本地認證階段的流程如圖9所示。

        用戶在本地認證階段的具體流程如下:

        第1步 用戶在客戶端ClientA-t輸入用戶名IDA-i和靜態(tài)口令PWA-i'并在生物特征采集器上采集得到生物特征模板ωA-i'。

        第2步 客戶端ClientA-t向服務節(jié)點查詢區(qū)塊鏈數(shù)據(jù),得到公開信息PA-i(具體過程見2.3節(jié)),使用模糊提取技術的恢復算法Rev(ωA-i',PA-i),生成隨機密鑰RA-i'。將靜態(tài)口令作哈希運算H(PWA-i') 記為y',將生物特征模板 ωA-i'和靜態(tài)口令PWA-i'刪除。然后產(chǎn)生隨機數(shù)x,計算X=gx,使用y'生成 d'=gxy',d'作為密鑰對稱加密 Ed'(RA-i'),將消息(IDA-i,X,Ed'(RA-i'))通過安全的信道發(fā)送給認證服務器ASA。

        第3步 認證服務器ASA接收到客戶端ClientA-t發(fā)來的消息(IDA-i,X,Ed'(RA-i')),根據(jù)IDA-i查找注冊時存儲在數(shù)據(jù)庫中的y,計算d=Xy。使用d對Ed'(RA-i')解密,有以下兩種情況:

        a) 如果使用 d 能夠解密 Ed'(RA-i'),得到 RA-i',然后根據(jù)IDA-i查找注冊時存儲在數(shù)據(jù)庫中的 RA-i,執(zhí)行第4步;

        b)如果使用d無法解密Ed'(RA-i'),則認證失敗,原因為口令錯誤。

        第4步 認證服務器ASA驗證RA-i和RA-i'是否相等。有以下兩種情況:

        a) 如果 RA-i=RA-i',認證成功,向 B 域認證服務器返回認證成功的消息;

        b) 如果 RA-i≠ RA-i',認證失敗,向 B 域認證服務器返回認證失敗的消息,原因為生物特征錯誤。

        3.3 本地跨域認證階段

        用戶在本地跨域認證階段的流程如圖10所示。

        用戶在本地跨域認證階段的具體流程如下:

        第1步 用戶在客戶端ClientA-t輸入用戶名IDA-i和靜態(tài)口令PWA-i'并在生物特征采集器上采集得到生物特征模板ωA-i'。

        第2步 客戶端ClientA-t向服務節(jié)點查詢區(qū)塊鏈數(shù)據(jù),得到用戶IDA-i的公開信息PA-i,使用模糊提取技術的恢復算法 Rev(ωA-i',PA-i) 恢復出隨機密鑰 RA-i'。計算靜態(tài)口令的哈希值 H(PWA-i'),記為 y',客戶端將生物特征模板ωA-i'和靜態(tài)口令 PWA-i'刪除。將用戶的 IDA-i、RA-i'、y'用 B 域的認證服務器ASB的公鑰PKASB加密生成EPKASB(IDA-i,RA-i',y'),發(fā)送消息(IDA-i,EPKAS(IDA-i,RA-i',y')) 給 A 域認證服務器 ASA。B

        第3步 A域認證服務器ASA根據(jù)IDA-i查找存儲在數(shù)據(jù)庫中的 y和RA-i。產(chǎn)生一個隨機數(shù)x,計算X=gx,使用y生成動態(tài)口令d=gxy,使用d作為密鑰進行對稱加密Ed(RA-i),將消息(Ed(RA-i),X,EPKAS(IDA-i,RA-i',y')) 發(fā)給 B 域認證服B務器ASB。

        圖9 本地認證階段流程Fig.9 Flow chart of local authentication phase

        圖10 本地跨域認證階段流程Fig.10 Flow chart of local cross domain authentication phase

        第4步 B域認證服務器ASB收到數(shù)據(jù)包后,使用私鑰對EPKASB

        (IDA-i,RA-i',y') 解密得到 IDA-i、RA-i'和 y',使用 X 和y'計算動態(tài)口令 d'=Xy'。使用 d 對 Ed'(RA-i') 解密,有以下兩種情況:a) 如果使用d能夠解密Ed'(RA-i'),得到RA-i',執(zhí)行第5步;b)如果使用d無法解密Ed'(RA-i'),則認證失敗,原因為口令錯誤。

        第5 步 認證服務器ASB驗證 RA-i和RA-i'是否相等。以下分兩種情況:

        a) 如果 RA-i=RA-i',認證成功;

        b)如果 RA-i≠ RA-i',認證失敗,原因為生物特征錯誤。

        3.4 異地跨域認證階段

        用戶在異地跨域認證階段的流程如圖11所示。

        用戶在異地跨域認證階段的具體流程如下:

        第1步 用戶輸入IDA-i和靜態(tài)口令PWA-i'并通過生物特征采集器采集生物特征模板ωA-i'。

        第2步 客戶端向最近的服務節(jié)點查詢區(qū)塊鏈得到用戶IDA-i的公開信息 PA-i,使用模糊提取技術 的 恢 復算法Rev(ωA-i',PA-i) 恢復出生物特征隨機密鑰 RA-i',計算靜態(tài)口令的哈希值H(PWA-i'),記為y',將生物特征模板ωA-i'和靜態(tài)口令 PWA-i'刪除。發(fā)送消息(IDA-i,RA-i',y') 給 B 域的認證服務器ASB。

        第3步 B域認證服務器ASB根據(jù)用戶的唯一標識符IDA-i識別用戶的本地服務器,并向其本地服務器ASB發(fā)送用戶名IDA-i,請求該用戶的生物特征隨機密鑰RA-i和共享密鑰X。

        第4步 A域認證服務器ASA根據(jù)IDA-i查找注冊時存儲在數(shù)據(jù)庫中的 y和RA-i,產(chǎn)生一個隨機數(shù)x,計算X=gx,使用y生成動態(tài)口令d=gxy,并將d作為密鑰進行對稱加密Ed(RA-i),A 域認證服務器 ASA發(fā)送消息(IDA-i,X,Ed(RA-i))到B域認證服務器ASB。

        第5步 B域認證服務器ASB計算d'=Xy',使用d'解密Ed(RA-i),分為以下兩種情況:

        a) 如果使用 d'能夠解密 Ed(RA-i),得到 RA-i,執(zhí)行第 6步;

        b)如果使用d'無法解密Ed(RA-i),則認證失敗,原因為口令錯誤。

        第6 步 認證服務器ASB驗證 RA-i和RA-i'是否相等。以下分兩種情況:

        a) 如果 RA-i=RA-i',認證成功,向 B 域認證服務器返回認證成功的消息;

        b) 如果 RA-i≠ RA-i',認證失敗,向 B 域認證服務器返回認證失敗的消息,原因為生物特征錯誤。

        圖11 異地跨域認證階段流程Fig.11 Flow chart of remote cross domain authentication phase

        4 方案分析

        4.1 安全性分析

        4.1.1 抗中間人攻擊

        本方案在用戶注冊與登錄認證時,客戶端將隨機密鑰R和靜態(tài)口令的哈希值y通過安全的信道或者直接通過內(nèi)部局域網(wǎng)發(fā)送給認證服務器,保證認證信息不被篡改。在本地跨域認證和異地跨域認證階段,需要進行兩個域的認證服務器間的通信,在這種多域間的公共網(wǎng)絡下發(fā)送消息,采用對稱與非對稱加密技術,并基于離散對數(shù)問題,可以不使用安全的信道在公開的信道傳輸。以下是各個階段關于中間人BPICB攻擊的安全性分析:

        1)注冊階段??蛻舳薈lientA-t與本地認證服務器ASA通信,客戶端通過安全的信道發(fā)送消息(IDA-i,RA-i,y) 到本地認證服務器,攻擊者無法竊取和篡改??蛻舳伺cBPICB服務節(jié)點SP通信,通過安全的信道傳輸PA-i及相關信息,攻擊者無法篡改。

        2)本地認證階段??蛻舳薈lientA-t與本地認證服務器ASA通信,客戶端通過安全的信道發(fā)送消息(IDA-i,X,Ed'(RA-i'))到本地認證服務器。由于X=gx基于離散對數(shù)問題,攻擊者即使竊取到X也無法計算出隨機數(shù)x,并且攻擊者沒有靜態(tài)口令的哈希值,也無法根據(jù)X計算出動態(tài)口令??蛻舳耸褂门c服務器協(xié)商的動態(tài)口令d'作對稱加密Ed'(RA-i'),攻擊者無法篡改和竊取RA-i'。

        3)本地跨域認證階段。首先客戶端ClientA-t與本地認證服務器ASA通信,客戶端通過安全的信道發(fā)送消息(IDA-i,EPKAS(IDA-i,RA-i',y')) 給本地認證服務器,由于本地認證服B務器沒有B域認證服務器ASB的私鑰,只對其進行轉發(fā),無法解密,因此不存在本地認證服務器修改消息的可能。然后本地認證服務器ASA和B域認證服務器ASB通信,發(fā)送消息(E(R),X,E(ID,R',y')),由于 X=gx基于離散dA-iPKASBA-iA-i對數(shù)問題,攻擊者即使竊取到X也無法計算出隨機數(shù)x,并且攻擊者沒有靜態(tài)口令的哈希值,也無法根據(jù)X計算出動態(tài)口令。兩認證服務器間采用對稱加密和非對稱加密通信,攻擊者沒有相關密鑰無法獲取有用的信息。

        4)異地跨域認證階段。首先客戶端ClientB-i與B域的認證服務器ASB通信,客戶端通過安全的信道發(fā)送消息(IDA-i,RA-i',y')給認證服務器ASB,攻擊者無法竊取和篡改消息。A域認證服務器ASA與B域認證服務器ASB通信,發(fā)送消息(IDA-i,X,Ed(RA-i)),由于 X=gx基于離散對數(shù)問題,攻擊者即使竊取到X也無法計算出隨機數(shù)x,并且攻擊者沒有靜態(tài)口令的哈希值,也無法根據(jù)X計算出動態(tài)口令。兩認證服務器間采用對稱加密和非對稱加密,攻擊者沒有相關密鑰無法獲取有用的信息。

        4.1.2 抗重放攻擊

        1)本地認證階段??蛻舳水a(chǎn)生隨機數(shù)x,計算X=gx發(fā)給A域認證服務器ASA??蛻舳伺c認證服務器兩方分別擁有登錄與注冊階段兩次輸入的靜態(tài)口令y'和y,根據(jù)隨機數(shù)x和X可以分別計算出動態(tài)口令d'=gxy'和d=Xy。動態(tài)口令在認證時只使用一次,攻擊者即使截取了消息也無法進行重放攻擊。

        2)本地跨域認證階段。A域認證服務器產(chǎn)生隨機數(shù)x,計算X=gx發(fā)給B域認證服務器。A域認證服務器與B域認證服務器分別擁有注冊與登錄階段兩次輸入的靜態(tài)口令y和y',根據(jù)隨機數(shù)x和X可以分別計算出動態(tài)口令d=gxy和d'=Xy'。動態(tài)口令在認證時只使用一次,攻擊者即使截取了消息也無法進行重放攻擊。

        3)異地跨域認證階段。A域認證服務器產(chǎn)生隨機數(shù)x,計算X=gx發(fā)給B域認證服務器。A域認證服務器與B域認證服務器分別擁有注冊與登錄階段兩次輸入的靜態(tài)口令y和y',根據(jù)隨機數(shù)x和X可以分別計算出動態(tài)口令d=gxy和d'=Xy'。動態(tài)口令在認證時只使用一次,攻擊者即使截取了消息也無法進行重放攻擊。

        4.1.3 抗口令猜測攻擊

        用戶在客戶端上輸入靜態(tài)口令后,客戶端便直接將靜態(tài)口令作哈希運算把靜態(tài)口令的哈希值發(fā)送出去,并將靜態(tài)口令的緩存刪除,動態(tài)口令由靜態(tài)口令的哈希值和隨機數(shù)生成。所以用戶輸入靜態(tài)口令由客戶端作哈希運算后系統(tǒng)中不再出現(xiàn)靜態(tài)口令,攻擊者無法對靜態(tài)口令進行竊取。將靜態(tài)口令通過哈希算法變成隨機散列值,可以有效避免遭受口令猜測攻擊;同時由于哈希函數(shù)具有單向性,也無法將靜態(tài)口令的哈希值還原回靜態(tài)口令。

        4.1.4 防止隨機密鑰與靜態(tài)口令的哈希值雙因子泄露

        如果攻擊者攻擊本地認證服務器的數(shù)據(jù)庫,存儲隨機密鑰和靜態(tài)口令的哈希值出現(xiàn)泄露的情況:

        1)如果用戶隨機密鑰泄露,本地認證服務器對該用戶重新注冊,使用不同與以往的模糊提取算法重新生成新的隨機密鑰保存在認證服務器的數(shù)據(jù)庫中,同時將區(qū)塊鏈上舊的公開信息值添加注銷指令,將生成的新的公開信息值記錄在區(qū)塊鏈上。用戶登錄認證時客戶端使用與重新注冊時使用的模糊提取技術配套的恢復算法恢復隨機密鑰,然后進行匹配識別。

        2)如果用戶的靜態(tài)口令的哈希值泄露,本地服務器對該用戶進行重新注冊,用戶輸入新的靜態(tài)口令進行哈希運算并保存到本地認證服務器的數(shù)據(jù)庫內(nèi)。

        4.1.5 公開信息一致性

        在注冊階段,客戶端將用戶生物特征對應的公開信息值發(fā)送到區(qū)塊鏈服務節(jié)點組裝交易,由區(qū)塊鏈網(wǎng)絡的共識節(jié)點通過共識算法將交易數(shù)據(jù)記錄在區(qū)塊鏈分布式賬本中。由于共識算法實現(xiàn)了全網(wǎng)的區(qū)塊鏈節(jié)點對賬本的共識,因此保證了記錄在區(qū)塊鏈賬本中的數(shù)據(jù)的一致性。另外,區(qū)塊鏈具有分布式存儲的高冗余特性,任何一個節(jié)點的任意一個數(shù)據(jù)被篡改將在下一次共識的時候被檢測到。所以公開信息一旦記錄在區(qū)塊鏈上,用戶在進行認證時使用的其本人對應的公開信息與注冊時提取的公開信息是一致的。

        4.2 效率分析

        本節(jié)對方案的計算開銷進行分析,并與同類型的基于生物特征與口令的身份認證方案如文獻[4-5]方案作比較,計算開銷對比如表2所示。

        表2 不同方案計算開銷對比Tab.2 Comparison of computation overhead for different schemes

        本文方案與文獻[4]方案比較,使用模糊提取操作次數(shù)相同,比文獻[4]方案少1次指數(shù)運算,少2次哈希運算,多1次對稱加密與解密運算,多2次簽名驗證操作。本文方案與文獻[4]方案整體上除了最后一項指標外,前四項指標的計算開銷基本相同。但是文獻[4]方案提到使用模糊提取器不能抵抗主動攻擊,所以本文方案使用區(qū)塊鏈技術存儲公開信息值,在用戶注冊與認證階段使用了注冊與查詢操作生成2個交易,并附上2個簽名,因此本文方案多使用2個簽名的計算開銷解決文獻[4]方案模糊提取器易受主動攻擊的威脅。

        本文方案與文獻[5]方案比較,使用模糊提取操作的次數(shù)相同,比文獻[5]方案多2次指數(shù)運算,少10次哈希運算,多1次對稱加密與解密運算,多2次簽名驗證操作。本文方案與文獻[5]方案相比計算開銷較高,原因是本方案客戶端與服務器使用指數(shù)運算將靜態(tài)口令協(xié)商并轉化為動態(tài)口令,將隨機密鑰通過對稱加密在網(wǎng)絡中傳輸,代替文獻[5]方案中使用智能卡存儲大多數(shù)據(jù)的哈希值參與生物特征和動態(tài)口令的雙因子認證。文獻[5]方案的認證方案完全依賴智能卡存儲相關數(shù)據(jù),任何過程中智能卡丟失將造成整個方案失敗。本文方案雖然增加了系統(tǒng)計算開銷,在保證安全的基礎上為用戶提供了便捷的服務,避免智能卡丟失造成的安全威脅。

        4.3 方案優(yōu)點

        1)雙因子的雙向認證。

        在本地認證、本地跨域認證、本地異地認證三個場景中,在客戶端上使用模糊提取技術的隨機字符生成與恢復算法,注冊階段與認證階段分別進行隨機字符的提取與恢復,隨機字符作為生物特征因子參與生物識別。方案將認證服務器上在注冊階段保存的靜態(tài)口令的哈希值與客戶端上用戶認證時輸入的靜態(tài)口令的哈希值轉化為動態(tài)口令,作為口令因子和對稱密鑰,對隨機字符加密,通過對稱加解密和生物因子識別認證,實現(xiàn)客戶端與認證服務器的雙向認證。

        2)保護生物特征不易失效。

        生物特征具有唯一性和穩(wěn)定性,假如生物特征或生物特征模板丟失會導致用戶特定的生物特征永久的不可使用。比如一個用戶的一個指紋特征或模板泄露,將導致使用該指紋存在永久性的不安全,攻擊者可以根據(jù)泄露的生物特征對用戶的活動進行追蹤,還可能偽裝成用戶進行重放攻擊。本方案將生物特征模糊提取得到的隨機密鑰作為生物因子,而不直接使用生物特征或生物模板作為生物因子在系統(tǒng)內(nèi)傳輸和認證,對生物特征及模板起到了良好的保護作用,避免用戶生物特征泄露造成的永久無法使用。如果隨機密鑰出現(xiàn)泄露,添加密碼算法對隨機密鑰進行保護,或使用新的模糊提取算法提取新的隨機密鑰,不會造成生物特征泄露造成的永久不可用問題。

        3)用戶無需使用智能卡在多域間任意客戶端登錄。

        利用區(qū)塊鏈技術的分布式賬本功能,每個域的區(qū)塊鏈節(jié)點都存儲了經(jīng)模糊提取技術密鑰生成階段產(chǎn)生的生物特征公開信息值。BPICP網(wǎng)絡中的服務節(jié)點可以為客戶端提供查詢服務,客戶端上連接有生物特征采集器。用戶可以在任何客戶端查詢區(qū)塊鏈分布式賬本,也可以在任何連接有生物特征采集器的客戶端作生物特征的模糊提取。方案不需要用戶簽名所以不需要將私鑰提前保存到特定的客戶端中,也不需要使用智能卡存儲私鑰和公開信息值,因而用戶可以在多域間任意客戶端上進行登錄。

        4)生物特征公開信息的全生命周期記錄。

        基于區(qū)塊鏈不可篡改與分布式存儲的特點,建立生物公開信息聯(lián)盟鏈,對生物特征模糊提取得到的公開信息值進行全生命周期的記錄。通過記錄用戶生物公開信息及其相關操作,實現(xiàn)了對公開信息的全周期與全面的記錄。通過記錄生物公開信息的區(qū)塊鏈賬本,實現(xiàn)對用戶及客戶端的監(jiān)控與審計。

        5 結語

        針對傳統(tǒng)的跨域認證方式較少、方案復雜,以及生物特征認證采用的模糊提取技術中公開信息值易遭受篡改等問題,本文提出了基于區(qū)塊鏈技術的生物特征和口令雙因子跨域認證方案。該方案將模糊提取技術產(chǎn)生的生物特征公開信息值保存在不易篡改且去中心化的區(qū)塊鏈賬本中,并分別設計了用戶本地認證、本地跨域認證、異地跨域認證協(xié)議,在保證安全的基礎上,實現(xiàn)了多域間的互聯(lián)互通,避免了傳統(tǒng)模糊提取技術易遭受主動攻擊的威脅,解決了用戶攜帶智能卡存在的易丟失和易受攻擊的便攜性與安全性問題。下一步將采用形式化的方法對本文方案進行邏輯驗證,并改進區(qū)塊鏈共識算法,提升區(qū)塊鏈網(wǎng)絡對數(shù)據(jù)達成共識的效率。

        猜你喜歡
        跨域口令密鑰
        探索企業(yè)創(chuàng)新密鑰
        跨域異構體系對抗聯(lián)合仿真試驗平臺
        基于多標簽協(xié)同學習的跨域行人重識別
        為群眾辦實事,嶗山區(qū)打出“跨域通辦”組合拳
        讀報參考(2022年1期)2022-04-25 00:01:16
        G-SRv6 Policy在跨域端到端組網(wǎng)中的應用
        科學家(2021年24期)2021-04-25 13:25:34
        密碼系統(tǒng)中密鑰的狀態(tài)與保護*
        高矮胖瘦
        口 令
        一種對稱密鑰的密鑰管理方法及系統(tǒng)
        好玩的“反口令”游戲
        麻豆国产乱人伦精品一区二区| 女局长白白嫩嫩大屁股| 18分钟处破好疼哭视频在线观看| 欧美精品中文字幕亚洲专区| 国产亚洲青春草在线视频| 亚洲国产综合精品中久| 亚洲av无一区二区三区久久| 欧美丰满熟妇乱xxxxx图片| 色yeye在线观看| 国产av一区二区网站| 欧美日韩精品乱国产| 久久久精品欧美一区二区免费| 免费黄网站久久成人精品| 亚洲av一区二区在线| 色偷偷888欧美精品久久久| 国产精品免费久久久久影院仙踪林| 亚洲欧美在线视频| 国产成人av三级三级三级在线| 亚洲欧美综合精品成人网站| 国产啪精品视频网站| 97色综合| 99久久国产免费观看精品| 亚洲视频在线观看| a级毛片免费观看视频| 女优免费中文字幕在线| 国产桃色一区二区三区| 国产午夜精品一区二区三区嫩草| 欧美a级在线现免费观看| 精品色老头老太国产精品| 色欲色香天天天综合vvv| 色婷婷综合中文久久一本| 国产自精品在线| 亚洲女人的天堂网av| 精品无码久久久久久国产| 国产精品青草视频免费播放 | 成人影院视频在线播放| 国产精品国产精品国产专区不卡| 永久黄网站色视频免费| 久久久亚洲日本精品一区| 久久久极品少妇刺激呻吟网站 | 亚洲国产精品一区二区久|