劉云 宋凱 陳路遙 朱鵬俊
摘要:區(qū)塊鏈技術(shù)可解決物聯(lián)網(wǎng)傳統(tǒng)訪問控制方案中管理集中、數(shù)據(jù)易丟失等問題,實(shí)現(xiàn)分布式、安全性高的訪問控制,但容易忽視建立動(dòng)態(tài)靈活的訪問控制機(jī)制的重要性,當(dāng)節(jié)點(diǎn)被破壞時(shí)無法自動(dòng)捕捉網(wǎng)絡(luò)的動(dòng)態(tài)信息,并相應(yīng)地調(diào)整其授權(quán)策略.本文設(shè)計(jì)了一種基于屬性的物聯(lián)網(wǎng)訪問控制機(jī)制,具有輔助授權(quán)的信任和聲譽(yù)系統(tǒng),提出多維適配算法(MDAA),首先利用一個(gè)公有區(qū)塊鏈和私有側(cè)鏈,將敏感信息和公共數(shù)據(jù)分開存儲(chǔ),服務(wù)消費(fèi)節(jié)點(diǎn)注冊屬性,服務(wù)提供節(jié)點(diǎn)定義訪問門限策略;接著信任和聲譽(yù)系統(tǒng)逐步量化網(wǎng)絡(luò)中每個(gè)節(jié)點(diǎn)的信任和聲譽(yù)評分,當(dāng)服務(wù)消費(fèi)節(jié)點(diǎn)發(fā)起訪問請求后,智能合約驗(yàn)證服務(wù)消費(fèi)節(jié)點(diǎn)是否滿足訪問門限策略要求的屬性和信任聲譽(yù)閾值,都滿足則獲得訪問權(quán)限;最后依據(jù)節(jié)點(diǎn)間交互作用定期更新節(jié)點(diǎn)的信任和聲譽(yù)評分,實(shí)現(xiàn)動(dòng)態(tài)驗(yàn)證和授權(quán).仿真結(jié)果表明,與TARAS算法、DADAC算法相比,MDAA支持雙向信任評估,具有較好的算法收斂性,在確保授權(quán)安全的同時(shí)減少了處理訪問控制的延遲,具有適用性.
關(guān)鍵詞:多維適配算法;信任和聲譽(yù)系統(tǒng);訪問控制;區(qū)塊鏈;物聯(lián)網(wǎng)
收稿日期: 2022-07-07
基金項(xiàng)目: 國家自然科學(xué)基金(61761025);云南省重大科技專項(xiàng)計(jì)劃項(xiàng)目(202002AD080002)
作者簡介: 劉云(1973-),男,云南昆明人,副教授,主要從事物聯(lián)網(wǎng)、區(qū)塊鏈和數(shù)據(jù)處理等研究. E-mail: liuyun@kmust.edu.cn
通訊作者: 宋凱. E-mail: 1612253143@qq.com
Optimization study of trusted authorization of blockchain nodes by
multi-dimensional adaptation algorithm
LIU Yun, SONG Kai, CHEN Lu-Yao, ZHU Peng-Jun
(Faculty of Information Engineering and Automation, Kunming
University of Science and Technology, Kunming 650500, China)
Blockchain technology can solve the problems of centralized management and easy data loss in the traditional access control scheme of IoT to achieve distributed and high security access control, but it is easy to ignore the importance of establishing a dynamic and flexible access control mechanism such that the dynamic information of the network cannot be captured automatically when its node is damaged and its authorization policy is adjusted accordingly. This paper design an attribute-based access control mechanism for IoT with a trust and reputation system that assists authorization, and a multidimensional adaptation algorithm (MDAA)is proposed. Firstly, a public blockchain and a private sidechain are used to store sensitive information and public data separately, access threshold policies are defined by service consuming nodes register attributes and service providing nodes. Secondly, the trust and reputation system gradually quantifies the trust and reputation scores of each node in the network. when a service consumer node initiates an access request, the smart contract verifies whether the service consumer node satisfies thresholds of the attributes, trust and reputation required by the access threshold policy, the access privileges is available if satisfied. Finally, the trust and reputation scores of nodes are updated periodically based on interactions between nodes to achieve dynamic verification and authorization. Simulation results show that compared with TARAS algorithm and DADAC algorithm, MDAA supports two-way trust evaluation, has better algorithm convergence and reduces the delay in processing access control while ensuring authorization security, which is applicable.
Multidimensional adaptation algorithm; Trust and reputation systems; Access control; Blockchain;Internet of things
1 引 言
訪問控制技術(shù)常被用來解決物聯(lián)網(wǎng)在信息通信和訪問控制中的安全性問題,但基于集中式服務(wù)器的訪問控制方案存在單點(diǎn)故障的風(fēng)險(xiǎn)[1,2].例如當(dāng)監(jiān)控設(shè)備、傳感器節(jié)點(diǎn)或中心服務(wù)器遭到攻擊時(shí),相應(yīng)的數(shù)據(jù)信息則存在泄露或丟失風(fēng)險(xiǎn).區(qū)塊鏈和訪問控制技術(shù)結(jié)合,有潛力解決物聯(lián)網(wǎng)集中式訪問控制方案中存在的管理集中、數(shù)據(jù)易泄露篡改等問題[3],實(shí)現(xiàn)分布式、安全性高的訪問控制[4].基于屬性的物聯(lián)網(wǎng)區(qū)塊鏈訪問控制傳統(tǒng)方案忽視了建立動(dòng)態(tài)靈活的訪問控制機(jī)制的重要性[5],若服務(wù)消費(fèi)者屬性達(dá)標(biāo),但發(fā)起服務(wù)請求次數(shù)過于頻繁或出現(xiàn)多次違規(guī)行為,當(dāng)節(jié)點(diǎn)遭受攻擊被破壞時(shí),傳統(tǒng)方案將繼續(xù)執(zhí)行預(yù)定義訪問門限策略,而不是動(dòng)態(tài)獲取請求者和節(jié)點(diǎn)當(dāng)前狀態(tài)信息去適當(dāng)調(diào)整其訪問門限策略以考慮損壞的條件[6].如何在不忽略訪問控制需要隱私事實(shí)的情況下實(shí)現(xiàn)動(dòng)態(tài)和可靠的訪問控制,成為基于區(qū)塊鏈的物聯(lián)網(wǎng)訪問控制過程中的一個(gè)重要問題.
Gwak等[7]提出TARAS(Trust-Aware Role-Based Access Control System)算法,基于角色和動(dòng)態(tài)信任估計(jì)為用戶提供自適應(yīng)授權(quán).對于初始信任建立,采用多學(xué)科方法,利用I-sharing 概念,以便在事先很少交互的情況下快速建立對象和用戶之間的信任關(guān)系,同時(shí)通過基于自適應(yīng)的動(dòng)態(tài)信任估計(jì)撤銷訪問權(quán)限來自適應(yīng)地過濾惡意用戶.仿真結(jié)果表明,TARAS 算法可以在正確檢測惡意或良性用戶方面最大限度地提高系統(tǒng)完整性,同時(shí)最大限度地提高用戶的服務(wù)可用性[7].Wang等[8]提出DADAC(Dynamic Attribute-based Distributed Access Control)算法,設(shè)計(jì)基于動(dòng)態(tài)屬性的分布式訪問控制框架允許通過評估與請求相關(guān)的屬性、操作和環(huán)境來訪問資源,鑒于物聯(lián)網(wǎng)設(shè)備中設(shè)備安全的動(dòng)態(tài)波動(dòng),提出一種基于馬爾可夫鏈的信任管理方案,利用區(qū)塊鏈的訪問歷史對物聯(lián)網(wǎng)設(shè)備進(jìn)行相互評價(jià),并將全局信任值的評價(jià)建模為馬爾可夫穩(wěn)態(tài)計(jì)算問題,實(shí)現(xiàn)物聯(lián)網(wǎng)中的分布式可信訪問控制,并能很好地抵御網(wǎng)絡(luò)中不良行為的攻擊[8].
針對輔助物聯(lián)網(wǎng)訪問控制的信任和聲譽(yù)系統(tǒng)(Trust and Reputation System,TRS),文章設(shè)計(jì)一種基于屬性的訪問控制機(jī)制,以捕捉網(wǎng)絡(luò)的動(dòng)態(tài)信息,并提出一種多維適配算法(Multi-dimensional Adaptation Algorithm,MDAA)用于基于區(qū)塊鏈的物聯(lián)網(wǎng)節(jié)點(diǎn)可信授權(quán).首先利用公有區(qū)塊鏈和私有側(cè)鏈將敏感信息和公共數(shù)據(jù)的存儲(chǔ)分開;接著服務(wù)消費(fèi)節(jié)點(diǎn)注冊屬性,服務(wù)提供節(jié)點(diǎn)定義訪問門限策略,TRS逐步量化網(wǎng)絡(luò)中每個(gè)節(jié)點(diǎn)的信任和聲譽(yù)評分,當(dāng)服務(wù)消費(fèi)節(jié)點(diǎn)發(fā)起訪問請求后,智能合約驗(yàn)證服務(wù)消費(fèi)節(jié)點(diǎn)是否滿足訪問門限策略要求的屬性和信任聲譽(yù)閾值,都滿足則獲得訪問權(quán)限;最后依據(jù)節(jié)點(diǎn)間交互作用定期更新節(jié)點(diǎn)的信任和聲譽(yù)評分,實(shí)現(xiàn)動(dòng)態(tài)驗(yàn)證和精準(zhǔn)的訪問控制.仿真結(jié)果表明,MDAA具有較好的算法收斂性,在確保授權(quán)安全的同時(shí)減少了處理訪問控制的延遲,具有適用性.
2 系統(tǒng)模型
2.1 基于屬性的分散訪問控制模型
為管理和限制物聯(lián)網(wǎng)中誰可以在某些條件下訪問哪些資源,同時(shí)保護(hù)敏感信息,支持不同類型數(shù)據(jù)分開存儲(chǔ),本文提出圖1所示的基于屬性的分散訪問控制模型.該模型采用基于屬性的訪問控制機(jī)制,利用兩種類型的區(qū)塊鏈網(wǎng)絡(luò)實(shí)現(xiàn)敏感信息保護(hù).
我們將物聯(lián)網(wǎng)節(jié)點(diǎn)分為兩類:服務(wù)提供者(SP)和服務(wù)消費(fèi)者(SC)[9].服務(wù)提供者擁有一組資源,服務(wù)消費(fèi)者是對服務(wù)提供者所擁有的資源感興趣的用戶設(shè)備.服務(wù)消費(fèi)者可以免費(fèi)訪問,或支付少量的訪問費(fèi)去訪問.物聯(lián)網(wǎng)設(shè)備運(yùn)行一個(gè)輕區(qū)塊鏈客戶端后直接連接到主公共區(qū)塊鏈網(wǎng)絡(luò),意味著這些設(shè)備應(yīng)該有足夠的資源來支持非對稱加密.在設(shè)備受到資源限制的情況下,它們可以選擇使用第三方服務(wù)或依賴其通信網(wǎng)關(guān)來提供與區(qū)塊鏈的連接.
在圖1所示模型中,攻擊者可能惡意破壞網(wǎng)絡(luò)的SP或SC,文章將這種破壞分為三類,訪問門限策略攻擊、聲譽(yù)攻擊和其他網(wǎng)絡(luò)協(xié)議攻擊.網(wǎng)絡(luò)協(xié)議攻擊是由已建立的入侵檢測機(jī)制來處理的,而前兩類攻擊是由文章的信任聲譽(yù)系統(tǒng)機(jī)制來處理.
屬性授權(quán)聯(lián)盟:使用物聯(lián)網(wǎng)設(shè)備的固有屬性來確定是否允許節(jié)點(diǎn)訪問基于屬性的訪問控制方案中定義的資源.屬性授權(quán)聯(lián)盟負(fù)責(zé)根據(jù)符合硬件規(guī)范和所有權(quán)信息的規(guī)定指南,向參與的物聯(lián)網(wǎng)節(jié)點(diǎn)發(fā)布合法屬性[10].
公有區(qū)塊鏈網(wǎng)絡(luò):公有區(qū)塊鏈表示為MB,提供分散和協(xié)作的訪問控制邏輯和防篡改的可信數(shù)據(jù)存儲(chǔ)的可信執(zhí)行.設(shè)置一組私有區(qū)塊鏈PB=pb1,pb2,…,pbn以維護(hù)一個(gè)私有的不可變列表的屬性記錄,同時(shí)可以解決物聯(lián)網(wǎng)屬性的隱私問題.每個(gè)pbk是由一個(gè)獨(dú)立的屬性授權(quán)聯(lián)盟AAk=AA1k,AA2k,…, AAyk進(jìn)行維護(hù)的,其中對pbk的訪問被限制在相應(yīng)的AAk里面.此外,每個(gè)pb與MB相互連接,充當(dāng)向MB提供屬性信息的側(cè)鏈.為避免敏感信息的泄漏,PB有嚴(yán)格的訪問限制,即pbk只訪問相應(yīng)的AAk.MB部署兩個(gè)公共智能合約,信任信譽(yù)合約(CTRTRS)和政策合約(CTRpol),分別存儲(chǔ)信任計(jì)算和訪問門限策略(Pr,c)驗(yàn)證的邏輯.PB部署一個(gè)屬性提供者合約(CTRAP),它位于每個(gè)pb中,負(fù)責(zé)屬性注冊和驗(yàn)證.
專用數(shù)據(jù)存儲(chǔ):鏈外專用數(shù)據(jù)存儲(chǔ)可在較長時(shí)間段內(nèi)存儲(chǔ)大量數(shù)據(jù).SC定期存儲(chǔ)和更新數(shù)據(jù),并附加簽名以確保完整性,也可請求訪問公有區(qū)塊鏈獲取訪問數(shù)據(jù)的合法訪問令牌.假設(shè)網(wǎng)絡(luò)中有多個(gè)具有足夠冗余級(jí)別的專用數(shù)據(jù)存儲(chǔ),以維護(hù)可伸縮性并提供高可用性.
文章使用橋接機(jī)制來連接MB和PB,并假設(shè)這兩種類型的區(qū)塊鏈?zhǔn)褂孟嗤墓€加密機(jī)制來處理身份驗(yàn)證和簽名進(jìn)程[11].
2.2 可信授權(quán)模型
基于TRS提出如圖2所示的可信授權(quán)模型.當(dāng)SC提出訪問申請后,CTRpol將多維度驗(yàn)證SC是否滿足Pr,c上要求的屬性和信任聲譽(yù)評分,驗(yàn)證通過后SC獲得訪問令牌,數(shù)據(jù)庫對訪問令牌進(jìn)行驗(yàn)證,確保訪問令牌為真的情況下數(shù)據(jù)庫和SP完成簽名,SC得到授權(quán).
在TRS中,對信任和聲譽(yù)評分的逐步評估有助于檢測和消除網(wǎng)絡(luò)中的惡意或損壞的節(jié)點(diǎn)[12] .節(jié)點(diǎn)的信任和聲譽(yù)評分是根據(jù)節(jié)點(diǎn)對訪問門限策略的遵守程度來計(jì)算的[13] .TRS定期對信任聲譽(yù)評分進(jìn)行更新并反饋給Pr,c進(jìn)行驗(yàn)證,實(shí)現(xiàn)一個(gè)動(dòng)態(tài)的自適應(yīng)授權(quán)系統(tǒng).該系統(tǒng)能捕獲網(wǎng)絡(luò)的動(dòng)態(tài)信息后檢測并消除惡意或受損害的節(jié)點(diǎn),或把違規(guī)節(jié)點(diǎn)列入網(wǎng)絡(luò)節(jié)點(diǎn)黑名單,通過區(qū)塊鏈?zhǔn)录ㄖ芯W(wǎng)絡(luò)參與者,將訪問權(quán)授予滿足Pr,c要求的用戶.
3 多維適配算法
3.1 算法參數(shù)定義
(1)信任和聲譽(yù)評分.SPj對SCi的信任評分TSPjSCi是由CTRTRS基于它們之前的互動(dòng)計(jì)算出來的,互動(dòng)包括積極和消極兩種.積極互動(dòng)指SCi對SPj的交互符合Pr,c的誠實(shí)行為,而消極的互動(dòng)則不然.如果SCi與SPj沒有交互作用,TSPjSCi則賦予初始值為0.t時(shí)刻下TSPjSCi計(jì)算為
其中:Υ是老化參數(shù)(0<Υ<1),反映最近的觀察比以前的觀察更有分量的可能性.當(dāng)m時(shí)刻的交互為積極時(shí),δm=δpos表示正向互動(dòng)后信任評分增加的權(quán)重;當(dāng)m時(shí)刻的交互為消極時(shí),δm=δneg表示負(fù)面互動(dòng)后信任評分減小的權(quán)重.為了讓建立信任比失去信任更難,此處選擇δpos<δneg.
在所有交互作用都是積極的極端情況下:
當(dāng)t→∞且所有交互作用都為積極,即SCi被SPj完全信任時(shí),有極限情況:
同樣,當(dāng)t→∞且所有交互作用都為消極,即SCi完全不可信時(shí),有極限情況:
因此,SPj對SCi的信任分?jǐn)?shù)受以下兩種極限情況的限制:
信任評分可以方便地界定,同時(shí)還可通過簡單的遞歸來計(jì)算:
采用與式(1)類似的方法計(jì)算SCi對SPj的信任評分TSCiSPj,表示SCi在接收到服務(wù)后積累的反饋.t個(gè)反饋實(shí)例TSCiSPj的信任評分計(jì)算為
聲譽(yù)是對一個(gè)節(jié)點(diǎn)過去行為的全局看法,來自于多個(gè)節(jié)點(diǎn)的信任關(guān)系的匯總[14] .聲譽(yù)在連續(xù)的積極互動(dòng)后逐漸增加,在消極互動(dòng)后顯著下降,因此采用Gompertz函數(shù)[15]對聲譽(yù)增長進(jìn)行建模.SCi的聲譽(yù)RSCi是通過將不同SP之間的信任評分聚合后的ASCi(t)提供給Gompertz函數(shù).
其中,Peersi(t)表示與SCi交互到時(shí)間t的SPj集合,|Peersi(t)|表示Peersi(t)的基數(shù).
由式(8)和式(9)可知,Peersi(t)增大,ASCi也隨之增大,但以一種緩和的方式阻止SCi通過具有較大的TSPjSCi(t)或較小的Peersi(t)來實(shí)現(xiàn)較大的ASCi值.在Gompertz函數(shù)中,a、b、c分別是漸近線、沿x軸的位移參數(shù)和增長率.通過這種方式與更多同行的互動(dòng)會(huì)增強(qiáng)聲譽(yù),也會(huì)帶來更合適的次線性增長率.此外,Gompertz函數(shù)保證RSCi的范圍在0到1之間,0和1 分別對應(yīng)于低聲譽(yù)和高聲譽(yù).
SPj的聲譽(yù)RSPj的計(jì)算方法相同:
(2)屬性.一般來說,任何SC在授權(quán)前必須注冊屬性.SCi有一組屬性,記為Ai={α1i,α2i,α3i…αmi},一個(gè)屬性αki表示為
其中,key,type和val分別對應(yīng)αki的名稱、類型和值.SC通過安全通道向與SC相關(guān)聯(lián)的pbk的AAyk發(fā)送屬性注冊請求來注冊自身.AAyk有一些基礎(chǔ)證據(jù)來驗(yàn)證和發(fā)布屬性,防止屬性偽造.當(dāng)接收到注冊請求時(shí),AAyk驗(yàn)證請求并通過調(diào)用事務(wù)TXreg將屬性存儲(chǔ)到pbk.
其中,SigSCi和SigAAk分別對應(yīng)SCi和AAk的簽名.由于AAs是部分可信的,pbk中的其他在線AAs需要根據(jù)指定的屬性指導(dǎo)方針驗(yàn)證TXreg,即屬性是否與基礎(chǔ)證據(jù)相匹配.如果TXreg有效,AAxk提交背書消息Exi,包含TXreg哈希值HTXreg和AAxk簽名SigAAxk.為承受故障或不可信的AAs,在任何給定時(shí)間需要3f+1個(gè)在線AAs,f為pb中故障或不可信的AAs的數(shù)量.因此,TXreg應(yīng)獲得至少2f+1的背書才被認(rèn)為是有效的.在其他AAs成功驗(yàn)證后,CTRAPk向MB發(fā)出一個(gè)密封事務(wù)TXseal,作為SC屬性已成功注冊的證明.
其中,H(Ai)和Ei分別對應(yīng)Ai的哈希值和其他AAs的背書集合.
(3)訪問門限策略.為定義訪問資源r的需求,SP構(gòu)建一個(gè)訪問門限策略[16]Pr,c去聲明必需屬性的布爾規(guī)則,且有權(quán)更新和撤銷對所有資源的Pr,c.Pr,c定義一組操作,記為T{real,write,stream},授權(quán)的SC可以對上下文c中的資源r執(zhí)行這些操作.Pr,c表示為
其中,Ap=α1p,α2p,…αnp是一組強(qiáng)制屬性碼;cp=t,l為一組時(shí)間和訪問吞吐量受到限制的允許的上下文;TP為請求執(zhí)行的動(dòng)作;Ur為數(shù)據(jù)刷新率;φr為訪問加密資源的費(fèi)用;RminSC和TminSC是訪問r最低的聲譽(yù)和信任評分.為激勵(lì)SC提交反饋,φr的一半將作為獎(jiǎng)勵(lì)返回給提交誠實(shí)反饋的SC.
SP構(gòu)建Pr,c將執(zhí)行區(qū)塊鏈?zhǔn)聞?wù)TXpol把Pr,c存儲(chǔ)到MB并作為管理任何SC授權(quán)的智能合約CTRpol的基礎(chǔ).TXpol表示為
其中,timestamp和SigSP分別對應(yīng)創(chuàng)建Pr,c的時(shí)間戳和SP的簽名.
(4)反饋.在授權(quán)過程和數(shù)據(jù)訪問期間更新了TSPjSCi和RSCi,當(dāng)SCi訪問資源r后向CTRTRS提交反饋TXF時(shí),SPj的信任、信譽(yù)評分也更新,反饋定義為
其中,F(xiàn)SCiSPj,r是SCi訪問資源r后的二進(jìn)制反饋.Data是獲得的數(shù)據(jù),其最后更新和訪問時(shí)間戳由SPj和DDS簽署.HTokenR是TokenR的哈希值,SigSCi是用于身份驗(yàn)證的SCi簽名.雖然SC可以訪問多次r,但TXF只能為每個(gè)TokenR提交一次,CTRTRS將始終檢查,重復(fù)反饋.
3.2 多維適配算法授權(quán)過程
基于Pr,c中的特定布爾屬性規(guī)則集評估SC對上下文c中r的傳入授權(quán)請求,CTRpol以MB為單位強(qiáng)制執(zhí)行訪問門限策略Pr,c,成功授權(quán)后將導(dǎo)致CTRpol發(fā)出訪問令牌,SC可以使用該令牌多次訪問資源,而無需重復(fù)授權(quán)過程.
(1)初始設(shè)置.首先將兩個(gè)核心智能合約(CTRTRS和CTRpol)部署到MB.其次,獨(dú)立的AAs創(chuàng)建并維護(hù)對應(yīng)的pb作為私有鏈,并宣布它們的存在.最后,每個(gè)AAk在pbk上部署自己的屬性提供者合約(CTRkAP),并在MB上積極偵聽來自CTRpol的傳入屬性查找事件.
(2)授權(quán)步驟.在授權(quán)之前,SCi必須將其屬性注冊到任何一個(gè)可用的AAs,假設(shè)與資源相關(guān)的信息已經(jīng)提前知道并存儲(chǔ)在DDS中.
步驟1
SPj定義Pr,c,發(fā)起一個(gè)事務(wù)TXpol,并將Pr,c存儲(chǔ)到MB.
步驟2
SCi通過發(fā)起交易TXR授權(quán)CTRpol.TXR定義為
TXR=rΤSigSCi(18)
步驟3
步驟3a和3b對應(yīng)于橋接機(jī)制,CTRpol使用該機(jī)制來驗(yàn)證SCi的屬性.CTRpol向MB發(fā)出一個(gè)屬性驗(yàn)證事件.每個(gè)連接到MB的pb監(jiān)聽事件并檢查PKSCi是否注冊在它們的鏈上,其中一個(gè)CTRkAP將在pbk上找到PKSCi(3a).CTRkAP驗(yàn)證屬性,并將結(jié)果作為屬性響應(yīng)事務(wù)TXAR返回CTRpol(3b).此外,CTRpol還調(diào)用CTRTRS獲取TSPjSCi和RSCi(3c).
步驟4
CTRpol執(zhí)行算法1來驗(yàn)證SCi是否滿足Pr,c上所需的屬性和信譽(yù)閾值,是否有足夠的余額支付訪問費(fèi)用.
步驟5
在成功的訪問驗(yàn)證之后,CTRpol會(huì)出現(xiàn)訪問令牌TokenR,定義為
TokenR=ExpR,l,t(19)
其中, ExpR是令牌過期時(shí)間,l是速率限制,t是令牌時(shí)間戳.CTRpol將TokenR發(fā)送給CTRTRS以更新信任和聲譽(yù)評分,同時(shí)作為SCi已被授權(quán)訪問r的證明.此外,CTRpol將φr的一半發(fā)到SPj的賬戶,將另一半的φr發(fā)送給CTRTRS作為反饋報(bào)酬.
步驟6
SCi根據(jù)r的規(guī)范,找到對應(yīng)的DDS來訪問數(shù)據(jù).SCi通過提交請求從DDS獲得一個(gè)nonce來啟動(dòng)這個(gè)過程.隨后,SCi通過安全通道將請求消息發(fā)送給DDS,該通道包含TokenR、加密nonce和SCi的簽名.
步驟7
使用偽造的令牌和DoS攻擊將導(dǎo)致違反Pr,c,從而降低TSPjSCi.為防止訪問令牌偽造,DDS向CTRTRS驗(yàn)證TokenR,檢查SC發(fā)送的快速連續(xù)請求速率是否高于速率限制l.驗(yàn)證成功后,DDS響應(yīng)訪問請求,發(fā)送由SP簽名的數(shù)據(jù)和DDS簽名的訪問時(shí)間戳,SC正式被授權(quán).
(3)授權(quán)反饋. TRS由CTRTRS在MB上通過更新某些事件的信任和信譽(yù)評分來管理.首先,當(dāng)SCi請求授權(quán)訪問SPj資源時(shí),TSPjSCi和RSCi將被更新,若訪問控制沖突,TSPjSCi和RSCi也會(huì)更新.其次,在Pr,c定義中,SPj會(huì)根據(jù)Ur定期更新數(shù)據(jù),當(dāng)SCi接收到SPj的服務(wù)后發(fā)送其反饋,正反饋FSCiSPj,r為及時(shí)數(shù)據(jù),負(fù)反饋數(shù)據(jù)為未及時(shí)更新的過時(shí)數(shù)據(jù).CTRTRS通過將上次更新和訪問時(shí)間戳與Ur進(jìn)行比較,驗(yàn)證SPj和DDS的簽名作為支持證據(jù)來驗(yàn)證TXF,當(dāng)證據(jù)支持反饋時(shí),增加SPj的信任和聲譽(yù)評分,相反,如果SCi提交誤導(dǎo)性反饋,CTRTRS將降低SCi的信任和聲譽(yù)評分.算法2為反饋機(jī)制的偽代碼.
4 仿真分析
4.1 仿真環(huán)境
以Hyperledger Fabric為區(qū)塊鏈平臺(tái),工作站使用Windows 10操作系統(tǒng),Intel Core i5-6200U CPU 2.40 GHz和Raspberry Pis(RaspberryPi-3B,Broadcom BCM2837 CPU,1 GB)來模擬基于區(qū)塊鏈的物聯(lián)網(wǎng)網(wǎng)絡(luò)的訪問控制過程.工作站和Raspberry Pis作為Fabric客戶端運(yùn)行Geth v1.9.25
來連接Rinkeby測試網(wǎng)絡(luò),使用Python v3.8.5和bash腳本模擬節(jié)點(diǎn)與web3.py v5.11和py-solc v3.2.2庫之間的交互,分別與Hyperledger Fabric對等體通信和編譯智能合約,用SolidityV0.7.1編寫CTRpol、CTRTRS和CTRAA的實(shí)現(xiàn),并原生支持高效計(jì)算和哈希的驗(yàn)證.
4.2 穩(wěn)定性分析
根據(jù)式(7)~式(9),利用信任評分演化和聲譽(yù)評分演化去驗(yàn)證MDAA在節(jié)點(diǎn)交互過程中的可行性.信任評分和聲譽(yù)評分的演化過程可反映TRS對誠實(shí)節(jié)點(diǎn)和惡意節(jié)點(diǎn)的識(shí)別能力,最終收斂與否可反映算法的穩(wěn)定可行性.
首先,進(jìn)行算法自相關(guān)分析,在仿真過程中為近期和較早的交互分配不同的權(quán)重,通過在積極互動(dòng)下改變信任評分和聲譽(yù)評分計(jì)算公式中的參數(shù),了解MDAA在時(shí)間推移和參數(shù)改變的情況下,信任和聲譽(yù)評分的演化情況.結(jié)果如圖3所示.
通過圖3中的3張圖的對比,可以認(rèn)為信任評分演化和聲譽(yù)評分演化之間存在演化趨勢一致性的關(guān)系,因此做歸一化處理,在對比分析中只將MDAA的信任評分演化與其他算法進(jìn)行對比.
接著進(jìn)行算法對比分析,將提出的MDAA與TARAS算法、DADAC算法在授權(quán)信任管理中的信任演變作為定量比較,模擬SC在兩種不同交互作用下信任評分的收斂性,證明MDAA的可行與優(yōu)勢.(MDAA中δpos=1,δneg=-3,Υ=0.9).
由圖4可看出,對于誠實(shí)的SC,所有算法的信任評分都收斂到相似的上邊界,但每個(gè)算法的收斂速度是不同的.算法收斂太快會(huì)存在更容易受到新來者的攻擊情況,所以實(shí)際需求中不太希望有特別快的收斂速度.TARAS算法的收斂速度最快,在20個(gè)時(shí)元時(shí)基本達(dá)到0.8,而MDAA在50個(gè)時(shí)元時(shí)達(dá)到0.8,最后逐步收斂.圖5中,3個(gè)算法對惡意的SC的信任評分都出現(xiàn)了顯著的突然下降,具有較好的靈敏度和識(shí)別能力,信任評分在10個(gè)時(shí)元內(nèi)均下降到零,而MDAA僅在5次惡意交互后則將SC的信任評分記為零,收斂速度最快.根據(jù)4.2中信任評分演化和聲譽(yù)評分演化的相關(guān)關(guān)系,可以認(rèn)為,MDAA的聲譽(yù)評分演化與TARAS算法、DADAC算法對比,均有更好的穩(wěn)定可行性.
4.3 延遲分析
由于網(wǎng)絡(luò)的分時(shí)復(fù)用特性,為避免沖突,同一時(shí)刻只能有一個(gè)節(jié)點(diǎn)向網(wǎng)絡(luò)發(fā)送信息,當(dāng)多個(gè)節(jié)點(diǎn)通過網(wǎng)絡(luò)連接時(shí),受到網(wǎng)絡(luò)帶寬和承載能力的限制,必然使信息在傳輸過程中存在時(shí)延,所以從時(shí)延角度研究物聯(lián)網(wǎng)訪問控制問題具有理論和實(shí)際應(yīng)用的意義.
首先,進(jìn)行算法自相關(guān)分析,研究了執(zhí)行屬性注冊(TXreg)、授權(quán)(TXR)、反饋(TXF)和策略注冊(TXpol)這些函數(shù)的延遲.重復(fù)實(shí)驗(yàn)30次,并將結(jié)果繪制在圖6中.TXR、TXF和TXpol的事務(wù)延遲類似,因?yàn)檫@些事務(wù)以公有區(qū)塊鏈MB為單位執(zhí)行,而TXreg的事務(wù)延遲相對較低,因?yàn)樗运接袇^(qū)塊鏈pb為單位執(zhí)行,具有更快的塊生成時(shí)間.
接著,進(jìn)行算法對比分析,由于提出的MDAA與TARAS算法、DADAC算法在對服務(wù)消費(fèi)者信任值的計(jì)算方式上存在不同,因此將3個(gè)算法在不同并發(fā)請求數(shù)時(shí)的計(jì)算延遲進(jìn)行比較,并重復(fù)實(shí)驗(yàn)30次.
由圖7可看出,當(dāng)并發(fā)請求數(shù)量增加時(shí),所提MDAA與TARAS算法、DADAC算法對于服務(wù)消費(fèi)者信任值的計(jì)算延遲均有增加的趨勢,但所提MDAA對于不同并發(fā)請求數(shù)時(shí)均有較低的信任值計(jì)算延遲,意味著在相同時(shí)間內(nèi),MDAA可以處理的訪問請求數(shù)量更多,因?yàn)镸DAA可以基于服務(wù)消費(fèi)者當(dāng)前行為方便地界定信任評分,通過簡單的遞歸來計(jì)算,同時(shí)根據(jù)仿真結(jié)果圖4和圖5,MDAA不管是在積極互動(dòng)還是消極互動(dòng)下,服務(wù)消費(fèi)者的信任評分收斂速度均快于TARAS算法和DADAC算法.因此﹐所提MDAA在確保授權(quán)安全的同時(shí)減少了處理訪問控制的延遲.
5 結(jié) 論
文章使用多維適配算法實(shí)現(xiàn)了基于區(qū)塊鏈的物聯(lián)網(wǎng)節(jié)點(diǎn)可信授權(quán).首先利用公有區(qū)塊鏈和私有側(cè)鏈將敏感信息和公共數(shù)據(jù)的存儲(chǔ)分開,服務(wù)消費(fèi)者SC注冊屬性,服務(wù)提供者SP定義Pr,c;接著TRS作為基于屬性的訪問控制機(jī)制的一部分,逐步量化網(wǎng)絡(luò)中每個(gè)節(jié)點(diǎn)的信任和聲譽(yù)評分,當(dāng)SP發(fā)起訪問請求后,智能合約驗(yàn)證SC是否滿足Pr,c要求的屬性和信任聲譽(yù)閾值,都滿足則獲得訪問權(quán)限;最后在節(jié)點(diǎn)交互作用過程中定期更新節(jié)點(diǎn)的信任和聲譽(yù)評分,實(shí)現(xiàn)動(dòng)態(tài)和可信的驗(yàn)證和授權(quán).仿真結(jié)果表明,MDAA支持雙向信任評估和異步授權(quán),有較好的算法收斂性和較低延遲,在分散式物聯(lián)網(wǎng)網(wǎng)絡(luò)中實(shí)現(xiàn)有效的訪問控制.一個(gè)新的信任評分為零的SC不能參與網(wǎng)絡(luò),同時(shí)對于具體的物聯(lián)網(wǎng)應(yīng)用場景需要適當(dāng)做參數(shù)上的調(diào)整,下步要研究特殊情況,進(jìn)一步完善TRS,調(diào)整Pr,c.
參考文獻(xiàn):
[1]程冠杰, 黃諍杰, 鄧水光. 基于區(qū)塊鏈與邊緣計(jì)算的物聯(lián)網(wǎng)數(shù)據(jù)管理[J]. 物聯(lián)網(wǎng)學(xué)報(bào), 2020, 4: 1.
[2]張江徽, 崔波, 李茹, 等. 基于智能合約的物聯(lián)網(wǎng)訪問控制系統(tǒng)[J]. 計(jì)算機(jī)工程, 2021, 47: 21.
[3]史錦山, 李茹, 松婷婷. 基于區(qū)塊鏈的物聯(lián)網(wǎng)訪問控制框架[J]. 計(jì)算機(jī)應(yīng)用, 2020, 40: 931.
[4]Panda S S, Jena D, Mohanta B K, et al. Authentication and key management in distributed iot using blockchain technology[J]. IEEE Int Things J, 2021, 8: 12947.
[5]張建標(biāo), 張兆乾, 徐萬山, 等. 一種基于區(qū)塊鏈的域間訪問控制模型[J]. 軟件學(xué)報(bào), 2021, 32: 1547.
[6]Putra G D, Dedeoglu V, Kanhere S S, et al. Trust-based blockchain authorization for IoT [J]. IEEE T Netw? Serv? Manag, 2021, 18: 1646.
[7]Gwak B, Cho J H, Lee D, et al. TARAS: trust-aware role-based access control system in publicinternet-of-things[C] //Proceedings of the 2018 17th IEEE International Conference on Trust, Security And Privacy in Computing and Communications/ 12th IEEE International Conference on Big Data Science and Engineering (TrustCom/BigDataSE). New York, USA: IEEE,2018: 74.
[8]Wang P, Xu N, Zhang H, et al. Dynamic access control and trust management for Blockchain empowered IoT[J]. IEEE Int? Things J, 2021, 9: 12997.
[9]范迪, 朱志祥. 一種Dubbo框架的授權(quán)認(rèn)證方案[J]. 計(jì)算機(jī)技術(shù)與發(fā)展, 2017, 27: 115.
[10]葛紀(jì)紅, 沈韜.基于區(qū)塊鏈的能源數(shù)據(jù)訪問控制方法[J].計(jì)算機(jī)應(yīng)用, 2021, 41: 2615.
[11]Malik M, Dutta M, Granjal J. A survey of key bootstrapping protocols based on public key cryptography in the internet of things [J]. IEEE Access, 2019, 7: 27443.
[12]劉云, 宋凱, 陳路遙, 等. 均衡評估算法對基于區(qū)塊鏈的無線傳感網(wǎng)節(jié)點(diǎn)信任管理優(yōu)化[J]. 山東大學(xué)學(xué)報(bào): 理學(xué)版, 2022, 57: 73.
[13]Shala B, Trick U, Lehmann A, et al. Blockchain? and trust for secure, end-user-based and decentralized iot service provision [J]. IEEE Access, 2020, 8: 119961.
[14]Yan Z, Li X, Wang M, et al. Flexible data access control based on trust and reputation in cloud computing[J]. IEEE T Cloud Computing, 2017, 5: 485.
[15]Wang S, Lu K, Li M, et al. Fighting pollution attack in peer-to-peer streaming systems: a dynamic reputation management approach [C] //Proceedings of the 2016 Third International Conference on Trustworthy Systems and their Applications (TSA).Wuhan, China: IEEE, 2016: 23.
[16]Cai T, Yang Z, Chen W, et al. A blockchain-assisted trust access authentication system for solid [J]. IEEE Access, 2020, 8: 71605.
引用本文格式:
中 文: 劉云,宋凱,陳路遙,等. 多維適配算法對區(qū)塊鏈節(jié)點(diǎn)可信授權(quán)的優(yōu)化研究[J]. 四川大學(xué)學(xué)報(bào): 自然科學(xué)版, 2023, 60: 063004.
英 文: Liu Y, Song K, Chen L Y, et al. Optimization study of trusted authorization of blockchain nodes by multi-dimensional adaptation algorithm [J]. J Sichuan Univ: Nat Sci Ed, 2023, 60: 063004.