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

        ?

        基于區(qū)塊鏈的可溯源訪問控制機(jī)制

        2021-01-19 04:58:14謝絨娜李暉史國振郭云川張銘董秀則
        通信學(xué)報(bào) 2020年12期
        關(guān)鍵詞:發(fā)送給訪問控制日志

        謝絨娜,李暉,史國振,郭云川,張銘,董秀則

        (1.北京電子科技學(xué)院密碼科學(xué)與技術(shù)系,北京 100070;2.西安電子科技大學(xué)網(wǎng)絡(luò)與信息安全學(xué)院,陜西 西安 710071;3.中國科學(xué)院信息工程研究所,北京 100093)

        1 引言

        隨著云計(jì)算、物聯(lián)網(wǎng)、大數(shù)據(jù)等信息技術(shù)的發(fā)展,分布在不同域的各種不同系統(tǒng)、設(shè)備之間頻繁地互聯(lián)互通,相互之間數(shù)據(jù)的訪問和流轉(zhuǎn)成為一種趨勢(shì)。在數(shù)據(jù)訪問和流轉(zhuǎn)中,數(shù)據(jù)的安全性和隱私性成為制約信息技術(shù)發(fā)展的瓶頸。訪問控制技術(shù)為合法的主體在特定的訪問環(huán)境下授予一定的訪問權(quán)限,成為保障數(shù)據(jù)安全和隱私的主要手段。

        現(xiàn)有的基于角色的訪問控制機(jī)制(RBAC,role based access control)基于主體的角色進(jìn)行訪問授權(quán),基于屬性的訪問控制機(jī)制(ABAC,attribute based access control)基于主體屬性、客體屬性和環(huán)境屬性進(jìn)行訪問授權(quán)。傳統(tǒng)的訪問控制機(jī)制大多通過集中授權(quán)點(diǎn)進(jìn)行訪問授權(quán),存在單點(diǎn)失效導(dǎo)致整個(gè)控制系統(tǒng)失效以及性能瓶頸等問題,還存在訪問過程不可追蹤和溯源等缺點(diǎn)。如何實(shí)現(xiàn)訪問控制過程的無中心、透明性、可溯源成為訪問控制機(jī)制急需解決的問題。

        區(qū)塊鏈技術(shù)允許建立一個(gè)分布式、透明的、不可篡改的賬本,因此受到越來越多的關(guān)注。自2008年被引入加密貨幣[1]以來,區(qū)塊鏈技術(shù)被廣泛應(yīng)用于物聯(lián)網(wǎng)、云計(jì)算、大數(shù)據(jù)等場(chǎng)景[2-5]。Maesa 等[6]將區(qū)塊鏈技術(shù)引入訪問控制中,通過區(qū)塊鏈實(shí)現(xiàn)訪問控制策略的存儲(chǔ)和檢索,而訪問控制策略的評(píng)估通過傳統(tǒng)的訪問控制系統(tǒng)實(shí)現(xiàn)。文獻(xiàn)[7]將基于屬性的訪問控制策略轉(zhuǎn)化成智能合約(SC,smart contract)并部署在區(qū)塊鏈上,通過智能合約實(shí)現(xiàn)訪問控制策略的評(píng)估和屬性管理。上述文獻(xiàn)對(duì)于如何實(shí)現(xiàn)數(shù)據(jù)訪問的可追蹤和溯源沒有給出很好的解決方案,同時(shí)存在一次授權(quán)多次訪問的問題。

        針對(duì)上述問題,本文利用區(qū)塊鏈無中心、透明性和不可篡改等優(yōu)點(diǎn),以基于屬性的訪問控制機(jī)制為基礎(chǔ),提出了基于區(qū)塊鏈的可溯源訪問控制機(jī)制。該機(jī)制采用鏈上和鏈下相結(jié)合的方式,將客體資源存儲(chǔ)在鏈下的數(shù)據(jù)服務(wù)器中,基于客體存儲(chǔ)地址和摘要值生成客體索引存儲(chǔ)在區(qū)塊鏈上;將訪問控制策略以智能合約的方式部署在客體區(qū)塊鏈上,通過執(zhí)行區(qū)塊鏈上的智能合約實(shí)現(xiàn)訪問控制過程的透明性,并將訪問授權(quán)日志和訪問日志記錄在日志區(qū)塊鏈上,在保障客體隱私性的前提下,實(shí)現(xiàn)訪問過程無中心、透明性和可溯源。

        本文主要貢獻(xiàn)如下。

        1) 提出了基于區(qū)塊鏈的可溯源訪問控制機(jī)制,把訪問控制策略以智能合約的形式部署在區(qū)塊鏈上,訪問控制執(zhí)行和評(píng)估通過執(zhí)行區(qū)塊鏈上分布式的智能合約實(shí)現(xiàn),實(shí)現(xiàn)了訪問授權(quán)的無中心和透明性,有效防止了策略執(zhí)行點(diǎn)和策略決策點(diǎn)非法授權(quán)或者拒絕訪問請(qǐng)求等問題,同時(shí)避免了集中授權(quán)造成的性能瓶頸。

        2) 為保護(hù)客體資源的隱私性,采用鏈上和鏈下相結(jié)合的方式,客體資源采用鏈下的方式存儲(chǔ)在數(shù)據(jù)服務(wù)器,基于客體存儲(chǔ)地址及摘要值生成的客體索引存儲(chǔ)在客體區(qū)塊鏈上,提高了客體資源的安全性和隱私性。

        3) 向授權(quán)訪問主體分發(fā)訪問憑據(jù),并把訪問憑據(jù)不可修改地記錄在區(qū)塊鏈上。主體在對(duì)客體訪問時(shí),通過區(qū)塊鏈對(duì)主體訪問憑據(jù)的有效性進(jìn)行驗(yàn)證,實(shí)現(xiàn)細(xì)粒度的訪問控制,有效避免了一次授權(quán)多次訪問的問題。

        4) 將區(qū)塊鏈分為客體區(qū)塊鏈和日志區(qū)塊鏈,其中日志區(qū)塊鏈詳細(xì)記錄了訪問授權(quán)日志和客體訪問日志,實(shí)現(xiàn)訪問授權(quán)過程的可追蹤和可溯源。

        2 相關(guān)工作

        區(qū)塊鏈由于無中心、透明性、不可篡改等優(yōu)點(diǎn),被廣泛應(yīng)用在物聯(lián)網(wǎng)、云計(jì)算、大數(shù)據(jù)等不同場(chǎng)景[2-5],用來實(shí)現(xiàn)數(shù)據(jù)的安全性和隱私性。訪問控制是保證數(shù)據(jù)安全的一種有效手段,傳統(tǒng)的訪問控制采用中心授權(quán),存在單點(diǎn)失效以及性能瓶頸等問題,同時(shí)傳統(tǒng)訪問控制存在訪問過程不透明、不可追蹤和溯源等缺點(diǎn),已有不少文獻(xiàn)將區(qū)塊鏈技術(shù)應(yīng)用到訪問控制中。Maesa 等[6]利用區(qū)塊鏈技術(shù)實(shí)現(xiàn)訪問控制,通過比特幣協(xié)議實(shí)現(xiàn)訪問控制策略的存儲(chǔ)和檢索,而訪問控制策略的評(píng)估通過傳統(tǒng)的訪問控制系統(tǒng)實(shí)現(xiàn)。智能合約是部署在區(qū)塊鏈上的計(jì)算機(jī)程序,當(dāng)滿足必要條件時(shí),以無中心的方式自動(dòng)執(zhí)行某些功能。最近不少方案采用區(qū)塊鏈和智能合約實(shí)現(xiàn)訪問控制。文獻(xiàn)[8]對(duì)文獻(xiàn)[6]的方案進(jìn)行改進(jìn),通過智能合約實(shí)現(xiàn)訪問控制的主要功能。為提高訪問控制策略評(píng)估的可審計(jì)性,文獻(xiàn)[7]將基于屬性的訪問控制策略轉(zhuǎn)化成智能合約并部署在區(qū)塊鏈上,通過智能合約實(shí)現(xiàn)訪問控制策略的評(píng)估和屬性管理。針對(duì)大數(shù)據(jù)資源的特點(diǎn)以及集中式訪問控制機(jī)制存在的問題,劉敖迪等[9]以ABAC 模型為基礎(chǔ),提出一種基于區(qū)塊鏈的大數(shù)據(jù)訪問控制機(jī)制,該機(jī)制采用基于智能合約的訪問控制方法實(shí)現(xiàn)對(duì)大數(shù)據(jù)資源透明、動(dòng)態(tài)、自動(dòng)化的訪問控制。針對(duì)物聯(lián)網(wǎng)中的特點(diǎn),杜瑞忠等[10]提出一種基于層級(jí)區(qū)塊鏈的物聯(lián)網(wǎng)分布式體系架構(gòu),該架構(gòu)以ABAC 模型為基礎(chǔ),采用智能合約的方式實(shí)現(xiàn)對(duì)物聯(lián)網(wǎng)設(shè)備基于屬性的域內(nèi)和跨域的動(dòng)態(tài)、自動(dòng)化訪問控制。

        數(shù)據(jù)安全保護(hù)是安全領(lǐng)域的一個(gè)研究熱點(diǎn)。2018年5月,通用數(shù)據(jù)保護(hù)條例(GDPR,general data protection regulation)在所有的歐洲國家強(qiáng)制執(zhí)行,通過委托授權(quán)服務(wù)提供者實(shí)現(xiàn)對(duì)個(gè)人數(shù)據(jù)的控制,并通過第三方監(jiān)管機(jī)構(gòu)驗(yàn)證服務(wù)提供者是否嚴(yán)格遵守GDPR。如何驗(yàn)證服務(wù)提供者是否嚴(yán)格遵守GDPR 是數(shù)據(jù)保護(hù)機(jī)制面臨的挑戰(zhàn)。針對(duì)上述問題,Truong 等[11]基于區(qū)塊鏈和智能合約的優(yōu)點(diǎn),提出個(gè)人數(shù)據(jù)管理平臺(tái),利用區(qū)塊鏈和智能合約實(shí)現(xiàn)數(shù)據(jù)授權(quán)的透明性,驗(yàn)證服務(wù)提供者是否遵守GDPR,任何違反規(guī)則的行為都將被記錄,通過給每個(gè)參與者頒發(fā)公私鑰對(duì)進(jìn)行身份管理,并采用非對(duì)稱加密算法保護(hù)參與者身份和敏感信息。在策略部署和訪問授權(quán)方面通過數(shù)字簽名算法對(duì)相關(guān)信息進(jìn)行驗(yàn)證,隨著管理數(shù)據(jù)量的增加,該算法在密鑰管理和訪問控制效率等方面都面臨巨大挑戰(zhàn)。Wu 等[12]提出了采用公共區(qū)塊鏈提供策略遵守的證據(jù),并通過粘性策略的方式實(shí)現(xiàn)對(duì)跨域訪問中策略遵守的監(jiān)管。針對(duì)區(qū)塊鏈數(shù)據(jù)的隱私性問題,Zyskind 等[13]結(jié)合區(qū)塊鏈和鏈下的數(shù)據(jù)存儲(chǔ)實(shí)現(xiàn)個(gè)人數(shù)據(jù)管理,但該方案僅考慮對(duì)用戶數(shù)據(jù)的讀操作,沒有考慮其他訪問操作。Kosba 等[14]提出一種去中心化的智能合約系統(tǒng)Hawk,該系統(tǒng)以密文形式在區(qū)塊鏈上存儲(chǔ)交易,實(shí)現(xiàn)交易的隱私性。Hawk 能以直觀的方式編寫智能合約,編譯器使用零知識(shí)證明等加密原語,自動(dòng)生成有效的加密協(xié)議,使合同方與區(qū)塊鏈進(jìn)行交互。為提高智慧城市中數(shù)據(jù)的可用性、完整性和隱私性,Makhdoom 等[15]提出了基于區(qū)塊鏈的隱私保護(hù)和數(shù)據(jù)共享方案PrivySharing,該方案將區(qū)塊鏈網(wǎng)絡(luò)分成不同的通道,不同通道的數(shù)據(jù)相互隔離,每個(gè)通道包含有限個(gè)授權(quán)組織處理特定類型的數(shù)據(jù)。PrivySharing 通過在智能合約中嵌入訪問控制規(guī)則實(shí)現(xiàn)對(duì)數(shù)據(jù)的訪問控制。針對(duì)數(shù)據(jù)跨域共享存在的安全問題,Rahman[16]等提出了跨域的數(shù)據(jù)共享平臺(tái),并將數(shù)據(jù)共享平臺(tái)部署在一個(gè)全局的云服務(wù)器中。當(dāng)有跨域訪問請(qǐng)求時(shí),云服務(wù)器通過域內(nèi)安全網(wǎng)關(guān)收集存儲(chǔ)在本地的數(shù)據(jù),并通過區(qū)塊鏈記錄數(shù)據(jù)轉(zhuǎn)移。全局的云服務(wù)器通過區(qū)塊鏈來檢驗(yàn)完全網(wǎng)關(guān)的錯(cuò)誤行為,但該方案通過一個(gè)全局云服務(wù)中心實(shí)現(xiàn)數(shù)據(jù)共享,存在單點(diǎn)失效造成的安全問題和性能問題。王秀利等[17]提出了一種應(yīng)用區(qū)塊鏈的數(shù)據(jù)訪問控制與共享模型,利用屬性基加密對(duì)數(shù)據(jù)進(jìn)行訪問控制與共享,達(dá)到細(xì)粒度訪問控制和安全共享的目的。針對(duì)云存儲(chǔ)電子病歷(EMR,electronic medical record)共享的問題,牛淑芬等[18]提出了一種區(qū)塊鏈上基于可搜索加密的EMR 數(shù)據(jù)共享方案。該方案采用私有鏈和聯(lián)盟鏈實(shí)現(xiàn)EMR的安全存儲(chǔ)與共享,利用可搜索加密技術(shù)實(shí)現(xiàn)對(duì)聯(lián)盟鏈上關(guān)鍵字的安全搜索,利用代理重加密技術(shù)實(shí)現(xiàn)EMR 的共享。Neisse 等[19]利用部署在區(qū)塊鏈上的公開審計(jì)合同提高數(shù)據(jù)訪問、使用的透明度,實(shí)現(xiàn)記賬能力和溯源追蹤。

        但是,上述文獻(xiàn)對(duì)如何利用區(qū)塊鏈和智能合約實(shí)現(xiàn)訪問控制無中心、透明性、可追蹤和溯源都沒有給出完整的、詳細(xì)的解決方案。

        3 基于屬性的訪問控制機(jī)制及其面臨的挑戰(zhàn)

        本節(jié)以基于屬性的訪問控制為例,介紹復(fù)雜網(wǎng)絡(luò)環(huán)境下集中授權(quán)的訪問控制機(jī)制及其面臨的挑戰(zhàn)。

        3.1 基于屬性的訪問控制

        基于屬性的訪問控制主要包括3 個(gè)階段,主要步驟如圖1 所示。

        第一階段為客體上傳階段,所有者將生成的客體上傳到數(shù)據(jù)服務(wù)器,主要步驟如下。

        Step1數(shù)據(jù)所有者(DO,data owner),以下簡稱所有者,將生成的客體(O,object)上傳到數(shù)據(jù)服務(wù)器(DS,data service)。

        Step2所有者針對(duì)客體生成對(duì)應(yīng)的訪問控制策略(P,policy)上傳到策略管理點(diǎn)(PAP,policy administration point)。

        第二階段為訪問授權(quán)階段,訪問控制系統(tǒng)對(duì)主體提出的訪問請(qǐng)求進(jìn)行授權(quán)判斷,主要步驟如下。

        Step3主體(S,subject)生成訪問請(qǐng)求(AR,access request)發(fā)送給策略執(zhí)行點(diǎn)(PEP,policy enforcement point)。

        Step4策略執(zhí)行點(diǎn)針對(duì)主體的訪問請(qǐng)求生成訪問決策請(qǐng)求(ADR,access decision request)發(fā)送給策略決策點(diǎn)(PDP,policy decision point)。

        Step5策略決策點(diǎn)針對(duì)訪問決策請(qǐng)求生成策略查詢請(qǐng)求(PQR,policy query request)發(fā)送給策略管理點(diǎn),策略管理點(diǎn)查詢?cè)L問控制策略庫(PR,policy repository)得到對(duì)應(yīng)的訪問控制策略并發(fā)送給策略決策點(diǎn)。

        Step6策略決策點(diǎn)根據(jù)訪問控制策略和訪問決策請(qǐng)求生成屬性查詢請(qǐng)求(AQR,attribute query request)發(fā)送給策略信息點(diǎn)(PIP,policy information point),策略信息點(diǎn)查詢相關(guān)主體屬性、客體屬性和環(huán)境屬性,并將查詢得到的屬性發(fā)送給策略決策點(diǎn)。

        Step7策略決策點(diǎn)根據(jù)訪問控制策略和屬性進(jìn)行訪問授權(quán)判斷,生成訪問控制結(jié)果(ACR,access control result)發(fā)送給策略執(zhí)行點(diǎn)。

        第三階段為客體訪問階段,對(duì)于同意授權(quán)的訪問請(qǐng)求,主體對(duì)客體進(jìn)行訪問操作,主要步驟如下。

        Step8對(duì)于同意授權(quán)的訪問請(qǐng)求,策略執(zhí)行點(diǎn)提出客體請(qǐng)求(OR,object request)發(fā)送給數(shù)據(jù)服務(wù)器。

        Step9數(shù)據(jù)服務(wù)器將客體發(fā)送給策略執(zhí)行點(diǎn)。

        Step10策略執(zhí)行點(diǎn)將客體發(fā)送給主體。

        3.2 基于屬性的訪問控制面臨的挑戰(zhàn)

        從上述訪問授權(quán)過程可以看出,訪問控制執(zhí)行和決策過程依賴于策略執(zhí)行點(diǎn)和策略決策點(diǎn),這樣的單一集中授權(quán)模式存在以下安全問題和性能問題。

        1) 如果策略決策點(diǎn)或者策略執(zhí)行點(diǎn)被收買或者攻擊,對(duì)于同意授權(quán)訪問控制結(jié)果,會(huì)返回一個(gè)否定的授權(quán)結(jié)果,反之亦然,甚至策略執(zhí)行點(diǎn)直接拒絕主體的訪問請(qǐng)求。

        2) 訪問控制過程不透明、不可追蹤。從所有者角度來看,其不能發(fā)現(xiàn)自己創(chuàng)建的客體錯(cuò)誤的肯定授權(quán)或過度授權(quán),從而導(dǎo)致隱私泄露;同樣,主體也無法發(fā)現(xiàn)錯(cuò)誤的否定授權(quán)。

        3) 所有訪問控制的決策和執(zhí)行都集中在策略決策點(diǎn)和策略執(zhí)行點(diǎn),造成性能瓶頸問題,甚至存在單點(diǎn)失效導(dǎo)致整個(gè)系統(tǒng)無法運(yùn)行等問題。

        4) 整個(gè)訪問過程無法實(shí)現(xiàn)追蹤和溯源,對(duì)于錯(cuò)誤的訪問控制授權(quán)和訪問執(zhí)行,無法找到相關(guān)的參與主體。

        4 基于區(qū)塊鏈的可溯源訪問控制機(jī)制的設(shè)計(jì)原則與架構(gòu)

        針對(duì)基于屬性的訪問控制在實(shí)際應(yīng)用中存在的問題,本節(jié)提出了基于區(qū)塊鏈的可溯源訪問控制機(jī)制。該機(jī)制把訪問控制策略以智能合約的形式部署在區(qū)塊鏈上,通過執(zhí)行區(qū)塊鏈上分布式智能合約對(duì)主體的訪問請(qǐng)求進(jìn)行評(píng)估,實(shí)現(xiàn)了無中心的訪問授權(quán)管理。同時(shí),利用區(qū)塊鏈透明性和不可修改等優(yōu)點(diǎn),把訪問授權(quán)過程記錄在區(qū)塊鏈上,實(shí)現(xiàn)訪問控制過程透明性和可追蹤。

        4.1 基于區(qū)塊鏈的可溯源訪問控制機(jī)制設(shè)計(jì)原則

        為保證基于區(qū)塊鏈的可溯源訪問控制機(jī)制的安全性,本文提出以下安全性假設(shè)條件。

        條件1數(shù)據(jù)服務(wù)器半可信,它會(huì)準(zhǔn)確執(zhí)行每次訪問,但存在非法篡改客體,或者把客體泄露給非法主體,或者拒絕合法主體對(duì)客體訪問的可能。

        條件2策略決策點(diǎn)或者執(zhí)行點(diǎn)會(huì)被攻擊或者被收買成為失效節(jié)點(diǎn),從而生成錯(cuò)誤訪問決策或授權(quán),或者拒絕主體對(duì)客體的訪問。

        針對(duì)基于屬性的訪問控制存在的問題,基于區(qū)塊鏈的可溯源訪問控制機(jī)制遵循以下原則。

        1) 訪問控制策略生成。訪問控制策略采用細(xì)粒度、語義表達(dá)豐富的策略描述語言。所有者描述的訪問控制策略自動(dòng)轉(zhuǎn)化為智能合約并部署在區(qū)塊鏈上。

        圖1 基于屬性的訪問控制機(jī)制

        2) 訪問控制策略決策和執(zhí)行。訪問控制策略的決策和執(zhí)行通過執(zhí)行區(qū)塊鏈上分布式的智能合約來實(shí)現(xiàn),保證整個(gè)訪問授權(quán)過程的透明性和可溯源。

        3) 對(duì)于肯定的授權(quán)結(jié)果通過給主體頒發(fā)一個(gè)語義描述豐富的訪問憑據(jù)(token)來表示,并記錄在區(qū)塊鏈上。主體訪問客體時(shí),通過區(qū)塊鏈對(duì)訪問憑據(jù)進(jìn)行驗(yàn)證,防止一次授權(quán)無限制重復(fù)訪問客體等安全問題。

        4) 區(qū)塊鏈分布式賬本的設(shè)計(jì)。訪問授權(quán)結(jié)果和訪問結(jié)果都記錄在區(qū)塊鏈賬本上。區(qū)塊鏈賬本上詳細(xì)記錄誰在什么時(shí)候?qū)κ裁催M(jìn)行了什么操作,操作的原因是什么,操作的環(huán)境是什么。保證訪問過程的透明性,實(shí)現(xiàn)訪問過程可追蹤和溯源。

        5) 客體資源離線存儲(chǔ)。數(shù)據(jù)采用傳統(tǒng)的數(shù)據(jù)庫管理系統(tǒng),如Oracle、Sybase,或者分布式存儲(chǔ)系統(tǒng),如GFS(Google file system)等方式存儲(chǔ)在鏈下的數(shù)據(jù)服務(wù)器上,保證客體資源的安全性和隱私性。如果客體直接存儲(chǔ)在鏈上,客體的安全性和隱私性會(huì)受到威脅;如果采用密態(tài)方式存在鏈上,客體訪問的靈活性和效率會(huì)大大降低,同時(shí)會(huì)大大增加賬本維護(hù)成本。

        6) 主體的安全性和隱私性。在數(shù)據(jù)訪問過程中,主體屬性屬于個(gè)人隱私信息,所有主體相關(guān)屬性信息存在鏈下的策略信息庫中。

        4.2 基于區(qū)塊鏈的可溯源訪問控制機(jī)制架構(gòu)

        基于區(qū)塊鏈的可溯源訪問控制機(jī)制架構(gòu)如圖2所示,包括客體上傳、訪問授權(quán)和客體訪問3 個(gè)階段。在基于區(qū)塊鏈的可溯源訪問控制機(jī)制中,引入環(huán)境句柄(CH,context handler)執(zhí)行訪問授權(quán)和客體訪問。根據(jù)不同的分工,把環(huán)境句柄細(xì)分為智能策略部署句柄(CHSPD,smart policy develop context handler)(簡稱策略部署句柄)、客體部署句柄(CHOD,object develop context handler)、智能策略執(zhí)行句柄(CHPE,smart policy enforcement context handler)(簡稱策略執(zhí)行句柄)、智能策略決策句柄(CHPD,smart policy decision context handler)(簡稱策略決策句柄)、訪問憑據(jù)驗(yàn)證句柄(CHTV,token validation context handler)(簡稱憑據(jù)驗(yàn)證句柄)、日志記錄句柄(CHL,log handler)。上述句柄為區(qū)塊鏈的各個(gè)節(jié)點(diǎn),實(shí)現(xiàn)智能合約的執(zhí)行、客體上鏈前的驗(yàn)證和區(qū)塊鏈賬本的維護(hù)等。

        第一階段為客體上傳階段,主要步驟如下。

        Step1所有者將生成的客體上傳到數(shù)據(jù)服務(wù)器,數(shù)據(jù)服務(wù)器將客體在數(shù)據(jù)服務(wù)器的地址和摘要值發(fā)送給所有者。

        Step2所有者針對(duì)客體生成對(duì)應(yīng)的訪問控制策略上傳到策略管理點(diǎn)。

        Step3策略管理點(diǎn)將所有者上傳的訪問控制策略轉(zhuǎn)化成智能合約的形式,生成智能訪問控制策略(SP,smart policy)發(fā)送給CHSPD,CHSPD 將SP 部署在區(qū)塊鏈上,部署成功后,CHSPD 將SP在區(qū)塊鏈中的地址SPA(smart policy address)發(fā)送給策略管理點(diǎn)進(jìn)行存儲(chǔ)。所有者根據(jù)客體地址和摘要值等生成客體索引發(fā)送給CHOD,CHOD 將客體索引部署在區(qū)塊鏈上。

        第二階段為訪問授權(quán)階段,主要步驟如下。

        Step4主體生成訪問請(qǐng)求并發(fā)送給策略執(zhí)行點(diǎn)。

        圖2 基于區(qū)塊鏈的可溯源訪問控制機(jī)制架構(gòu)

        Step5策略執(zhí)行點(diǎn)根據(jù)主體的訪問請(qǐng)求從策略管理點(diǎn)查詢智能訪問控制策略地址,根據(jù)訪問請(qǐng)求和策略地址生成訪問決策請(qǐng)求,并發(fā)送給CHPE。

        Step6CHPE 將訪問決策請(qǐng)求發(fā)送給CHPD。CHPD 根據(jù)訪問決策請(qǐng)求中的策略地址調(diào)用對(duì)應(yīng)的智能合約,智能合約生成屬性查詢請(qǐng)求發(fā)送給PIP,PIP 將屬性發(fā)送給智能合約,智能合約根據(jù)屬性進(jìn)行訪問授權(quán)判斷,生成訪問控制結(jié)果。CHPD 將訪問控制結(jié)果發(fā)送給CHPE。

        Step7CHPE 根據(jù)訪問控制結(jié)果生成訪問授權(quán)日志和訪問憑據(jù),CHPE 和CHL 分別將訪問憑據(jù)和訪問授權(quán)日志記錄在區(qū)塊鏈上,同時(shí)將訪問憑據(jù)發(fā)送給主體。

        第三階段為客體訪問階段,主要步驟如下。

        Step8主體生成客體請(qǐng)求,并將客體請(qǐng)求發(fā)送給策略執(zhí)行點(diǎn),策略執(zhí)行點(diǎn)將客體請(qǐng)求發(fā)送給數(shù)據(jù)服務(wù)器。

        Step9數(shù)據(jù)服務(wù)器將客體請(qǐng)求中主體的訪問憑據(jù)發(fā)送給CHTV,CHTV 對(duì)訪問憑據(jù)有效性進(jìn)行驗(yàn)證,并把驗(yàn)證結(jié)果發(fā)送給數(shù)據(jù)服務(wù)器,CHL 將訪問日志記錄在區(qū)塊鏈上。

        Step10對(duì)于通過驗(yàn)證的訪問憑據(jù),數(shù)據(jù)服務(wù)器將客體發(fā)送給主體。

        基于區(qū)塊鏈的可溯源訪問控制機(jī)制具有以下優(yōu)勢(shì)。

        1) 利用區(qū)塊鏈公開透明、無中心、不可篡改等優(yōu)點(diǎn),基于區(qū)塊鏈的可溯源訪問控制機(jī)制把訪問控制策略、訪問控制執(zhí)行和策略決策過程記錄在區(qū)塊鏈中,有效防止了策略執(zhí)行點(diǎn)和策略決策點(diǎn)被收買或者攻擊造成的非法授權(quán)或者拒絕訪問請(qǐng)求等安全問題,同時(shí)避免了集中授權(quán)造成的性能瓶頸問題。

        2) 區(qū)塊鏈中詳細(xì)記錄了訪問授權(quán)日志、訪問日志,訪問請(qǐng)求主體可以通過區(qū)塊鏈查看訪問授權(quán)日志記錄,確保自己沒有被非法拒絕。

        3) 所有者也可以通過區(qū)塊鏈查看客體訪問過程,保證自己的客體資源沒有被非法授權(quán)或者過度授權(quán)。

        4) 超級(jí)用戶可以通過查看區(qū)塊鏈訪問授權(quán)和訪問過程,實(shí)現(xiàn)整個(gè)過程的可追蹤和溯源。

        5) 策略決策點(diǎn)和策略執(zhí)行點(diǎn)可以通過區(qū)塊鏈證明自己誠實(shí)地執(zhí)行訪問控制策略。

        5 基于區(qū)塊鏈的可溯源訪問控制機(jī)制原理

        本節(jié)詳細(xì)介紹基于區(qū)塊鏈的可溯源訪問控制機(jī)制如何進(jìn)行客體上傳、訪問授權(quán)和客體訪問。為提高訪問控制和數(shù)據(jù)追蹤溯源的效率,本文將區(qū)塊鏈分成客體鏈objectBlockChain 和日志區(qū)塊鏈logBlockChain。objectBlockChain 用于記錄智能訪問控制策略、客體索引、訪問憑據(jù),logBlockChain 用于記錄訪問授權(quán)日志和訪問日志??腕w上鏈時(shí),多個(gè)節(jié)點(diǎn)通過實(shí)用拜占庭容錯(cuò)(PBFT,practical Byzantine fault tolerance)算法進(jìn)行共識(shí),各個(gè)節(jié)點(diǎn)調(diào)用函數(shù)putData(data)將data上傳到區(qū)塊鏈上,同時(shí)調(diào)用函數(shù)getData(data)得到區(qū)塊鏈上的數(shù)據(jù),data 可以為任意類型和結(jié)構(gòu)的數(shù)據(jù)。

        5.1 客體上傳與策略部署

        5.1.1客體上傳

        所有者調(diào)用算法1 進(jìn)行客體上傳。

        算法1objectUpload(object,policy)

        輸入待上傳的客體object 和對(duì)應(yīng)的訪問控制策略policy

        輸出客體部署結(jié)果flag,flag=true 表示客體部署成功,flag=false 表示客體部署失敗

        客體上傳協(xié)議如圖3 所示。在客體上傳時(shí),所有者調(diào)用函數(shù)objectReposit()將客體上傳給數(shù)據(jù)服務(wù)器進(jìn)行存儲(chǔ),得到客體地址object_address,計(jì)算客體的摘要值 object_hash 。所有者根據(jù)object_address、object_hash、object_attribute 等信息生成客體索引object_index。采用鏈下方式存儲(chǔ)的客體具有以下優(yōu)點(diǎn):1) 區(qū)塊鏈上僅存儲(chǔ)客體索引而不是客體本身,提高了客體的安全性和隱私性;2) 在對(duì)客體訪問時(shí),通過對(duì)比摘要值對(duì)客體完整性進(jìn)行驗(yàn)證,有效避免客體在存儲(chǔ)和傳輸過程中被篡改的風(fēng)險(xiǎn);3)通過客體地址可以快速找到待訪問的客體,提高客體訪問效率,如果客體為敏感的信息,所有者可以將客體以密態(tài)的形式存儲(chǔ)在數(shù)據(jù)服務(wù)器中。

        圖3 客體上傳協(xié)議

        5.1.2訪問控制策略部署

        為了提高訪問控制策略轉(zhuǎn)化效率,降低所有者的負(fù)擔(dān),本文將策略管理點(diǎn)分成策略轉(zhuǎn)化點(diǎn)和策略庫,其中策略轉(zhuǎn)化點(diǎn)負(fù)責(zé)訪問控制策略轉(zhuǎn)化。策略轉(zhuǎn)化點(diǎn)調(diào)用函數(shù)policyTranslate()為policy 生成策略標(biāo)識(shí)符policyID,并將policy 轉(zhuǎn)化成智能合約的形式,得到智能策略smartpolicy。策略轉(zhuǎn)化成功后,CHSPD 調(diào)用函數(shù)policyDevelop()將smartpolicy 部署在客體區(qū)塊鏈上,并返回smartpolicy 在客體區(qū)塊鏈的地址smartpolicy_Address。策略部署成功后,策略管理點(diǎn)調(diào)用函數(shù)policyReposit()將policyID、smartpolicy_Address、policy 存儲(chǔ)在策略庫中,便于后續(xù)訪問控制策略查詢。

        除了所有者針對(duì)客體制定的訪問控制策略外,訪問控制系統(tǒng)還會(huì)針對(duì)單個(gè)或多個(gè)客體制定系統(tǒng)訪問控制策略。對(duì)于系統(tǒng)訪問控制策略,同樣按照上述方法進(jìn)行策略部署和存儲(chǔ)。

        智能訪問控制策略部署成功后,所有者將object_index 發(fā)送給CHOD,CHOD 將object_index部署在客體鏈上,完成客體及訪問控制策略的部署。

        CHSPD 和CHOD 為客體區(qū)塊鏈網(wǎng)絡(luò)的節(jié)點(diǎn),維護(hù)區(qū)塊鏈賬本和智能合約的運(yùn)行。在客體上鏈和策略部署過程中,不同節(jié)點(diǎn)之間通過PBFT 算法達(dá)成共識(shí)。

        對(duì)于客體上鏈和訪問控制策略的制定與部署,所有者可以委托可信第三方進(jìn)行。

        5.2 訪問授權(quán)

        在基于區(qū)塊鏈的可溯源訪問控制機(jī)制中,對(duì)于同意授權(quán)的訪問請(qǐng)求生成token,token 詳細(xì)記錄了訪問客體時(shí)需要滿足的時(shí)間、地點(diǎn)等屬性信息。通過算法2 對(duì)主體的AR 進(jìn)行授權(quán)評(píng)估,訪問授權(quán)協(xié)議如圖4 所示。策略管理點(diǎn)調(diào)用函數(shù)policyQuery()根據(jù) AR 在策略庫中查找對(duì)應(yīng)的 policy 及smartpolicy_Address。策略執(zhí)行點(diǎn)根據(jù)訪問請(qǐng)求和策略地址生成訪問控制請(qǐng)求發(fā)送給CHPD。CHPD根據(jù)smartpolicy_Address 調(diào)用對(duì)應(yīng)的智能合約對(duì)訪問請(qǐng)求進(jìn)行評(píng)估。在策略評(píng)估過程,根據(jù)需要從策略信息點(diǎn)查找策略評(píng)估需要的主體屬性、客體屬性和環(huán)境屬性,生成訪問控制結(jié)果accessResult 和訪問授權(quán)結(jié)果flag。CHPD 將訪問授權(quán)結(jié)果記錄在客體區(qū)塊鏈上。對(duì)于肯定授權(quán),CHPE 調(diào)用函數(shù)tokenGenerate()生成token,并將其記錄在客體區(qū)塊鏈上。CHPE 根據(jù)訪問控制結(jié)果調(diào)用函數(shù)authorizeLogGenerate() 生成訪問授權(quán)日記authorizeLog,并將其發(fā)送給CHL,CHL 將訪問授權(quán)日志記錄在日志區(qū)塊鏈上。日志區(qū)塊鏈上詳細(xì)記錄了肯定授權(quán)日志和否定授權(quán)日志。

        算法2accessAuthorize(AR)

        輸入主體對(duì)客體訪問請(qǐng)求AR

        輸出授權(quán)結(jié)果 flag 和訪問憑據(jù) token,flag=true 表示同意授權(quán),flag=false 表示不同意授權(quán)

        圖4 訪問授權(quán)協(xié)議

        所有的訪問控制結(jié)果不管是肯定授權(quán)還是否定授權(quán)都記錄在日志區(qū)塊鏈上,主體通過日志區(qū)塊鏈可以查看訪問請(qǐng)求是否被拒絕,同時(shí)可以對(duì)授權(quán)結(jié)果進(jìn)行驗(yàn)證,防止策略執(zhí)行點(diǎn)和策略決策點(diǎn)聯(lián)合起來進(jìn)行欺騙行為。通過訪問授權(quán)日志對(duì)客體的訪問請(qǐng)求進(jìn)行追蹤和溯源,防止惡意主體進(jìn)行非法訪問或者重放攻擊等。在訪問授權(quán)結(jié)束后,將token記錄在客體區(qū)塊鏈中,便于后續(xù)主體對(duì)客體訪問時(shí),對(duì)主體訪問憑據(jù)的有效性進(jìn)行驗(yàn)證,有效避免了一次授權(quán),主體對(duì)客體無限次訪問,同時(shí)可以杜絕主體將訪問憑據(jù)泄露給其他非法主體等安全問題。

        5.3 客體訪問

        在訪問授權(quán)階段,對(duì)于同意授權(quán)的AR,CHPE會(huì)給主體返回一個(gè)token。主體在提出客體請(qǐng)求時(shí),將token 一起發(fā)送給策略執(zhí)行點(diǎn)??腕w訪問協(xié)議如圖5 所示,通過算法3 實(shí)現(xiàn)主體對(duì)客體的訪問。策略執(zhí)行點(diǎn)將主體的訪問憑據(jù)發(fā)送給數(shù)據(jù)服務(wù)器DS,CHTV調(diào)用函數(shù)tokenValidate()對(duì)token的有效性進(jìn)行驗(yàn)證,調(diào)用函數(shù)accessLogGenerate()生成訪問日志accessLog,并將訪問日志accessLog發(fā)送給CHL,CHL 將訪問日志記錄在日志區(qū)塊鏈上。

        算法3objectAccess(OR,flag,object)

        輸入主體對(duì)客體請(qǐng)求OR

        輸出訪問結(jié)果flag,flag=true 表示訪問憑據(jù)驗(yàn)證通過,并將客體object 發(fā)送給主體subject;flag=false 表示表示訪問憑據(jù)驗(yàn)證沒有通過

        在客體訪問過程中,所有token 及其驗(yàn)證結(jié)果都記錄在區(qū)塊鏈上,主體通過區(qū)塊鏈可以查看訪問憑據(jù)的驗(yàn)證結(jié)果,有效防止了數(shù)據(jù)服務(wù)器非法拒絕服務(wù)。同時(shí)日志記錄句柄將訪問日志accesslog 記錄在日志區(qū)塊鏈上,后續(xù)可以通過日志區(qū)塊鏈實(shí)現(xiàn)客體訪問追蹤和溯源。

        圖5 客體訪問協(xié)議

        5.4 訪問憑據(jù)數(shù)據(jù)結(jié)構(gòu)

        token 是主體訪問客體的唯一憑據(jù),詳細(xì)記錄了主體訪問客體時(shí)需要滿足的各種條件。關(guān)鍵字?值(key-value)的方式是區(qū)塊鏈中廣泛采用的數(shù)據(jù)結(jié)構(gòu),本文采用關(guān)鍵字?值的方式設(shè)計(jì)訪問憑據(jù)的數(shù)據(jù)結(jié)構(gòu)。訪問憑據(jù)關(guān)鍵字包括主體、所有者、客體地址。訪問憑據(jù)記錄了訪問憑據(jù)ID 值、訪問憑據(jù)摘要值、隨機(jī)數(shù)、策略地址、策略ID 號(hào)、客體摘要值、客體允許操作的時(shí)間{time}、允許對(duì)客體進(jìn)行的操作{op}、主體操作客體需要滿足的環(huán)境屬性{e}、客體屬性、主體屬性。{time}為允許操作的時(shí)間集合、{op}為主體可對(duì)客體進(jìn)行的操作集合、{e}為主體對(duì)客體進(jìn)行操作時(shí)需要滿足的環(huán)境屬性集合,包括對(duì)客體操作的位置屬性、操作平臺(tái)屬性等。

        訪問憑據(jù)詳細(xì)記錄了主體對(duì)客體進(jìn)行操作所必須滿足的各種條件。通過訪問憑據(jù)可以實(shí)現(xiàn)對(duì)客體細(xì)粒度的訪問控制。

        5.5 實(shí)用拜占庭共識(shí)機(jī)制

        共識(shí)算法是區(qū)塊鏈中的關(guān)鍵技術(shù),實(shí)用拜占庭容錯(cuò)算法已經(jīng)被廣泛應(yīng)用于各種場(chǎng)景。本文智能訪問控制策略部署、客體部署、訪問授權(quán)、訪問授權(quán)日志記錄、訪問日志記錄都通過PBFT 共識(shí)算法將相關(guān)數(shù)據(jù)記錄到客體區(qū)塊鏈和日志區(qū)塊鏈中。下面講解如何利用PBFT 算法將智能訪問控制策略部署到客體區(qū)塊鏈中。

        本文通過策略部署句柄CHSPD 將智能訪問控制策略部署到客體區(qū)塊鏈中。CHSPD 至少有3f+1個(gè),其中f為可能失效副本的最大個(gè)數(shù),f≥1。本文根據(jù)CHSPD 的信任度將CHSPD 分為主節(jié)點(diǎn)CHSPD_primary 和副節(jié)點(diǎn)CHSPD_replica,主節(jié)點(diǎn)負(fù)責(zé)產(chǎn)生新的區(qū)塊,共識(shí)過程如圖6 所示,包括以下幾個(gè)主要步驟。

        廣播(broadcast)。PAP 生成智能訪問控制策略部署請(qǐng)求,將smartpolicy 發(fā)送給CHSPD,CHSPD驗(yàn)證請(qǐng)求的有效性,將策略部署消息發(fā)送給全網(wǎng)策略部署句柄。

        預(yù)準(zhǔn)備(pre-prepare)。主節(jié)點(diǎn)CHSPD_primary收到策略部署消息后,生成預(yù)準(zhǔn)備消息pre-prepare message,并在全網(wǎng)公布預(yù)準(zhǔn)備消息。

        圖6 共識(shí)過程

        準(zhǔn)備(prepare)。副節(jié)點(diǎn)CHSPD_replica 收到預(yù)準(zhǔn)備消息后,驗(yàn)證預(yù)準(zhǔn)備消息的有效性,生成準(zhǔn)備消息prepare message,并將準(zhǔn)備消息廣播給全網(wǎng)其他節(jié)點(diǎn)。

        確認(rèn)(commit)。副節(jié)點(diǎn)CHSPD_replica 收到其他節(jié)點(diǎn)發(fā)送的準(zhǔn)備消息,驗(yàn)證其他節(jié)點(diǎn)發(fā)送的準(zhǔn)備消息與主節(jié)點(diǎn)發(fā)送的預(yù)準(zhǔn)備消息是否一致。當(dāng)該副節(jié)點(diǎn)收到2f個(gè)準(zhǔn)備消息并驗(yàn)證通過時(shí),生成確認(rèn)消息,并在全網(wǎng)公布確認(rèn)消息。

        響應(yīng)(reply)。一旦副節(jié)點(diǎn)CHSPD_replica 收到2f+1 個(gè)確認(rèn)消息(包括其自己),則認(rèn)為策略部署達(dá)成了共識(shí),并把執(zhí)行結(jié)果發(fā)送給主節(jié)點(diǎn)和策略管理點(diǎn)。主節(jié)點(diǎn)不斷收集策略部署,進(jìn)行排序生成新的區(qū)塊,并將新的區(qū)塊添加到客體區(qū)塊鏈上。達(dá)成共識(shí)后,記錄在區(qū)塊鏈上的智能訪問控制策略就是永久的。

        在智能策略部署過程中,主節(jié)點(diǎn) CHSPD_primary 負(fù)責(zé)智能策略的收集并打包成塊,達(dá)成共識(shí)后將新的區(qū)塊增加到區(qū)塊鏈上。主節(jié)點(diǎn)的選取根據(jù)各個(gè)節(jié)點(diǎn)的信任度進(jìn)行選擇,節(jié)點(diǎn)的信任度根據(jù)節(jié)點(diǎn)在共識(shí)過程的參與度進(jìn)行動(dòng)態(tài)評(píng)價(jià),如果主節(jié)點(diǎn)存在區(qū)塊記錄失誤,將取消該節(jié)點(diǎn)的主節(jié)點(diǎn)權(quán)限并降低該節(jié)點(diǎn)的信任度。

        對(duì)于客體部署、訪問授權(quán)、訪問授權(quán)日志記錄、訪問憑據(jù)驗(yàn)證和訪問日志記錄等共識(shí)過程,采用類似的方法。策略部署節(jié)點(diǎn)、客體部署節(jié)點(diǎn)、策略執(zhí)行節(jié)點(diǎn)、策略決策點(diǎn)等可以為同一個(gè)節(jié)點(diǎn),也可以為不同的節(jié)點(diǎn),可以根據(jù)訪問控制系統(tǒng)的規(guī)模、節(jié)點(diǎn)的能力以及隱私程度進(jìn)行選擇。

        接下來,從安全性和性能2 個(gè)方面對(duì)本文提出的訪問控制機(jī)制進(jìn)行分析。

        6 安全性和性能分析

        6.1 安全性分析

        本文提出的基于區(qū)塊鏈的可溯源訪問控制機(jī)制將訪問控制策略、訪問授權(quán)、客體訪問過程都記錄在區(qū)塊鏈上,繼承了區(qū)塊鏈無中心、透明性、分布式和不可篡改等優(yōu)點(diǎn)。

        1) 無中心、透明性

        本文提出的訪問控制機(jī)制通過執(zhí)行部署在客體區(qū)塊鏈上分布式的智能合約進(jìn)行訪問評(píng)估,實(shí)現(xiàn)訪問授權(quán)過程的無中心化和透明性。

        2) 不可偽造性

        利用區(qū)塊鏈不可篡改的特點(diǎn),將所有訪問授權(quán)日志(包括肯定授權(quán)和否定授權(quán))和訪問日志(肯定訪問和否定訪問)都記錄在日志區(qū)塊鏈上,任何人或組織都不可以偽造錯(cuò)誤的訪問控制授權(quán)結(jié)果,有效杜絕了策略執(zhí)行點(diǎn)和策略決策點(diǎn)被攻擊或收買造成的安全問題;訪問憑據(jù)和訪問日志記錄在區(qū)塊鏈上,有效杜絕了數(shù)據(jù)服務(wù)器的非法拒絕訪問等安全問題。

        3) 可追蹤溯源

        所有的訪問授權(quán)日志和客體訪問日志都詳細(xì)記錄在日志區(qū)塊鏈上,所有者(或者超級(jí)用戶)可以通過區(qū)塊鏈查看整個(gè)客體授權(quán)和訪問過程,驗(yàn)證策略執(zhí)行點(diǎn)、策略決策點(diǎn)、數(shù)據(jù)服務(wù)器是否按照訪問控制策略對(duì)客體進(jìn)行受控訪問;所有者(或者超級(jí)用戶)通過日志可以對(duì)客體訪問和流轉(zhuǎn)過程進(jìn)行追蹤和溯源,防止對(duì)客體進(jìn)行錯(cuò)誤的肯定授權(quán)或過度授權(quán);主體可以通過區(qū)塊鏈查看整個(gè)授權(quán)結(jié)果、授權(quán)日志和訪問日志,防止策略執(zhí)行點(diǎn)和策略決策點(diǎn)拒絕訪問或者錯(cuò)誤授權(quán),防止數(shù)據(jù)服務(wù)器非法拒絕訪問;數(shù)據(jù)服務(wù)器可以通過區(qū)塊鏈證明自己按照訪問控制策略對(duì)客體進(jìn)行受控訪問。

        4) 隱私性和可信性

        在客體訪問過程中,將客體存儲(chǔ)在第三方服務(wù)器,客體地址、摘要值等生成的客體索引存儲(chǔ)在客體區(qū)塊鏈上,保護(hù)了客體隱私性。同時(shí)客體索引中包含了客體摘要值,防止半可信數(shù)據(jù)服務(wù)器對(duì)客體篡改,保護(hù)客體的可信性和完整性。

        6.2 性能評(píng)估

        為測(cè)試本文提出的訪問控制機(jī)制性能,本節(jié)搭建了聯(lián)盟鏈實(shí)驗(yàn)環(huán)境。本次實(shí)驗(yàn)的硬件環(huán)境如下:處理器為AMD 3600×1,內(nèi)存為3 GB,操作系統(tǒng)為centos。在進(jìn)行性能評(píng)估時(shí),只測(cè)試鏈上的操作速度,比如客體索引上鏈、訪問控制策略部署、智能訪問控制策略評(píng)估、日志查看等,對(duì)于鏈下運(yùn)行速度,比如客體索引生成、訪問控制策略轉(zhuǎn)化不予考慮。

        在基于區(qū)塊鏈的可溯源訪問控制機(jī)制中,客體索引上鏈、訪問控制策略部署等都屬于寫區(qū)塊鏈,訪問控制策略評(píng)估為執(zhí)行區(qū)塊鏈上的智能合約并將日志寫入?yún)^(qū)塊鏈,日志查看為讀區(qū)塊鏈的數(shù)據(jù)。下面通過測(cè)試讀區(qū)塊鏈、寫區(qū)塊鏈速度來對(duì)基于區(qū)塊鏈的可溯源訪問控制機(jī)制進(jìn)行性能評(píng)估。

        區(qū)塊鏈的讀寫速度不僅與硬件環(huán)境有關(guān),同時(shí)與區(qū)塊鏈網(wǎng)絡(luò)中的節(jié)點(diǎn)個(gè)數(shù)也有很大關(guān)系。本文配置一個(gè)排序節(jié)點(diǎn),peer 節(jié)點(diǎn)個(gè)數(shù)分別為5 和10,測(cè)試不同條件下讀寫區(qū)塊鏈的速度。測(cè)試時(shí),通過模擬以不同速度不斷給區(qū)塊鏈發(fā)送交易,這些交易包括讀區(qū)塊鏈和寫區(qū)塊鏈,測(cè)試不同環(huán)境下讀寫區(qū)塊的速度和完成交易所花費(fèi)的時(shí)間。

        1) 讀寫區(qū)塊鏈速度

        配置peer 節(jié)點(diǎn)個(gè)數(shù)為5,讀寫區(qū)塊鏈速度和時(shí)間分別如表1 和表2 所示。

        表1 5 個(gè)peer 節(jié)點(diǎn)讀寫區(qū)塊鏈速度

        表2 5 個(gè)peer 節(jié)點(diǎn)讀寫區(qū)塊鏈時(shí)間

        從表1 和表2 中可以看出,讀區(qū)塊速度大于寫區(qū)塊速度,讀區(qū)塊的時(shí)間小于寫區(qū)塊的時(shí)間。這是因?yàn)閷懖僮魃婕皠?chuàng)建新的區(qū)塊、公布賬本等,包含的流程比讀操作多。

        2) 讀寫區(qū)塊鏈速度與peer 節(jié)點(diǎn)關(guān)系

        將區(qū)塊鏈peer 節(jié)點(diǎn)個(gè)數(shù)配置為10,分別測(cè)試讀寫區(qū)塊鏈速度和時(shí)間,如表3 所示。通過對(duì)比表1 和表3、表2 和表4 的數(shù)據(jù)發(fā)現(xiàn),隨著peer節(jié)點(diǎn)個(gè)數(shù)的增加,讀和寫的速度在降低。因?yàn)殡S著節(jié)點(diǎn)的增加,共識(shí)機(jī)制占用的時(shí)間增加,導(dǎo)致讀寫區(qū)塊鏈速度下降。

        表3 10 個(gè)peer 節(jié)點(diǎn)讀寫區(qū)塊鏈的速度

        從上述實(shí)驗(yàn)分析可以看出,基于區(qū)塊鏈的可溯源訪問控制機(jī)制效率與聯(lián)盟鏈中節(jié)點(diǎn)個(gè)數(shù)有很大關(guān)系。節(jié)點(diǎn)個(gè)數(shù)影響訪問控制系統(tǒng)的規(guī)模,應(yīng)在保證訪問控制規(guī)模和效率的前提下,選擇合適的節(jié)點(diǎn)個(gè)數(shù)。此外,交易的長度和結(jié)構(gòu)也影響讀寫區(qū)塊鏈的效率,為提高訪問控制系統(tǒng)效率,應(yīng)盡可能優(yōu)化各個(gè)交易的數(shù)據(jù)結(jié)構(gòu),降低交易時(shí)延。

        表4 10 個(gè)peer 節(jié)點(diǎn)讀寫區(qū)塊鏈時(shí)間

        7 結(jié)束語

        針對(duì)傳統(tǒng)訪問控制機(jī)制存在集中授權(quán)、訪問過程不透明、不可追蹤和溯源等缺點(diǎn),充分利用區(qū)塊鏈無中心、透明性、不可篡改等優(yōu)點(diǎn),提出了基于區(qū)塊鏈的可溯源訪問控制機(jī)制。所提機(jī)制將訪問控制策略以智能合約的形式部署在區(qū)塊鏈上,訪問控制決策判斷通過執(zhí)行部署在區(qū)塊鏈上的智能合約實(shí)現(xiàn),保證整個(gè)訪問授權(quán)過程的透明性;為保護(hù)客體資源的隱私性,提出采用鏈下和鏈上相結(jié)合的方式,客體資源存儲(chǔ)在鏈下半可信的數(shù)據(jù)服務(wù)器,通過客體存儲(chǔ)地址和摘要值等信息生成客體索引存儲(chǔ)在客體區(qū)塊鏈上,授權(quán)主體通過客體地址訪問客體資源;對(duì)于授權(quán)主體頒發(fā)訪問憑據(jù),將訪問憑據(jù)部署在區(qū)塊鏈上,訪問憑據(jù)詳細(xì)記錄訪問權(quán)限以及需要滿足的條件,主體訪問客體時(shí),通過區(qū)塊鏈驗(yàn)證訪問憑據(jù)的真實(shí)性和可信性,有效杜絕了一次授權(quán)多次訪問的問題,同時(shí)實(shí)現(xiàn)了細(xì)粒度的訪問控制;將訪問授權(quán)日志和訪問日志記錄在日志區(qū)塊鏈上,通過日志區(qū)塊鏈實(shí)現(xiàn)訪問授權(quán)和訪問過程的可追蹤和可溯源。通過對(duì)基于區(qū)塊鏈的可溯源訪問控制機(jī)制進(jìn)行安全性分析發(fā)現(xiàn),所提機(jī)制在保證客體資源隱私性的前提下,實(shí)現(xiàn)了訪問過程透明性、無中心、可追蹤和可溯源。

        下一步將結(jié)合具體應(yīng)用場(chǎng)景分析論證方案的可行性和適用性,并對(duì)方案性能進(jìn)行分析,研究數(shù)據(jù)訪問溯源機(jī)制。

        猜你喜歡
        發(fā)送給訪問控制日志
        上學(xué)路上好風(fēng)景
        一名老黨員的工作日志
        扶貧日志
        心聲歌刊(2020年4期)2020-09-07 06:37:14
        游學(xué)日志
        ONVIF的全新主張:一致性及最訪問控制的Profile A
        動(dòng)態(tài)自適應(yīng)訪問控制模型
        淺析云計(jì)算環(huán)境下等級(jí)保護(hù)訪問控制測(cè)評(píng)技術(shù)
        公告
        大數(shù)據(jù)平臺(tái)訪問控制方法的設(shè)計(jì)與實(shí)現(xiàn)
        瘋狂猜圖之側(cè)顏你猜猜猜
        日本高清一区二区三区不卡| 久久婷婷国产综合精品| 色偷偷亚洲第一综合网| 性色av手机在线观看| 日本免费播放一区二区| 丰满人妻中文字幕一区三区| 中文字幕亚洲综合久久久| 国产高潮流白浆视频在线观看| 国产 一二三四五六| 亚洲中文字幕无码av| 亚洲午夜精品久久久久久人妖| 亚洲精品成人网久久久久久| 国产精品每日更新在线观看| 亚洲国产av自拍精选| 国产精品高清视亚洲一区二区| 日韩av在线播放人妻| 一本色道久久爱88av| 亚洲第一无码xxxxxx| 连续高潮喷水无码| 中文字幕日韩人妻在线| 神马影院日本一区二区| 国产人成无码视频在线观看| 欧美精品免费观看二区| 国产乱人伦真实精品视频| 亚洲国产综合一区二区| 久久精品国产熟女亚洲av麻豆| 男人吃奶摸下挵进去啪啪软件| 久久99精品九九九久久婷婷 | 亚洲av无一区二区三区综合| 男女18视频免费网站| 久久久久夜夜夜精品国产| 亚洲最大中文字幕无码网站| 中日韩字幕中文字幕一区| 亚洲人成伊人成综合久久| 粗大的内捧猛烈进出看视频| 婷婷五月综合丁香在线| 国产精品亚洲А∨天堂免下载| 日韩有码中文字幕第一页| 日韩av在线不卡一区二区| av综合网男人的天堂| 天天操夜夜操|