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

基于區(qū)塊鏈的能源數(shù)據(jù)訪問控制方法

2021-09-18 06:22:10葛紀(jì)紅
計算機(jī)應(yīng)用 2021年9期
關(guān)鍵詞:用戶

葛紀(jì)紅,沈 韜

(昆明理工大學(xué)信息工程與自動化學(xué)院,昆明 650500)

(*通信作者電子郵箱shentao@kust.edu.cn)

0 引言

以能源互聯(lián)網(wǎng)為核心的第三次工業(yè)革命在全世界范圍內(nèi)逐漸發(fā)展,在以可再生能源、分布式發(fā)電等為代表的新能源技術(shù)以及云計算、大數(shù)據(jù)、人工智能、區(qū)塊鏈等先進(jìn)技術(shù)的推動下,能源互聯(lián)網(wǎng)有了進(jìn)一步的發(fā)展[1]。能源互聯(lián)網(wǎng)中的各個節(jié)點都是一個數(shù)據(jù)源,它們在能源產(chǎn)生、能源存儲、能源轉(zhuǎn)移或能源消耗過程中都會產(chǎn)生大量數(shù)據(jù)[2-3]。能源數(shù)據(jù)的共享對于能源互聯(lián)網(wǎng)的發(fā)展、能源信息的進(jìn)一步利用有很好的推動作用。能源互聯(lián)網(wǎng)中,數(shù)據(jù)存儲在不同企業(yè)和部門中,跨區(qū)域、跨企業(yè)、跨部門實現(xiàn)數(shù)據(jù)共享可以更好地發(fā)揮數(shù)據(jù)資本的價值。現(xiàn)階段能源公司內(nèi)部以及能源公司之間的數(shù)據(jù)共享是一個難題,面臨數(shù)據(jù)泄露風(fēng)險高、數(shù)據(jù)不可信以及數(shù)據(jù)控制權(quán)易丟失等諸多問題。而區(qū)塊鏈具備的可追溯、高可信、防篡改等特性,在運行方式、拓?fù)湫螒B(tài)、安全防護(hù)等方面與能源互聯(lián)網(wǎng)理念相適應(yīng),可以很好地與能源大數(shù)據(jù)形成互補,滿足復(fù)雜的能源互聯(lián)網(wǎng)安全可信的需求[4]。

大數(shù)據(jù)技術(shù)的發(fā)展使得海量數(shù)據(jù)的潛在價值日益凸顯。電力行業(yè)作為國家重要的能源行業(yè),電網(wǎng)企業(yè)在長期經(jīng)營過程中積累了大量的數(shù)據(jù)。這些數(shù)據(jù)不僅可以助力電網(wǎng)企業(yè)自身提升服務(wù)質(zhì)量,創(chuàng)造更大收益,更可以作為經(jīng)濟(jì)社會運行狀況的重要反映。然而,當(dāng)前電網(wǎng)企業(yè)正面臨著嚴(yán)峻的“數(shù)據(jù)孤島”問題。數(shù)據(jù)作為電力公司的資產(chǎn),各大電力公司不同業(yè)務(wù)部門不希望自己內(nèi)部的數(shù)據(jù)被其他部門所訪問,更不希望自己的數(shù)據(jù)被同行業(yè)不同公司所獲取。對于電網(wǎng)企業(yè)收集到的豐富數(shù)據(jù)資源,缺乏有效的共享和管理機(jī)制,使得數(shù)據(jù)的巨大價值被浪費。面對現(xiàn)在電網(wǎng)企業(yè)內(nèi)部與外部的信息壁壘所帶來的內(nèi)外部信息不對稱,以及數(shù)據(jù)價值的衰減,對電網(wǎng)企業(yè)不同業(yè)務(wù)系統(tǒng)之間進(jìn)行數(shù)據(jù)的連接、貫通與共享,將進(jìn)一步激發(fā)電網(wǎng)企業(yè)各部門的協(xié)同力以及活力。隨著電力行業(yè)業(yè)務(wù)逐漸復(fù)雜,產(chǎn)生的業(yè)務(wù)數(shù)據(jù)越來越多樣化以及復(fù)雜化,多業(yè)務(wù)系統(tǒng)跨鏈交互的需求也越來越多。

