王棟 張?jiān)讫垺●R斌
摘要:訪問(wèn)控制系統(tǒng)是計(jì)算機(jī)科學(xué)領(lǐng)域里對(duì)系統(tǒng)資源訪問(wèn)的規(guī)范化控制的一種機(jī)制。現(xiàn)存的訪問(wèn)控制系統(tǒng)面臨著許多問(wèn)題,如:需要第三方驗(yàn)證,隱私保護(hù)差,低效率等。訪問(wèn)控制的這些問(wèn)題可以通過(guò)近年來(lái)備受關(guān)注的區(qū)塊鏈解決。本文首先概述了當(dāng)前訪問(wèn)控制系統(tǒng)的現(xiàn)狀和問(wèn)題,然后簡(jiǎn)要介紹了區(qū)塊鏈技術(shù)的特性。最后研究基于區(qū)塊鏈技術(shù)對(duì)訪問(wèn)控制的改進(jìn)。
Abstract: Access control system is a mechanism of standardized access control to system resources in the field of Computer Science. The existing access control system faces many problems,such as the need for third-party authentication, poor privacy protection, low efficiency, and so on. These problems of access control can be solved by blockchain, which has attracted much attention in recent years. This paper firstly summarizes the current situation and problems of access control system, and then briefly introduces the characteristics of blockchain technology. Finally, the improvement of access control based on blockchain technology is studied.
關(guān)鍵詞:訪問(wèn)控制;區(qū)塊鏈;隱私保護(hù)
Key words: access control;blockchain;privacy protection
中圖分類號(hào):TP309;TP391.44? ? ? ? ? ? ? ? ? ? ? ? 文獻(xiàn)標(biāo)識(shí)碼:A? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 文章編號(hào):1006-4311(2020)14-0227-02
0? 引言
比特幣為代表的數(shù)字貨幣近年持續(xù)火熱,其價(jià)格由最初的0.25美分漲至幾千美元一枚。人們?cè)陉P(guān)注比特幣的同時(shí)對(duì)實(shí)現(xiàn)比特幣的區(qū)塊鏈技術(shù)投來(lái)了越來(lái)越多的目光。近年來(lái)區(qū)塊鏈技術(shù)因其良好的隱私保護(hù)、去中心化、抗抵賴等特性從最初金融領(lǐng)域的應(yīng)用開始轉(zhuǎn)向政務(wù)、供應(yīng)鏈、專利、物聯(lián)網(wǎng)等領(lǐng)域[1]。目前對(duì)系統(tǒng)資源訪問(wèn)控制主要存在通過(guò)中心化的第三方進(jìn)行認(rèn)證,其認(rèn)證效率低下、隱私保護(hù)弱、系統(tǒng)健壯性差。因此急需一種新型訪問(wèn)控制技術(shù)對(duì)資源進(jìn)行更好的保護(hù)。
1? 訪問(wèn)控制簡(jiǎn)介
訪問(wèn)控制是對(duì)信息資源進(jìn)行保護(hù)的重要措施之一。它主要通過(guò)對(duì)訪問(wèn)行為的主體進(jìn)行授權(quán)來(lái)控制主體對(duì)客體即資源的可操作屬性。一般情況下訪問(wèn)控制模型由主體、客體(資源)、權(quán)限構(gòu)成。主體可以是用戶或程序、權(quán)限就是對(duì)資源的操作、資源就是信息系統(tǒng)中的網(wǎng)絡(luò)、數(shù)據(jù)。訪問(wèn)控制主要目的是保護(hù)信息或網(wǎng)絡(luò)資源不被非授權(quán)的進(jìn)行訪問(wèn)[2]。
傳統(tǒng)上廣泛使用的訪問(wèn)控制策略為自主訪問(wèn)控制、強(qiáng)制訪問(wèn)控制、角色訪問(wèn)控制三種[3]。自主訪問(wèn)控制就是對(duì)資源具有讀寫權(quán)限的主體可以將權(quán)限授權(quán)給其他主體。因?yàn)闄?quán)限的可傳遞性其安全性較差。強(qiáng)制訪問(wèn)控制即所有的權(quán)限集中管理,不存在授權(quán)給其他主體問(wèn)題。權(quán)限集中管理實(shí)現(xiàn)復(fù)雜,管理難度大。
近年傳統(tǒng)訪問(wèn)控制技術(shù)也通過(guò)吸收新的IT技術(shù)進(jìn)行改進(jìn),提出了一些新的模型,如:基于屬性的訪問(wèn)控制模型、基于任務(wù)的訪問(wèn)控制模型、基于信用度的訪問(wèn)控制模型等。這些模型存在如下問(wèn)題:若中心系統(tǒng)不可用,則整個(gè)訪問(wèn)控制系統(tǒng)不可用;若中心系統(tǒng)數(shù)據(jù)泄露,則所有用戶信息泄露;若惡意用戶偽造身份,中心系統(tǒng)無(wú)法進(jìn)行鑒別。
2? 區(qū)塊鏈技術(shù)
2.1 區(qū)塊鏈的概念
區(qū)塊鏈技術(shù)是一系列IT技術(shù)的有機(jī)組合。按照工信部的《區(qū)塊鏈技術(shù)和應(yīng)用發(fā)展白皮書2016》的解釋為:區(qū)塊鏈?zhǔn)且环N按照時(shí)間順序?qū)?shù)據(jù)區(qū)塊以順序相聯(lián)的方式組合成的一種鏈?zhǔn)綌?shù)據(jù)結(jié)構(gòu),并以密碼學(xué)方式保證的不可篡改和不可偽造的分布式賬本。賬本即按照一定的格式記錄流水等交易信息[4]。
區(qū)塊鏈的數(shù)據(jù)結(jié)構(gòu)如下描述:區(qū)塊是鏈?zhǔn)浇Y(jié)構(gòu)的基本數(shù)據(jù)單元,聚合了所有交易相關(guān)信息,主要包括區(qū)塊頭和區(qū)塊體兩部分。區(qū)塊頭由父區(qū)塊哈希值、時(shí)間戳、默克爾樹根等信息組成。區(qū)塊體一般包含一串交易的列表。每個(gè)區(qū)塊中的區(qū)塊頭保存的父區(qū)塊的哈希值唯一確定了該區(qū)塊的父區(qū)塊,從而構(gòu)成連接關(guān)系,形成區(qū)塊鏈。
區(qū)塊鏈?zhǔn)褂玫降年P(guān)鍵技術(shù)有:哈希運(yùn)算、數(shù)字簽名、共識(shí)算法、智能合約、P2P網(wǎng)絡(luò)等。區(qū)塊鏈通過(guò)哈希運(yùn)算用來(lái)構(gòu)建區(qū)塊鏈的鏈?zhǔn)浇Y(jié)構(gòu),實(shí)現(xiàn)防篡改:即通過(guò)哈希運(yùn)算構(gòu)建默克爾樹,實(shí)現(xiàn)內(nèi)容改變的快速檢測(cè)。數(shù)字簽名在區(qū)塊鏈中驗(yàn)證收到消息的完整性和消息發(fā)送者身份的合法性。共識(shí)算法用來(lái)保證所有節(jié)點(diǎn)都記錄一分相同的正確數(shù)據(jù)。智能合約確保去中心化的區(qū)塊鏈各節(jié)點(diǎn)有統(tǒng)一的觸發(fā)邏輯。
2.2 區(qū)塊鏈的特性
根據(jù)區(qū)塊鏈的技術(shù)特點(diǎn)和實(shí)現(xiàn)原理可知區(qū)塊鏈技術(shù)是已有多種技術(shù)的集成創(chuàng)新,主要用于實(shí)現(xiàn)多方信任和高效協(xié)同[5]。區(qū)塊鏈系統(tǒng)具有透明可信、防篡改可追溯、隱私安全保障、系統(tǒng)高可靠四大特點(diǎn)。
區(qū)塊鏈系統(tǒng)中因?yàn)槠淙ブ行幕脑O(shè)計(jì),網(wǎng)絡(luò)中所有節(jié)點(diǎn)均是對(duì)等節(jié)點(diǎn),發(fā)送和接收消息平等。系統(tǒng)中的每個(gè)節(jié)點(diǎn)都可以完整的觀察其他節(jié)點(diǎn)的全部行為,并將觀察到的這些行為在各個(gè)節(jié)點(diǎn)記錄,從而實(shí)現(xiàn)信息透明。
防篡改指交易一旦在全網(wǎng)范圍內(nèi)經(jīng)過(guò)驗(yàn)證并添加至區(qū)塊鏈,就很難被修改或者抹除。這是因?yàn)閰^(qū)塊鏈?zhǔn)褂玫墓沧R(shí)算法保證了一旦寫入就很難篡改,若攻擊者強(qiáng)制篡改則需要控制整個(gè)系統(tǒng)超過(guò)51%的節(jié)點(diǎn)??勺匪菪允侵竻^(qū)塊鏈上的任意交易都是有完整記錄可追溯的。
隱私安全保障是區(qū)塊鏈中的任意節(jié)點(diǎn)都包含了完整的校驗(yàn)邏輯,所以任意節(jié)點(diǎn)都不需要依賴其他節(jié)點(diǎn)完成交易的確認(rèn)過(guò)程。因此節(jié)點(diǎn)之間不需要公開身份。
區(qū)塊鏈系統(tǒng)的高可靠性體現(xiàn)在每個(gè)節(jié)點(diǎn)都參與系統(tǒng)共識(shí)并維護(hù)賬本,某一節(jié)點(diǎn)出錯(cuò)不影響整個(gè)系統(tǒng)。區(qū)塊鏈系統(tǒng)因使用P2P網(wǎng)絡(luò)通信,不受節(jié)點(diǎn)數(shù)量限制和某一鏈路故障導(dǎo)致的通信問(wèn)題。
2.3 區(qū)塊鏈應(yīng)用價(jià)值
區(qū)塊鏈提供一種在不可信環(huán)境中,進(jìn)行信息與價(jià)值交換的機(jī)制。目前區(qū)塊鏈正往這幾個(gè)方向發(fā)展:第一,行業(yè)應(yīng)用加速。區(qū)塊鏈正在金融、醫(yī)療、物聯(lián)網(wǎng)身份認(rèn)證和供應(yīng)鏈領(lǐng)域應(yīng)用。第二,區(qū)塊鏈成為一種市場(chǎng)工具,減少中間環(huán)節(jié)降低流通成本。第三,區(qū)塊鏈有望推進(jìn)計(jì)算機(jī)底層通信協(xié)議的發(fā)展,讓數(shù)據(jù)記錄、傳播、存儲(chǔ)模式進(jìn)行轉(zhuǎn)變。第四,區(qū)塊鏈與云計(jì)算結(jié)合緊密,有望成為公信基礎(chǔ)設(shè)施[6]。
3? 區(qū)塊鏈在訪問(wèn)控制中的應(yīng)用
傳統(tǒng)的訪問(wèn)控制系統(tǒng)存在中心化系統(tǒng)缺點(diǎn),用戶的角色和訪問(wèn)控制信息存在于中心節(jié)點(diǎn)上,中心節(jié)點(diǎn)對(duì)用戶的隱私缺少保護(hù),系統(tǒng)的健壯性較弱,如果用戶較多并且同一時(shí)間對(duì)資源的訪問(wèn)量較多,則易發(fā)生負(fù)載過(guò)大,響應(yīng)遲緩等故障。傳統(tǒng)的訪問(wèn)控制系統(tǒng)也無(wú)法對(duì)惡意偽裝用戶進(jìn)行鑒別,對(duì)系統(tǒng)資源保護(hù)能力較差。針對(duì)傳統(tǒng)訪問(wèn)控制的缺點(diǎn),基于區(qū)塊鏈技術(shù)的訪問(wèn)控制技術(shù)通過(guò)去中心化、全員參與、操作可追溯、抗抵賴、高可靠性等特點(diǎn),可以有效的對(duì)資源進(jìn)行訪問(wèn)控制保護(hù),確保用戶的隱私不泄露,提升訪問(wèn)控制效率。
3.1 基于區(qū)塊鏈訪問(wèn)控制模型
通過(guò)分析區(qū)塊鏈技術(shù)的實(shí)現(xiàn)原理可設(shè)計(jì)基于區(qū)塊鏈訪問(wèn)控制的模型,該模型中區(qū)塊鏈節(jié)點(diǎn)為訪問(wèn)控制的主體,客體為存有大量客體的服務(wù)器,作為單獨(dú)的節(jié)點(diǎn)存在。角色存在于各節(jié)點(diǎn)的區(qū)塊鏈中,發(fā)生訪問(wèn)時(shí),服務(wù)器只需要驗(yàn)證發(fā)起訪問(wèn)區(qū)塊鏈的角色屬性即可。這一模型去除了第三方的授權(quán)系統(tǒng),主體隱私得以保護(hù)。該模型如圖1所示。
圖1中NODE0節(jié)點(diǎn)為資源節(jié)點(diǎn),NODE1到NODEn為主體節(jié)點(diǎn),若要發(fā)起訪問(wèn),可根據(jù)智能合約定義閾值,每個(gè)主體節(jié)點(diǎn)的角色值在某區(qū)間則對(duì)應(yīng)對(duì)資源的某種權(quán)限。當(dāng)新的客體出現(xiàn)時(shí)則按照區(qū)塊鏈原理計(jì)算并納入鏈中。若需要修改權(quán)限,管理人員根據(jù)規(guī)則讓某節(jié)點(diǎn)進(jìn)行角色值的增加,增加后按照區(qū)塊鏈規(guī)則進(jìn)行全節(jié)點(diǎn)的通信記賬。
當(dāng)客體資源允許某個(gè)主體訪問(wèn)時(shí),可利用該主體節(jié)點(diǎn)按照區(qū)塊鏈傳輸要求進(jìn)行非對(duì)稱加密,即公鑰加密、私鑰解密。在整個(gè)鏈上的傳輸過(guò)程中,只有授權(quán)訪問(wèn)節(jié)點(diǎn)可以通過(guò)自己的私鑰進(jìn)行數(shù)據(jù)解密,其他節(jié)點(diǎn)即使獲取到數(shù)據(jù)也無(wú)法得知信息內(nèi)容。當(dāng)某個(gè)節(jié)點(diǎn)根據(jù)智能合約取得資源的訪問(wèn)權(quán)限之后,通過(guò)此加密傳輸方法可以保證資源的安全保密,也可以防止獲取資源節(jié)點(diǎn)非法的將資源轉(zhuǎn)移給第三方。
3.2 基于區(qū)塊鏈訪問(wèn)控制優(yōu)點(diǎn)
由于基于區(qū)塊鏈的訪問(wèn)控制優(yōu)勢(shì)如下:
①去中心化的結(jié)構(gòu)可以增強(qiáng)每個(gè)訪問(wèn)主體的隱私性,通過(guò)秘鑰公鑰對(duì)進(jìn)行加密傳輸,被訪問(wèn)端只可驗(yàn)證訪問(wèn)的合法性不能知道具體的訪問(wèn)者身份。
②訪問(wèn)控制成本的降低:由于去掉了第三方授權(quán)中心,每個(gè)節(jié)點(diǎn)只需要在本地運(yùn)行程序即可實(shí)現(xiàn)訪問(wèn)控制,因此硬件成本大大降低。
③訪問(wèn)控制效率增強(qiáng):由于通過(guò)P2P網(wǎng)絡(luò)進(jìn)行傳輸,主體節(jié)點(diǎn)任一損壞不影響整個(gè)系統(tǒng);主體直接和資源進(jìn)行通信,免去第三方判定,提高了訪問(wèn)控制效率。
4? 結(jié)論
訪問(wèn)控制是計(jì)算機(jī)科學(xué)重要的安全技術(shù)之一,是信息安全防御體系的重要組成部分。由于區(qū)塊鏈技術(shù)對(duì)于目前面臨的隱私保護(hù)、抗抵賴、可追溯性有較強(qiáng)優(yōu)勢(shì),用以訪問(wèn)控制可以去除傳統(tǒng)方式存在的依賴第三方、效率低下、安全性差等問(wèn)題。如何利用區(qū)塊鏈技術(shù)提高信息安全是將來(lái)IT行業(yè)的一個(gè)熱點(diǎn)研究方向。
參考文獻(xiàn):
[1]中國(guó)工信部.中國(guó)區(qū)塊鏈技術(shù)和應(yīng)用發(fā)展白皮書[OL].中國(guó)區(qū)塊鏈技術(shù)和產(chǎn)業(yè)發(fā)展論壇,2016,10.
[2]李昊,張敏,馮登國(guó).大數(shù)據(jù)訪問(wèn)控制研究[J].計(jì)算機(jī)學(xué)報(bào), 2017(1):72-91.
[3]ZHANG Y, WU X.Access Control in Internet of Things:ASurvey [J]. 2016.
[4]華為區(qū)塊鏈技術(shù)開發(fā)團(tuán)隊(duì).區(qū)塊鏈技術(shù)及應(yīng)用[M].北京:清華大學(xué)出版社,2019,3.
[5]METTLER M. Blockchain technology in healthcare: The revolution starts here. proceedings of the IEEE International Conference on E-Health Networking, Applications and Services, F,2016[C].
[6]馬昂,潘曉,吳雷,郭景峰,黃倩文.區(qū)塊鏈技術(shù)基礎(chǔ)及應(yīng)用研究綜述[J].信息安全研究,2017,3(11):968-980.