趙慧
關(guān)鍵詞:區(qū)塊鏈;策略分級(jí);等級(jí)評(píng)估;訪問控制模型
我國(guó)訪問控制方法及技術(shù)在信息網(wǎng)絡(luò)技術(shù)的支持下衍生出很多先進(jìn)的訪問控制模型,對(duì)信息安全管理等起到了積極作用。傳統(tǒng)的訪問控制方法主要包括自主訪問控制(DAC)和強(qiáng)訪問控制技術(shù)(MAC),這兩種方法都需要在特定非開放環(huán)境中才能進(jìn)行訪問,所制定的訪問控制策略粒度也比較粗放,無法滿足數(shù)據(jù)共享要求。
DAC和MAC都存在很多不足,因此,很多訪問控制技術(shù)人員都在不斷優(yōu)化、創(chuàng)新訪問控制技術(shù),而基于區(qū)塊鏈、策略分級(jí)構(gòu)建的訪問控制模型BP-ABAC則能夠彌補(bǔ)以上兩種傳統(tǒng)訪問控制技術(shù)的不足,并根據(jù)自身屬性、環(huán)境屬性對(duì)用戶進(jìn)行動(dòng)態(tài)授權(quán),從而實(shí)現(xiàn)數(shù)據(jù)共享與訪問控制。本文先簡(jiǎn)單概述了基于區(qū)塊鏈和策略分級(jí)構(gòu)建訪問控制模型時(shí)需要預(yù)備的知識(shí),然后分析了如何構(gòu)建訪問控制模型,最后分析其實(shí)驗(yàn)仿真及安全性。
1概述
1.1區(qū)塊鏈系統(tǒng)
區(qū)塊鏈技術(shù)具有很強(qiáng)的綜合性及結(jié)構(gòu)復(fù)雜性,對(duì)應(yīng)的區(qū)塊鏈系統(tǒng)由多個(gè)子系統(tǒng)組成,包括數(shù)據(jù)層子系統(tǒng)、網(wǎng)絡(luò)層子系統(tǒng)、共識(shí)層子系統(tǒng)、激勵(lì)層子系統(tǒng)、合約層子系統(tǒng)和應(yīng)用層子系統(tǒng)。區(qū)塊鏈技術(shù)不僅涉及P2P網(wǎng)絡(luò)技術(shù)及密碼學(xué)技術(shù)的應(yīng)用,還涉及共識(shí)機(jī)制及智能合約等技術(shù)的應(yīng)用,其中智能合約是策略分級(jí)的關(guān)鍵。
1.2策略分級(jí)
策略分級(jí)主要依靠“智能合約”來實(shí)現(xiàn)。智能合約實(shí)質(zhì)上就是先將合約內(nèi)容轉(zhuǎn)變?yōu)閿?shù)字,然后依照相關(guān)實(shí)現(xiàn)承諾、合約規(guī)定內(nèi)容執(zhí)行承諾的協(xié)議,最后進(jìn)行策略分級(jí)。策略分級(jí)的前提和基礎(chǔ)是構(gòu)建區(qū)塊鏈系統(tǒng),利用區(qū)塊鏈系統(tǒng)的分布式網(wǎng)絡(luò)節(jié)點(diǎn)自動(dòng)分級(jí),并在滿足合同協(xié)議條款及交易要求的前提下,由第三方信任平臺(tái)監(jiān)督用戶。在策略分級(jí)中還需要注意安全自動(dòng)化操作及相關(guān)條款的執(zhí)行,必須按照智能合約將相關(guān)數(shù)據(jù)信息寫入?yún)^(qū)塊鏈中,最后結(jié)合區(qū)塊鏈的共識(shí)算法構(gòu)建狀態(tài)機(jī)系統(tǒng),為訪問控制模型的構(gòu)建奠定基礎(chǔ)。
1.3訪問控制模型(ABAC模型)
訪問控制模型簡(jiǎn)稱“ABAC模型”,不僅能夠有效控制用戶對(duì)資源的訪問請(qǐng)求,還能夠?qū)徍擞脩粜畔?,確保信息安全。基于區(qū)塊鏈及策略分級(jí)的訪問控制模型具有很強(qiáng)的表達(dá)能力,而且表達(dá)聚合度高、靈活性高、可擴(kuò)展性高。訪問控制模型有主體、客體、操作、環(huán)境四大屬性,其中主體和客體都可通過屬性集表達(dá),而屬性集則通過對(duì)應(yīng)的屬性值表達(dá)。
2基于區(qū)塊鏈和策略分級(jí)的訪問控制模型設(shè)計(jì)
基于區(qū)塊鏈和策略分級(jí)的訪問控制模型簡(jiǎn)稱“BP-ABAC模型”.具體設(shè)計(jì)及實(shí)現(xiàn)如下。
2.1BP.ABAC模型總體框架
BP-ABAC模型是在ABAC模型基礎(chǔ)上結(jié)合區(qū)塊鏈及智能合約技術(shù)設(shè)計(jì)而成,不僅能夠?qū)τ脩暨M(jìn)行等級(jí)劃分及策略分級(jí),還能夠?qū)Ω鞣N數(shù)據(jù)資源進(jìn)行安全訪問及有效控制。BP-ABAC模型在前期可根據(jù)屬性收集和屬性間關(guān)系描述、整合和管理區(qū)塊鏈?zhǔn)?,并發(fā)布、更新、執(zhí)行、撤銷訪問控制策略。
BP-ABAC模型包括策略信息點(diǎn)、策略管理點(diǎn)、策略決策點(diǎn)、策略執(zhí)行點(diǎn)四大功能模塊,其中策略信息點(diǎn)功能模塊可獲取資源請(qǐng)求者實(shí)體屬性機(jī)信息、資源實(shí)體屬性及信息、資源發(fā)布者實(shí)體屬性及信息,然后設(shè)置資源訪問控制權(quán)限:策略管理點(diǎn)功能模塊主要作用在于管理和維護(hù)資源擁有者發(fā)布的策略及整個(gè)策略集:策略決策點(diǎn)功能模塊的主要作用在于根據(jù)用戶等級(jí)確定相關(guān)訪問權(quán)限,并根據(jù)用戶實(shí)體屬性集權(quán)限確定訪問控制策略及系統(tǒng)授權(quán)決定:策略執(zhí)行點(diǎn)功能模塊的作用在于接收資源請(qǐng)求者訪問請(qǐng)求、資源請(qǐng)求者決策等。
2.2BP-ABAC模型設(shè)計(jì)
其包括基于區(qū)塊鏈的BP-ABAC智能合約設(shè)計(jì)及策略分級(jí)設(shè)計(jì),具體如下。
2.2.1基于區(qū)塊鏈的BP-ABAC智能合約設(shè)計(jì)
BP-ABAC智能合約系統(tǒng)不僅有合約參與者模塊及合約事務(wù)集合模塊,還有合約資源集合模塊、自動(dòng)狀態(tài)機(jī)模塊,其運(yùn)行原理在于通過事件形式將數(shù)據(jù)信息描述出來,并發(fā)送到事件集合及處理系統(tǒng)中,最后將處理后的事件數(shù)據(jù)信息存到區(qū)塊鏈系統(tǒng)指定的數(shù)據(jù)庫中。不同模塊的設(shè)計(jì)如下。
(1)合約參與者模塊設(shè)計(jì):可根據(jù)AddUser()函數(shù)及DeleteUser()函數(shù)進(jìn)行設(shè)計(jì),其中AddUser()函數(shù)可用來添加用戶身份屬性、用戶信息,并保存到區(qū)塊鏈上,以便于PIP合約對(duì)用戶屬性的調(diào)用;DeleteUser()函數(shù)可用來撤銷用戶訪問控制權(quán)限、刪除用戶信息及用戶屬性。
(2)合約資源集合模塊設(shè)計(jì):可根據(jù)AddResource()函數(shù)及DeleteResource()函數(shù)進(jìn)行設(shè)計(jì),其中AddResource()函數(shù)可發(fā)送、共享數(shù)據(jù),并設(shè)置訪問控制權(quán)限、保存訪問控制策略。DeleteResource()函數(shù)則能夠控制、收回訪問控制權(quán)限,并刪除相關(guān)數(shù)據(jù)信息、撤銷共享權(quán)限策略。
(3)自動(dòng)狀態(tài)機(jī)模塊設(shè)計(jì):可根據(jù)JudgeLevel()函數(shù)、PolicySet()函數(shù)進(jìn)行設(shè)計(jì),其中JudgeLevel()函數(shù)能判定資源請(qǐng)求者實(shí)體屬性及用戶等級(jí),并查詢、匹配相應(yīng)等級(jí)的策略;PolicySet()函數(shù)則能夠控制訪問控制屬性信息、調(diào)整訪問控制策略等。
(4)合約事務(wù)集集合模塊設(shè)計(jì):可根據(jù)ComparePolicy()函數(shù)、GetPermission()函數(shù)、ExecuteRequest()函數(shù)進(jìn)行設(shè)計(jì),其中ComparePolicy()函數(shù)的作用是對(duì)比資源請(qǐng)求者、資源發(fā)布者訪問控制策略的實(shí)體屬性,然后判斷性是否能獲得訪問控制權(quán)限;GetPermission()函數(shù)的作用是授予資源請(qǐng)求者的資源訪問權(quán)限、交易權(quán)限等;ExecuteRequest()函數(shù)的作用在于執(zhí)行訪問操作。
2.2.2策略分級(jí)設(shè)計(jì)
每條策略對(duì)應(yīng)的實(shí)體屬性及可信值不同,訪問請(qǐng)求、系統(tǒng)交互等都會(huì)影響可信值,出現(xiàn)惡意訪問時(shí)策略可信值會(huì)降低,當(dāng)可信值降低到一定數(shù)值時(shí)就會(huì)映射到不同可信等級(jí),因此策略可信值成為了策略分級(jí)的主要依據(jù)。策略主體屬性、客體屬性集操作行為對(duì)應(yīng)的環(huán)境安全關(guān)聯(lián)度分別用R(s,e),R(o,e),R(a,e)表示,可根據(jù)關(guān)聯(lián)度計(jì)算出策略初始可信值,并將策略可信值設(shè)為“CurrentT”。
策略可信值并不是一成不變的,會(huì)隨著訪問授權(quán)次數(shù)的增加而不斷改變,發(fā)生變化前的可信值統(tǒng)稱為“策略歷史可信值”,發(fā)生變化后的可信值設(shè)為History:r,可通過以下公式計(jì)算:
最終可信值越高則可信等級(jí)越高,可信強(qiáng)度也就越強(qiáng)。
3仿真實(shí)驗(yàn)
為測(cè)試BP-ABAC模型的可行性、安全性及效率,本文選用XACML提供的標(biāo)準(zhǔn)策略測(cè)試包對(duì)BP-ABAC模型進(jìn)行測(cè)試,并將BP-ABAC模型與傳統(tǒng)訪問控制的判決結(jié)果成功率作對(duì)比。對(duì)比結(jié)果顯示,BP-ABAC模型和傳統(tǒng)訪問控制的判決結(jié)果成功率及準(zhǔn)確率都在可控制范圍內(nèi)。
本文設(shè)計(jì)的BP-ABAC模型在準(zhǔn)確率上略低于傳統(tǒng)訪問控制,還需要不斷優(yōu)化、調(diào)整。導(dǎo)致BP-ABAC模型準(zhǔn)確率不如傳統(tǒng)訪問控制的主要原因有以下幾點(diǎn)。首先,BP-ABAC模型的共識(shí)機(jī)制很容易受到外部因素影響,如外部信號(hào)干擾、共識(shí)系統(tǒng)技術(shù)缺陷等,都會(huì)威脅到共識(shí)機(jī)制的安全,雖然區(qū)塊鏈本身的抗攻擊性能夠規(guī)避部分風(fēng)險(xiǎn),但在實(shí)際運(yùn)行中依然會(huì)遇到各種信息安全問題及惡意訪問問題,如區(qū)塊鏈在接收到攻擊性或者惡意的訪問時(shí),就會(huì)在可信鏈與惡意節(jié)點(diǎn)處產(chǎn)生攻擊鏈,從而威脅共識(shí)機(jī)制安全。其次,區(qū)塊鏈系統(tǒng)中惡意節(jié)點(diǎn)的增加或者攻擊鏈長(zhǎng)度過長(zhǎng),都會(huì)直接威脅到區(qū)塊鏈的安全,從而降低BP-ABAC模型的訪問控制策略判決準(zhǔn)確性。
另外,惡意節(jié)點(diǎn)與可信節(jié)點(diǎn)的區(qū)塊差也直接影響B(tài)P-ABAC模型的策略判決成功率,以及BP-ABAC模型惡意節(jié)點(diǎn)與可信節(jié)點(diǎn)的區(qū)塊差、區(qū)塊成功率的關(guān)系。
區(qū)塊差與BP-ABAC模型的區(qū)塊篡改成功率呈正相關(guān)關(guān)系,即區(qū)塊差越大,則篡改成功率越大,反之則越小。而區(qū)塊篡改成功率與BP-ABAC模型的策略判決成功率呈正相關(guān)關(guān)系,所以區(qū)塊差與BP-ABAC模型的策略判決成功率也呈正相關(guān)關(guān)系,這意味著區(qū)塊差越大,則BP-ABAC模型的策略判決成功率越高。當(dāng)區(qū)塊差g≥0.5時(shí),BP-ABAC模型的策略判決成功率超過90%,對(duì)應(yīng)的區(qū)塊篡改成功率為100%,此時(shí)的BP-ABAC模型安全性最高,很難被惡意區(qū)塊鏈攻擊;區(qū)塊差q<0.5時(shí),BP-ABAC模型的策略判決成功率、區(qū)塊篡改成功率都呈逐漸下降的趨勢(shì)且容易受到惡意區(qū)塊鏈的攻擊,所以必須將區(qū)塊差控制在g≥0.5的范圍,以幫助區(qū)塊鏈在訪問控制過程中取得良好的安全性。
4結(jié)束語
BP-ABAC模型是以ABAC模型為基礎(chǔ),然后基于區(qū)塊鏈及策略分級(jí)構(gòu)建而成的一種訪問控制模型。該模型不僅在區(qū)塊鏈的支持下去中心化,還具有不可篡改、擺脫傳統(tǒng)第三方信任機(jī)制限制、訪問控制可靠性高、安全性高等特點(diǎn),實(shí)現(xiàn)了訪問控制授權(quán)過程自動(dòng)化。智能合約、用戶等級(jí)評(píng)判和策略分級(jí)都能夠保證資源請(qǐng)求者的合法性,還能夠有效防止過度授權(quán)、越權(quán)訪問等不良現(xiàn)象的發(fā)生,從而提高訪問控制過程的安全,并實(shí)現(xiàn)數(shù)據(jù)共享。區(qū)塊鏈及策略分級(jí)還能夠增強(qiáng)訪問控制模型的加密屬性,對(duì)交易隱私數(shù)據(jù)、交易敏感數(shù)據(jù)、用戶隱私信息等進(jìn)行加密及保護(hù),有效解決數(shù)據(jù)及信息隱私泄露等安全問題。所以,基于區(qū)塊鏈及策略分級(jí)構(gòu)建訪問控制模型是非常必要和重要的,應(yīng)引起重視及關(guān)注。本文基于對(duì)ABAC模型、區(qū)塊鏈、智能合約及策略分級(jí)等的了解,分析了基于區(qū)塊鏈及策略分級(jí)的訪問控制模型,并通過實(shí)驗(yàn)仿真來檢驗(yàn)?zāi)P汀?/p>