目前利用區(qū)塊鏈來進(jìn)行數(shù)據(jù)的訪問控制,解決數(shù)據(jù)孤島問題,在很多領(lǐng)域的應(yīng)用越來越廣泛,但隨著數(shù)據(jù)的不斷增加,區(qū)塊鏈的存儲空間成為其限制條件,同時數(shù)據(jù)隱私也是數(shù)據(jù)共享面臨的關(guān)鍵問題。Liang 等[5]為了解決集中式醫(yī)療服務(wù)系統(tǒng)中的信息孤島問題,提出了一個基于輕量級信息共享的醫(yī)療區(qū)塊鏈系統(tǒng),該系統(tǒng)使用交織編碼器對原始的電子病例進(jìn)行加密,隱藏電子病歷的敏感信息,提出一種(t,n)門限的輕量級消息共享方案,將被交易編碼器破壞語義的電子病歷分成n份來存儲,每個區(qū)塊鏈節(jié)點存儲其中的一份,然后,用(t1

基于屬性的加密(Attribute-Based Encryption,ABE)技術(shù)不僅可以保護(hù)數(shù)據(jù)的隱私性,還可以對實體進(jìn)行細(xì)粒度的訪問控制,引起了很多研究學(xué)者的關(guān)注[12-13]。基于屬性加密的思想首先由Sahai 等[14]提出。Bethencourt 等[15]首次提出了基于密文策略的屬性加密(Ciphertext-Policy ABE,CP-ABE),CP-ABE 將訪問策略放置于密文中,將屬性集合放置在密鑰中,只有當(dāng)密鑰中用戶的屬性集合滿足密文中設(shè)置的訪問策略時,用戶才能對密文進(jìn)行解密獲得明文。針對單授權(quán)中心風(fēng)險過于集中的問題,Lewko 等[16]提出了一個具有多授權(quán)中心的屬性加密方案,其中任何一個授權(quán)中心都可以成為中心權(quán)威,每個屬性授權(quán)中心都是獨立的。Zhang 等[17]提出了一種去中心化的基于屬性加密方案,該方案包含一個中央機(jī)構(gòu)和多個屬性機(jī)構(gòu),每個屬性機(jī)構(gòu)負(fù)責(zé)互不相交的屬性域并且相互獨立。Zhang 等[18]為了解決智能電網(wǎng)數(shù)據(jù)共享中的隱私保護(hù)和數(shù)據(jù)安全問題,提出了一種具有隱私保護(hù)的多權(quán)限屬性加密方案。Banerjee 等[19]為了物聯(lián)網(wǎng)環(huán)境中的數(shù)據(jù)使用提出基于CP-ABE 的多權(quán)限屬性加密方案,并且具有恒定大小的密鑰和密文。在上述多屬性中心的屬性加密方案中,存在解密開銷過大的問題,本文提出一個支持可驗證外包解密的多授權(quán)屬性加密方案。

圍繞能源互聯(lián)網(wǎng)企業(yè)內(nèi)部數(shù)據(jù)訪問控制與企業(yè)之間數(shù)據(jù)共享過程中的隱私保護(hù)以及數(shù)據(jù)確權(quán)爭議問題,本文提出了一種基于多聯(lián)盟鏈和支持外包的多授權(quán)屬性加密算法的能源數(shù)據(jù)訪問控制方案。首先多聯(lián)盟鏈?zhǔn)潜O(jiān)管鏈和多條數(shù)據(jù)鏈的多鏈的架構(gòu),其中多條數(shù)據(jù)鏈存儲各能源公司的數(shù)據(jù),實現(xiàn)了不同能源公司數(shù)據(jù)的隔離保護(hù);監(jiān)管鏈存儲用戶跨通道數(shù)據(jù)訪問信息,可實現(xiàn)對數(shù)據(jù)的監(jiān)管、審計與確權(quán)。然后利用支持外包的多授權(quán)屬性加密技術(shù),緩解單授權(quán)中心風(fēng)險過于集中計算負(fù)載過重的問題;同時增加預(yù)解密算法,用來緩解解密計算開銷過大問題。最后通過安全性分析以及區(qū)塊鏈網(wǎng)絡(luò)的性能和支持外包的多授權(quán)屬性加密的仿真實驗分析表明,本文方案能有效防止隱私數(shù)據(jù)的泄露,實現(xiàn)能源數(shù)據(jù)的細(xì)粒度訪問控制。

1 基礎(chǔ)知識

1.1 區(qū)塊鏈

區(qū)塊鏈?zhǔn)且环N以區(qū)塊為單位有序鏈接起來的鏈?zhǔn)浇Y(jié)構(gòu)。區(qū)塊是指數(shù)據(jù)的集合,相關(guān)信息和記錄都包括在里面。區(qū)塊由區(qū)塊頭和區(qū)塊體兩部分組成:區(qū)塊頭一般包含版本號、前一個區(qū)塊的哈希值、merkle 根、時間戳等;區(qū)塊體一般包含自前一區(qū)塊之后發(fā)生的多筆數(shù)據(jù)交易信息。區(qū)塊鏈的本質(zhì)是一個多方維護(hù)的分布式賬本,其利用加密技術(shù)、默克爾樹和共識機(jī)制等技術(shù),實現(xiàn)了交易數(shù)據(jù)的透明、不可篡改以及可追蹤特性[20-21]。與傳統(tǒng)數(shù)據(jù)庫相比,區(qū)塊鏈的優(yōu)勢是數(shù)據(jù)防篡改、可信任、多方維護(hù)。

1.2 雙線性映射

定義1雙線性映射。設(shè)有三個p素數(shù)階乘法循環(huán)群G1、G2和Gt,g1是G1的生成元,g2是G2的生成元,若映射e:G1×G2→Gt滿足如下三個性質(zhì),則稱該映射是雙線性映射。

1)雙線性性。對于?g1∈G1,?g2∈G2,?a,b∈Zp,均有成立。

2)非退化性。?g1∈G1,?g2∈G2,使得e(g1,g2)≠1。

3)可計算性。存在有效的算法,對于?g1∈G1,?g2∈G2,均可計算e(g1,g2)。

1.3 支持外包的多授權(quán)屬性加密形式化定義

支持外包的多授權(quán)屬性加密主要包括以下6個算法:

1)全局初始化算法:CA_Setup(1λ) →(GP)。

輸入安全參數(shù)λ,由授權(quán)中心(Certificate Authority,CA)運行全局初始化算法生成系統(tǒng)的全局參數(shù)GP。

2)各屬性中心(Attribute Authorities,AA)初始化算法:AA_Setup(GP) →(ASK,APK)。

輸入全局參數(shù)GP,各屬性中心(AA)運行屬性中心初始化算法生成自己的公私鑰對APK,ASK。

3)密鑰生成算法:KeyGen(Uid,GP,S,ASK) →SKS,Uid,TKS,Uid。

輸入用戶的身份Uid,系統(tǒng)的全局參數(shù)GP,用戶屬性集合S和相關(guān)屬性中心的私鑰ASK,運行密鑰生成算法生成用戶屬性相對應(yīng)的用戶私鑰SKS,Uid,以及轉(zhuǎn)換密鑰TKS,Uid。

4)加密算法:Enc(GP,M,(A,ρ),{APK}) →CT。

輸入全局參數(shù)GP,明文M,設(shè)置的訪問策略(A,ρ)以及相關(guān)屬性中心的公鑰ASK,運行加密算法將明文M加密生成密文CT。

5)預(yù)解密算法:Pre?Dec(GP,CT,{TKS,Uid}) →CT'。

輸入全局參數(shù)GP,密文CT,以及轉(zhuǎn)換密鑰TKS,Uid,判斷轉(zhuǎn)換密鑰TKS,Uid中所包含的用戶的屬性集合是否滿足密文中設(shè)置的訪問策略,滿足則可以將密文解密為預(yù)解密密文CT',否則輸出⊥。

6)解密算法:Dec(GP,CT',{SKS,Uid}) →M。

輸入全局參數(shù)GP,預(yù)解密密文CT',以及用戶私鑰SKS,Uid,判斷用戶私鑰SKS,Uid中包含的屬性集合是否滿足密文中設(shè)置的訪問策略,滿足用戶可將密文解密為明文M;否則輸出⊥。

2 總體框架設(shè)計

2.1 系統(tǒng)模型

本文系統(tǒng)模型提出將區(qū)塊鏈多鏈與本地數(shù)據(jù)庫相結(jié)合,實現(xiàn)鏈上存儲數(shù)據(jù)摘要、鏈下存儲原始數(shù)據(jù)、同時結(jié)合支持外包的多屬性中心屬性加密機(jī)制,實現(xiàn)數(shù)據(jù)的細(xì)粒度訪問控制。模型如圖1所示,由如下6個實體組成:

圖1 能源數(shù)據(jù)訪問控制模型Fig.1 Energy data access control model

1)授權(quán)中心(CA)。主要負(fù)責(zé)生成系統(tǒng)全局參數(shù),在系統(tǒng)用戶申請注冊時,根據(jù)用戶的身份Uid,為其生成身份密鑰,并且為屬性中心AA生成唯一的Aid。

2)各屬性中心(AA)。屬性中心負(fù)責(zé)生成自己的公私鑰對,以及根據(jù)系統(tǒng)全局參數(shù)、數(shù)據(jù)用戶的身份密鑰和屬性集合為數(shù)據(jù)用戶生成屬性私鑰以及轉(zhuǎn)換密鑰。

3)數(shù)據(jù)擁有者(Data Owner,DO)。能源數(shù)據(jù)所有者,對能源數(shù)據(jù)進(jìn)行對稱加密并存儲在本地數(shù)據(jù)庫,同時可設(shè)置訪問控制策略,用于加密能源數(shù)據(jù)摘要、能源數(shù)據(jù)的存儲地址和加密的對稱密鑰,并將其上傳到相應(yīng)數(shù)據(jù)鏈。

4)數(shù)據(jù)用戶(Data User,DU)。能源數(shù)據(jù)用戶,用戶屬性滿足設(shè)置的訪問控制策略時,可以獲得訪問數(shù)據(jù)的存儲地址以及加密的對稱密鑰,進(jìn)而可以對獲得的密文數(shù)據(jù)進(jìn)行解密,得到明文能源數(shù)據(jù)。

5)聯(lián)盟鏈多鏈(Multi-Consortium BlockChain,MCBC)。不同數(shù)據(jù)鏈存儲不同通道內(nèi)的用戶能源數(shù)據(jù)摘要、存儲地址、對稱密鑰以及通道內(nèi)用戶的訪問信息,監(jiān)管鏈存儲跨通道數(shù)據(jù)訪問的信息,當(dāng)能源數(shù)據(jù)的所有權(quán)有疑問,可通過追溯歷史信息,實現(xiàn)數(shù)據(jù)的確權(quán)。

6)本地數(shù)據(jù)庫(Local DataBase,LDB)。數(shù)據(jù)擁有者將能源數(shù)據(jù)利用對稱加密技術(shù)進(jìn)行加密存儲在本地數(shù)據(jù)庫,以緩解區(qū)塊鏈的存儲壓力。

2.2 能源數(shù)據(jù)訪問控制方案

1)在用戶注冊階段,用戶向授權(quán)中心CA 發(fā)送注冊申請,授權(quán)中心CA 驗證數(shù)據(jù)用戶DU 的身份根據(jù)其身份編號Uid為其生成身份密鑰uk,然后屬性中心AA 根據(jù)數(shù)據(jù)訪問者DU 提交的身份密鑰uk和屬性集合S為其生成對應(yīng)的屬性私鑰SK以及轉(zhuǎn)換密鑰TK。

2)在能源數(shù)據(jù)授權(quán)階段,數(shù)據(jù)擁有者DU 使用SM4 加密算法對能源數(shù)據(jù)文件進(jìn)行加密存儲在本地數(shù)據(jù)庫,設(shè)置訪問策略(A,ρ),利用設(shè)定的訪問策略(A,ρ)對數(shù)據(jù)存儲地址addr、對稱加密密鑰進(jìn)行加密,得到密文CT,對加密后的數(shù)據(jù)以及數(shù)據(jù)摘要進(jìn)行上傳。

3)在能源數(shù)據(jù)上鏈階段,共識節(jié)點對數(shù)據(jù)信息進(jìn)行驗證、共識,產(chǎn)生新區(qū)塊并加入?yún)^(qū)塊鏈,能源數(shù)據(jù)摘要、存儲地址以及對稱加密密鑰則被存儲在所在通道內(nèi)的數(shù)據(jù)鏈以及監(jiān)管鏈內(nèi)。

4)在能源數(shù)據(jù)授權(quán)訪問階段:a)當(dāng)相同通道內(nèi)的數(shù)據(jù)用戶根據(jù)數(shù)據(jù)摘要申請訪問能源數(shù)據(jù)時,被授權(quán)用戶可根據(jù)自己的屬性私鑰成功獲得能源數(shù)據(jù)的存儲地址以及SM4對稱密鑰,在解密前可由通道內(nèi)的節(jié)點對鏈上加密數(shù)據(jù)進(jìn)行預(yù)解密,被授權(quán)用戶可對預(yù)解密密文進(jìn)行解密,然后根據(jù)存儲地址請求得到加密的能源數(shù)據(jù),使用對稱密鑰解密獲得明文數(shù)據(jù);而對于未被授權(quán)用戶則無法獲得能源數(shù)據(jù)的存儲地址,不能進(jìn)行數(shù)據(jù)的訪問,實現(xiàn)了可控的數(shù)據(jù)訪問。b)在跨通道能源數(shù)據(jù)授權(quán)訪問階段,數(shù)據(jù)用戶向監(jiān)管鏈節(jié)點發(fā)送數(shù)據(jù)請求信息以及自己的屬性私鑰,監(jiān)管鏈節(jié)點則調(diào)用鏈碼向相應(yīng)通道內(nèi)的數(shù)據(jù)鏈申請數(shù)據(jù)的存儲地址以及對稱密鑰,監(jiān)管鏈節(jié)點獲得加密數(shù)據(jù),對跨通道數(shù)據(jù)用戶的屬性進(jìn)行驗證判斷其是否符合訪問控制策略要求,符合要求則將加密的數(shù)據(jù)存儲地址以及對稱密鑰進(jìn)行解密,獲得預(yù)解密密文并將其返回給數(shù)據(jù)用戶,數(shù)據(jù)用戶利用屬性私鑰可解密獲得數(shù)據(jù)的存儲地址以及對稱密鑰,然后根據(jù)存儲地址請求數(shù)據(jù)獲得對稱加密的密文數(shù)據(jù),用對稱密鑰解密密文獲得明文能源數(shù)據(jù)。

2.3 多鏈架構(gòu)

本設(shè)計利用Fabric 中的通道來對不同能源公司的數(shù)據(jù)進(jìn)行隔離,每個通道都有自己的賬本,只有屬于該通道的特定的組織內(nèi)的節(jié)點才能訪問維護(hù)其賬本,不同通道的組織節(jié)點無法直接進(jìn)行跨通道的數(shù)據(jù)訪問。本文擬把各能源公司看作不同的組織,各能源公司分別處于不同的通道內(nèi),以對能源公司的數(shù)據(jù)進(jìn)行隔離保護(hù)。各能源公司內(nèi)部選擇節(jié)點來維護(hù)自己的數(shù)據(jù)鏈,同時引入政府能源部門、社會權(quán)威部門等節(jié)點組成監(jiān)管組織,存在于各個通道的交叉通道內(nèi),監(jiān)管節(jié)點存儲各交叉通道內(nèi)的數(shù)據(jù)鏈以及用戶進(jìn)行跨通道數(shù)據(jù)訪問的信息。當(dāng)監(jiān)管節(jié)點對用戶的數(shù)據(jù)有異議時,可追溯歷史信息,查找檢查數(shù)據(jù);當(dāng)數(shù)據(jù)有確權(quán)爭議時,監(jiān)管節(jié)點也可查看存儲的用戶跨通道數(shù)據(jù)訪問的信息,確定爭議數(shù)據(jù)具體屬于哪個用戶。多鏈架構(gòu)如圖2所示。

圖2 多鏈架構(gòu)Fig.2 Multi-chain architecture

2.4 多鏈交互

目前主流的區(qū)塊鏈跨鏈技術(shù)主要有公證人機(jī)制、側(cè)鏈技術(shù)、中繼技術(shù)以及哈希鎖定等[22-23]。其中中繼技術(shù)通過中繼鏈來實現(xiàn)各單鏈的交互,可很好地實現(xiàn)多鏈的跨鏈互聯(lián)。本文多鏈架構(gòu)中處于不同通道內(nèi)的用戶不能直接進(jìn)行數(shù)據(jù)的訪問,如圖3 所示,多鏈交互采用中繼機(jī)制,有跨鏈需求的數(shù)據(jù)鏈可向中繼鏈申請加入多鏈系統(tǒng),中繼鏈保存各數(shù)據(jù)鏈的信息以及與數(shù)據(jù)鏈的聯(lián)絡(luò)節(jié)點。當(dāng)數(shù)據(jù)鏈A的用戶想要訪問數(shù)據(jù)鏈B 的數(shù)據(jù),需要提交跨鏈數(shù)據(jù)訪問的請求,由數(shù)據(jù)鏈A 的聯(lián)絡(luò)節(jié)點將訪問請求發(fā)送到中繼鏈(即監(jiān)管鏈)節(jié)點,等待中繼鏈驗證操作,然后中繼鏈節(jié)點調(diào)用鏈碼訪問數(shù)據(jù)鏈B 相應(yīng)的數(shù)據(jù);數(shù)據(jù)鏈B 的聯(lián)絡(luò)節(jié)點接收到訪問請求向用戶收集相關(guān)數(shù)據(jù),并將數(shù)據(jù)返回給中繼鏈節(jié)點,由中繼鏈節(jié)點將數(shù)據(jù)返回給數(shù)據(jù)鏈A 的聯(lián)絡(luò)節(jié)點,再由數(shù)據(jù)鏈A 的聯(lián)絡(luò)節(jié)點將數(shù)據(jù)返回給數(shù)據(jù)鏈A 的用戶。當(dāng)跨鏈數(shù)據(jù)訪問成功,監(jiān)管鏈存儲跨鏈數(shù)據(jù)訪問的信息,實現(xiàn)跨鏈過程的數(shù)據(jù)可追溯以及數(shù)據(jù)的確權(quán)。

2.5 安全模型

本文方案使用選擇明文攻擊模型,該安全模型通過挑戰(zhàn)者B與敵手A之間的交互游戲進(jìn)行,具體步驟如下:

1)初始化階段Setup。首先由挑戰(zhàn)者B運行全局初始化算法,生成系統(tǒng)的全局參數(shù)GP。然后由敵手A指定被破壞的AA 的集合。每個屬性中心AA 都執(zhí)行AA 初始化算法,生成公私鑰對。對于被破壞的AA,敵手可以得到公鑰和私鑰;對于正常的AA,敵手只能得到公鑰。

2)詢問階段Phase1。敵手A向挑戰(zhàn)者B發(fā)起屬性集為S=(y1,y2,…,yq1)的私鑰以及轉(zhuǎn)換密鑰詢問,屬性集合不能滿足敵手A要挑戰(zhàn)的訪問結(jié)構(gòu)(A,ρ),挑戰(zhàn)者B運行密鑰生成算法為敵手A生成屬性集S相對應(yīng)的私鑰以及轉(zhuǎn)換密鑰。

3)挑戰(zhàn)階段Challenge。敵手A向挑戰(zhàn)者B發(fā)送兩個等長的消息M0,M1。挑戰(zhàn)者B收到消息后,隨機(jī)地拋一枚公平硬幣,根據(jù)結(jié)果b∈{0,1}來加密消息,并且在訪問結(jié)構(gòu)(A,ρ)下加密,生成加密密文CT,然后挑戰(zhàn)者B將挑戰(zhàn)密文發(fā)送給敵手A。

4)詢問階段Phase2。重復(fù)Phase1,繼續(xù)向挑戰(zhàn)者B發(fā)起私鑰以及轉(zhuǎn)換密鑰詢問,私鑰及轉(zhuǎn)換密鑰的屬性集合不能滿足要挑戰(zhàn)的訪問結(jié)構(gòu)(A,ρ)。

5)猜測階段Guess。敵手A輸出關(guān)于密文b的猜測b'。如果b'=b,則敵手A贏得該游戲。

在上述游戲中,敵手A贏得該游戲的優(yōu)勢為:AdvA=。

定義2如果對于所有概率多項式時間的敵手A,贏得上述交互游戲的概率至多為AdvA,且AdvA是可以忽略不計的,那么本屬性基加密方案在選擇明文攻擊下是安全的。

2.6 支持外包的多授權(quán)屬性加密方案

算法具體步驟如下:

1)全局初始化算法:CA_Setup。

輸入安全參數(shù)λ,由授權(quán)中心CA 選擇兩個階均為素數(shù)P的乘法循環(huán)群G,GT,g為G的生成元,定義雙線性映射e:G×G→GT,選擇一個哈希函數(shù)H:{0,1}*→G,同時隨機(jī)選取a∈Zp,計 算h=ga。輸出系統(tǒng)的全局參數(shù)GP={g,h,G,GT,H}

當(dāng)該系統(tǒng)收到用戶的注冊請求時,系統(tǒng)根據(jù)用戶的Uid,隨機(jī)取ruid∈Zp,為其生成身份密鑰,公鑰ukuid,d=gruid,d。

當(dāng)一個AA 加入系統(tǒng)時,CA 需要對AA 的身份進(jìn)行認(rèn)證,如果該屬性授權(quán)機(jī)構(gòu)是合法的,則為其分配一個系統(tǒng)唯一的身份標(biāo)識Aid。

2)AA初始化算法:AA_Setup。

輸入系統(tǒng)的全局參數(shù)GP,根據(jù)每個屬性授權(quán)機(jī)構(gòu)AAi負(fù)責(zé)的屬性集U n,對每個屬性i∈Un隨機(jī)取一個數(shù)αi,βi∈Zp,運行初始化算法,輸出屬性中心AAi的公鑰

3)密鑰生成算法:KeyGen。

輸入用戶的身份Uid,系統(tǒng)的全局參數(shù)GP,用戶屬性集合S和相關(guān)屬性中心的私鑰,AAi運行密鑰生成算法生成用戶屬性相對應(yīng)的用戶私鑰SKi,uid以及用戶屬性相對應(yīng)的轉(zhuǎn)換密鑰TKuid。

隨機(jī)選擇t,z∈Zp,設(shè)用戶的屬性集合為S,用戶私鑰SKi,uid和轉(zhuǎn)換公鑰TPKuid為:

轉(zhuǎn)換私鑰TSKuid=z,轉(zhuǎn)換密鑰TKuid=(TPKuid,TSKuid)。

4)加密算法:Enc。

數(shù)據(jù)加密階段,由數(shù)據(jù)擁有者(DO)執(zhí)行,輸入系統(tǒng)的全局參數(shù)GP以及明文M,此外輸入設(shè)置的LSSS(Linear Secret Sharing Scheme)類型的訪問策略(A,ρ),函數(shù)ρ將矩陣A的每一行映射到一個屬性,其中A是一個l×n的矩陣,l代表屬性數(shù)量,DO 隨機(jī)選取一個用于共享的秘密值s∈Zp和一個隨機(jī)向量v=(s,r2,r3,…,rn)∈Zp,密文

5)預(yù)解密算法:Pre-dec。

輸入系統(tǒng)的全局參數(shù)GP,密文CT,以及用戶屬性集合對應(yīng)的轉(zhuǎn)換密鑰TK,判斷屬性集合S中的屬性是否滿足密文中設(shè)置的訪問策略(A,ρ):若滿足則可以將密文成功解密,獲得預(yù)解密密文;若屬性集合S中的屬性不滿足密文中設(shè)置的訪問策略(A,ρ),則輸出⊥。

計算預(yù)解密密文為:

6)解密算法:Dec。

數(shù)據(jù)解密階段,輸入為用戶私鑰及預(yù)解密密文并計算:

3 安全分析

3.1 系統(tǒng)安全

1)系統(tǒng)的數(shù)據(jù)隱私保護(hù)問題。區(qū)塊鏈的基本特性使得存儲在區(qū)塊鏈中的數(shù)據(jù)是不可更改的、可信任的。能源數(shù)據(jù)在存儲到數(shù)據(jù)庫時使用SM4 算法進(jìn)行加密,其加密密鑰以及數(shù)據(jù)摘要通過設(shè)置的訪問策略加密后存儲到通道內(nèi)的數(shù)據(jù)鏈,只有滿足訪問策略的用戶才能解密數(shù)據(jù),保證了數(shù)據(jù)的機(jī)密性。本文通道中的數(shù)據(jù)相互隔離,每個通道都有自己的賬本,只有屬于該通道的特定的組織內(nèi)的節(jié)點才能訪問維護(hù)其賬本,不同通道的組織節(jié)點無法直接進(jìn)行跨通道訪問。當(dāng)數(shù)據(jù)用戶訪問數(shù)據(jù)時,首先用自己的屬性私鑰解密鏈上密文數(shù)據(jù)獲得對稱密鑰、數(shù)據(jù)摘要以及存儲地址,然后請求能源數(shù)據(jù)密文,根據(jù)對稱密鑰解密密文得到能源數(shù)據(jù)。數(shù)據(jù)擁有者設(shè)置訪問策略,相當(dāng)于數(shù)據(jù)擁有者對數(shù)據(jù)用戶進(jìn)行授權(quán)。因此,數(shù)據(jù)擁有者能夠?qū)ψ约旱哪茉磾?shù)據(jù)進(jìn)行細(xì)粒度訪問控制。

2)數(shù)據(jù)鏈跨鏈的安全問題。為了更好地實現(xiàn)區(qū)塊鏈跨鏈,實現(xiàn)數(shù)據(jù)鏈間的互聯(lián)互通,通過中繼鏈機(jī)制使得位于不同通道的數(shù)據(jù)鏈能夠進(jìn)行跨鏈交互。數(shù)據(jù)鏈之間的交互需要數(shù)據(jù)鏈聯(lián)絡(luò)節(jié)點與監(jiān)管鏈節(jié)點的協(xié)同來實現(xiàn),因此跨鏈安全要保證通信安全,可以選擇安全可信的通信技術(shù)來保護(hù)跨鏈的通信。跨鏈通信中如果數(shù)據(jù)鏈存在欺騙性交互,則其造成的損失會由主鏈或其他數(shù)據(jù)鏈的用戶承擔(dān),因此對接入系統(tǒng)的數(shù)據(jù)鏈進(jìn)行安全認(rèn)證;同時跨鏈的安全性與監(jiān)管鏈節(jié)點的安全可信有很大的關(guān)系,對監(jiān)管鏈節(jié)點設(shè)置準(zhǔn)入機(jī)制,以及對其跨鏈通信行為進(jìn)行監(jiān)控,來遏制節(jié)點的惡意行為。

3.2 安全性分析

3.2.1 數(shù)據(jù)的機(jī)密性

在數(shù)據(jù)共享系統(tǒng)中,如果數(shù)據(jù)用戶的屬性集合不能滿足密文中設(shè)置的訪問策略,用戶則不能解密密文得到最終明文。本文的數(shù)據(jù)機(jī)密性建立在不可區(qū)分性選擇明文攻擊(Indistinguishable Chosen-Plaintext Attack,IND-CPA)模型安全上,即攻擊者無法根據(jù)加密的消息區(qū)分密文。

定理1如果存在一個敵手A可以在多項式時間內(nèi)以不可忽略的優(yōu)勢ε贏得安全游戲,那么可以構(gòu)造另一個多項式時間內(nèi)的敵手以ε/2 的優(yōu)勢解決決定性雙線性Diffie-Hellman(Decisional Bilinear Diffie-Hellman,DBDH)困難問題。

證明 給定兩個階為P的循環(huán)群G,GT,設(shè)g是G群的生成元,e為雙線性映射。另外,給定敵手A一個DBDH 實例(g,ga,gb,gc,e(g,g)z),其中z=abc或者z∈Zp是一個隨機(jī)數(shù),挑戰(zhàn)者B與敵手A進(jìn)行如下的模擬游戲:

本文方案使用IND-CPA 模型,該安全模型通過IND-CPA的交互游戲來模擬。游戲在挑戰(zhàn)者B與敵手A之間進(jìn)行,具體步驟如下:

1)初始化階段(Setup)。挑戰(zhàn)者B運行全局初始化算法CA_Setup,生成全局參數(shù)GP={g,h=ga,G,GT,H}給敵手A。敵手指定被破壞的AA 的集合,然后將其返回給挑戰(zhàn)者B。每個AA 都執(zhí)行AA 初始化算法AA_Setup,生成公鑰APKAAi=和私鑰。對于被破壞的AA,敵手獲得公鑰和私鑰;對于正常的AA,敵手只獲得公鑰。

2)詢問階段(Phase1)。敵手A向挑戰(zhàn)者B發(fā)起屬性集合Suid的私鑰詢問以及轉(zhuǎn)換密鑰詢問,其中屬性集合Suid不滿足設(shè)置的訪問結(jié)構(gòu)(A,ρ),挑戰(zhàn)者B運行密鑰生成算法KeyGen為A生成對應(yīng)私鑰{SK1,uid,SK2,uid,…,SKi,uid},以及轉(zhuǎn)換密鑰TK。隨機(jī)選擇t,z∈Zp,設(shè)用戶的屬性集合為S,對于任意x∈S,計算參數(shù),然后將這些參數(shù)發(fā)送給敵手A。

3)挑戰(zhàn)階段(Challenge)。敵手A發(fā)送兩個等長的消息M0、M1給挑戰(zhàn)者B。挑戰(zhàn)者B收到消息后,隨機(jī)地拋一枚公平硬幣,根據(jù)結(jié)果b∈{0,1}來加密消息,并且在訪問結(jié)構(gòu)(A,ρ)下加密,加密密文為CT,計算參數(shù),然 后B將 挑戰(zhàn)密文CT=(C0,C,C1,x,C2,x,C3,x,?x∈[1,m])發(fā)送給敵手A。

4)詢問階段(Phase2)。重復(fù)Phase1,繼續(xù)向挑戰(zhàn)者B發(fā)起屬性集的私鑰、轉(zhuǎn)換密鑰的訪問,用戶的屬性集合Suid不滿足設(shè)置的訪問結(jié)構(gòu)(A,ρ)。

5)猜測階段(Guess)。敵手A輸出關(guān)于密文b的猜測b'∈{0,1}。如果b'=b,挑戰(zhàn)者B輸出0,則Z=e(g,g)abc;否則輸出1,則Z=R。如果b=0,敵手的優(yōu)勢為ε,那么+ε;如 果b=1,那 么。所以挑戰(zhàn)者B在DBDH游戲中的優(yōu)勢為:

因此,如果敵手以不可忽略的優(yōu)勢攻破了本文方案,那么挑戰(zhàn)者B能以ε/2的優(yōu)勢解決DBDH困難問題。

3.2.2 抗合謀攻擊

1)針對屬性中心合謀攻擊。本文方案有n個AA 共同管理數(shù)據(jù)用戶DU 的屬性集合,每個AA 分別保管不相交的屬性集合,并且生成合法用戶的一部分私鑰SKi。一種情況是當(dāng)惡意用戶想要解密不屬于自己的密文時,就需要截獲每個AA生成的部分SKi并進(jìn)行組裝,才能獲得最終的密鑰SK,從而解密文件;只要有一個AA 的部分私鑰未被泄露,惡意用戶便不能計算出SK,這樣攻擊者獲得的密鑰是不能滿足待解密密文中訪問結(jié)構(gòu)所要求的屬性值的,最終攻擊者不能解密密文。所以,本文方案可以抵抗針對n-1的AA合謀攻擊。

2)對于用戶合謀攻擊。在本文方案中,當(dāng)用戶的屬性集合不滿足訪問結(jié)構(gòu)時,當(dāng)有多個用戶進(jìn)行合謀共用屬性私鑰,合謀后的屬性集合滿足設(shè)置的訪問結(jié)構(gòu)時也不能對密文成功解密。本文方案在初始化階段為每一個用戶生成全局唯一的用戶身份標(biāo)識Uid,在密鑰生成階段,將用戶的身份標(biāo)識Uid嵌入到用戶的私鑰和轉(zhuǎn)換密鑰中,在預(yù)解密及解密階段如果用戶的私鑰和轉(zhuǎn)換密鑰中包含不同的身份標(biāo)識Uid,則將不能成功解密。所以本文方案是可以抵抗用戶合謀攻擊的。

4 實驗與結(jié)果分析

4.1 區(qū)塊鏈網(wǎng)絡(luò)性能

區(qū)塊鏈網(wǎng)絡(luò)實驗測試環(huán)境如表1所示。

表1 測試環(huán)境Tab.1 Test environment

測試區(qū)塊鏈網(wǎng)絡(luò)運行在單臺主機(jī)上,包含分屬于2 個組織的單個節(jié)點,2 個MSP(Membership Service Provider),1 個采用Solo 共識的排序服務(wù),位于同一個通道內(nèi)。測試方法為向區(qū)塊鏈網(wǎng)絡(luò)發(fā)送5 000 筆交易,交易類型為寫入和查詢,觀察在不同的交易發(fā)送頻率(Send Rate)下,系統(tǒng)的平均時延(Avg Latency)和吞吐量的變化結(jié)果。結(jié)果如圖4~5所示。

圖4 查詢性能Fig.4 Query performance

可以看到平均時延隨著交易發(fā)送頻率的增加均有所上升,吞吐量在交易類型為查詢,交易發(fā)送頻率為每秒150 筆交易數(shù)(Transactions Per Second,TPS)時達(dá)到最大,吞吐量在交易類型為寫入,交易發(fā)送頻率為75 TPS時達(dá)到最大。

圖5 寫入性能Fig.5 Writie performance

4.2 支持外包的多授權(quán)屬性加密實驗

支持外包的多授權(quán)屬性加密的實驗環(huán)境如下:操作系統(tǒng)為64 位Windows 10 家庭中文版,CPU 為Inter Core E8400@3.00 GHz,內(nèi)存大小為4 GB 內(nèi)存,使用jpbc2.0.0 庫,根據(jù)提供的TypeA 曲線構(gòu)造雙線性映射,利用Java 開發(fā)語言來實現(xiàn)本文支持外包的多授權(quán)屬性加密方案。

如表2 所示,本文方案與相關(guān)方案功能性比較:文獻(xiàn)[15]方案不支持多屬性中心以及預(yù)解密;文獻(xiàn)[16-24]方案支持多屬性中心,但沒有預(yù)解密階段;本文引入多屬性中心,解決單屬性中心風(fēng)險過于集中計算負(fù)載過重的問題,然后增加了預(yù)解密階段,減少數(shù)據(jù)用戶的解密開銷。

表2 本文方案與其他方案的功能性比較Tab.2 Functionality comparison of proposed scheme and other schemes

本文方案與其他方案算法的各階段計算量的比較如表3所示。在密鑰生成階段,因為本文方案增加了轉(zhuǎn)換密鑰的生成,所以本文方案計算量比文獻(xiàn)[16]方案高;但與文獻(xiàn)[24]方案相比,本文方案減少了指數(shù)運算所以計算量較低;在加密階段,本文方案減少了指數(shù)運算,計算量比文獻(xiàn)[16,24]方案低;在解密階段,因本文方案增加了預(yù)解密階段,所以本階段只需進(jìn)行一次指數(shù)運算就可以恢復(fù)出明文,本文方案比文獻(xiàn)[16,24]方案大幅降低了解密開銷。

表3 本文方案與其他方案算法的各階段計算量比較Tab.3 Comparison of proposed scheme and other schemes in computing cost at each stage

在密鑰生成階段、加密階段、解密階段將本文方案與文獻(xiàn)[16]方案和文獻(xiàn)[24]方案進(jìn)行實驗對比分析,如圖6~8 所示,其中屬性機(jī)構(gòu)數(shù)量固定為3個。

圖6 不同方案的密鑰生成時間對比Fig.6 Key generation time comparison of different schemes

圖7 不同方案的加密時間對比Fig.7 Encryption time comparison of different schemes

圖8 不同方案的解密時間對比Fig.8 Decryption time comparison of different schemes

5 結(jié)語

為了實現(xiàn)能源互聯(lián)網(wǎng)數(shù)據(jù)企業(yè)內(nèi)部與企業(yè)之間的細(xì)粒度訪問控制,本文基于區(qū)塊鏈多鏈、支持外包的多授權(quán)屬性加密等技術(shù)提出了一種多鏈架構(gòu)的能源數(shù)據(jù)訪問控制方法,其中通過多數(shù)據(jù)鏈實現(xiàn)各能源公司數(shù)據(jù)的隔離保護(hù),采用監(jiān)管鏈實現(xiàn)跨數(shù)據(jù)鏈的交互以及存儲跨數(shù)據(jù)鏈訪問的信息對數(shù)據(jù)進(jìn)行監(jiān)管、審計以及確權(quán);數(shù)據(jù)訪問控制過程中,利用支持外包的多授權(quán)屬性加密技術(shù),在滿足細(xì)粒度訪問控制的同時,解決單授權(quán)機(jī)構(gòu)負(fù)擔(dān)過重、風(fēng)險集中的問題以及緩解數(shù)據(jù)用戶解密計算開銷過大的問題。實驗結(jié)果表明,本文方案可以在保護(hù)用戶隱私的同時實現(xiàn)能源數(shù)據(jù)的細(xì)粒度訪問控制。

猜你喜歡
用戶
雅閣國內(nèi)用戶交付突破300萬輛
車主之友(2022年4期)2022-08-27 00:58:26
您撥打的用戶已戀愛,請稍后再哭
關(guān)注用戶
商用汽車(2016年11期)2016-12-19 01:20:16
關(guān)注用戶
商用汽車(2016年5期)2016-11-28 09:55:15
兩新黨建新媒體用戶與全網(wǎng)新媒體用戶之間有何差別
關(guān)注用戶
商用汽車(2016年6期)2016-06-29 09:18:54
關(guān)注用戶
商用汽車(2016年4期)2016-05-09 01:23:12
挖掘用戶需求尖端科技應(yīng)用
Camera360:拍出5億用戶
100萬用戶
主站蜘蛛池模板: 天天色天天综合网| 99热这里只有免费国产精品 | 麻豆国产精品| 老司国产精品视频| 国产在线拍偷自揄观看视频网站| 精品国产Av电影无码久久久| 美女一区二区在线观看| 999国产精品| 免费观看亚洲人成网站| 在线国产你懂的| 亚洲午夜国产精品无卡| 国产高清又黄又嫩的免费视频网站| 日本欧美中文字幕精品亚洲| 国产精品冒白浆免费视频| 国产91无码福利在线| 女人爽到高潮免费视频大全| 超级碰免费视频91| 亚洲精选高清无码| 在线国产综合一区二区三区| 国产成人免费手机在线观看视频 | 免费 国产 无码久久久| 深爱婷婷激情网| 亚洲天堂精品视频| 在线日韩日本国产亚洲| 五月婷婷丁香综合| 婷婷综合亚洲| 在线观看免费黄色网址| 呦视频在线一区二区三区| 国产精品手机在线播放| 欧美国产菊爆免费观看| 国产91小视频| 日本久久免费| 亚洲综合九九| 欧美精品色视频| 在线精品亚洲国产| 婷婷六月天激情| 国产精品久久久精品三级| 国产成人91精品免费网址在线| 亚洲中字无码AV电影在线观看| 欧美精品另类| 国产精欧美一区二区三区| 久久国产av麻豆| 欧美一级色视频| 欧美色丁香| 国产黄在线观看| 国产精品无码一二三视频| 国产精品九九视频| 午夜视频日本| 亚洲永久色| 无码精油按摩潮喷在线播放 | 亚洲精品中文字幕午夜| 91精品啪在线观看国产60岁 | 97成人在线观看| 亚洲成人手机在线| 午夜精品国产自在| 特黄日韩免费一区二区三区| 国产精品视频观看裸模| 亚洲无码91视频| 欧美午夜理伦三级在线观看| 欧美日韩午夜视频在线观看| 日韩中文精品亚洲第三区| 在线欧美日韩国产| 国产欧美综合在线观看第七页| 日本伊人色综合网| 97视频在线精品国自产拍| 国内a级毛片| 国产95在线 | 精品自拍视频在线观看| 国产产在线精品亚洲aavv| 亚洲最大综合网| 亚洲婷婷丁香| 第九色区aⅴ天堂久久香| 中文纯内无码H| 亚洲午夜福利精品无码| 韩日无码在线不卡| 找国产毛片看| 欧美啪啪网| 国产www网站| 亚洲国产系列| 亚州AV秘 一区二区三区| 丰满人妻久久中文字幕| 亚洲无码日韩一区|