免責(zé)聲明:本文旨在傳遞更多市場(chǎng)信息,不構(gòu)成任何投資建議。文章僅代表作者觀點(diǎn),不代表火星財(cái)經(jīng)官方立場(chǎng)。
小編:記得關(guān)注哦
來(lái)源:區(qū)塊鏈大本營(yíng)
原文標(biāo)題:區(qū)塊鏈和物聯(lián)網(wǎng)也能擦出火花?
物聯(lián)網(wǎng)作為一項(xiàng)飛速發(fā)展的技術(shù),在智能電網(wǎng)、智能供水網(wǎng)絡(luò)、智能家居、智能交通等各項(xiàng)領(lǐng)域已有廣泛的應(yīng)用。不久的將來(lái),物聯(lián)網(wǎng)應(yīng)用將深入生活的方方面面,在未來(lái)科技生活中擔(dān)當(dāng)不可或缺的角色。隨著越來(lái)越多的智能設(shè)備接入網(wǎng)絡(luò),物聯(lián)網(wǎng)應(yīng)用受到安全威脅的概率大幅增加。根據(jù)美國(guó)ABI 調(diào)查公司的數(shù)據(jù),2018 年,大約有100 億臺(tái)可使用無(wú)線網(wǎng)絡(luò)接入互聯(lián)網(wǎng)的設(shè)備,到2020 年年底,這一數(shù)字將超過(guò)300 億。
可以預(yù)見的是未來(lái)將會(huì)有更多擁有廉價(jià)傳感器的物聯(lián)網(wǎng)設(shè)備進(jìn)入人們生活,分享消費(fèi)者的敏感信息。物聯(lián)網(wǎng)設(shè)備的安全管理問題將成為物聯(lián)網(wǎng)產(chǎn)業(yè)可持續(xù)發(fā)展的核心問題之一,人們必須對(duì)此高度重視。區(qū)塊鏈去中心化、去信任和高安全隱私性的特點(diǎn),為物聯(lián)網(wǎng)應(yīng)用提供了點(diǎn)對(duì)點(diǎn)直接進(jìn)行數(shù)據(jù)傳輸?shù)慕鉀Q方案。
區(qū)塊鏈物聯(lián)網(wǎng)初級(jí)實(shí)驗(yàn)案例
要實(shí)現(xiàn)基于區(qū)塊鏈系統(tǒng)的物聯(lián)網(wǎng)平臺(tái)應(yīng)用,應(yīng)該主要關(guān)注能夠使區(qū)塊鏈保持?jǐn)?shù)據(jù)一致性的方法,這種方法一般被稱為共識(shí)算法,它起源于分布式一致性算法。其核心思想是引導(dǎo)系統(tǒng)上的所有不可靠的節(jié)點(diǎn)達(dá)成如何產(chǎn)生下一個(gè)區(qū)塊的一致性算法,但是這種分布式一致性算法在實(shí)現(xiàn)技術(shù)細(xì)節(jié)上有很大的區(qū)別。從人們開始使用比特幣并進(jìn)行技術(shù)上的積極探索,區(qū)塊鏈技術(shù)得到了蓬勃發(fā)展,并衍生出各種新技術(shù)和產(chǎn)品,成功地證明了其在不同領(lǐng)域的高安全性、靈活性、隱私性和容錯(cuò)性,人們開始將分布式共識(shí)基于不同的目的,進(jìn)行更加準(zhǔn)確和專業(yè)的使用。
共識(shí)算法是分布式應(yīng)用軟件中特有的算法機(jī)制,而如果沒有一個(gè)好的算法理論作為支撐,將根本無(wú)法實(shí)現(xiàn)一個(gè)好的分布式應(yīng)用。這是因?yàn)樵谥行幕能浖O(shè)計(jì)中,復(fù)雜問題設(shè)計(jì)的解決方案可以通過(guò)不使用復(fù)雜的算法邏輯實(shí)現(xiàn),但是在分布式軟件開發(fā)中,節(jié)點(diǎn)間的互操作和節(jié)點(diǎn)行為的統(tǒng)一管理都會(huì)因?yàn)榉植际蕉兊檬值膹?fù)雜多樣,無(wú)法通過(guò)普通的方式去預(yù)先設(shè)定運(yùn)行產(chǎn)生的結(jié)果,所以需要使用共識(shí)算法來(lái)完成應(yīng)用并維持分布式一致性。
常用的區(qū)塊鏈下的共識(shí)機(jī)制主要有PoW、POS、DPOS、Paxos、PBFT 等,基于區(qū)塊鏈技術(shù)所需要應(yīng)用到的不同場(chǎng)景和各種共識(shí)算法自身的特性,人們一般通過(guò)以下4個(gè)標(biāo)準(zhǔn)來(lái)評(píng)價(jià)各種共識(shí)算法的適用性。
-
合規(guī)監(jiān)管:可否支持設(shè)定某些權(quán)限節(jié)點(diǎn)對(duì)全網(wǎng)節(jié)點(diǎn)、數(shù)據(jù)進(jìn)行監(jiān)管。
-
性能效率:在交易達(dá)成共識(shí)后被確認(rèn)的效率。
-
資源消耗:在一次共識(shí)過(guò)程中,耗費(fèi)的計(jì)算能力、存儲(chǔ)和網(wǎng)絡(luò)帶寬等計(jì)算機(jī)資源。
-
容錯(cuò)性:是否具有防攻擊、防欺詐的能力。
一般來(lái)說(shuō),區(qū)塊鏈的類型可分為兩種,一種是公眾所熟知的公有區(qū)塊鏈,其代表者是比特幣系統(tǒng),在該系統(tǒng)中,所有節(jié)點(diǎn)享有同等的權(quán)利和義務(wù),每一個(gè)節(jié)點(diǎn)根據(jù)自己的能力參與并作為區(qū)塊鏈共識(shí)的一部分。在目前的公有區(qū)塊鏈中,所采用的共識(shí)算法通常是由內(nèi)在的經(jīng)濟(jì)激勵(lì)制度通過(guò)引導(dǎo)所有區(qū)塊達(dá)成共識(shí)獲取相關(guān)獎(jiǎng)勵(lì)的工作量來(lái)證明PoW 共識(shí)算法。
另一種是私有區(qū)塊鏈,可用于運(yùn)行環(huán)境完全只對(duì)內(nèi)部開放的私有鏈,或系統(tǒng)跨越幾個(gè)網(wǎng)絡(luò)彼此連接,并能夠互相通信和操作的部分私有鏈系統(tǒng),為作進(jìn)一步區(qū)分,人們通常把這種區(qū)塊鏈系統(tǒng)稱為聯(lián)盟區(qū)塊鏈。在物聯(lián)網(wǎng)系統(tǒng)中,私有鏈場(chǎng)景是最為適合物聯(lián)網(wǎng)使用的場(chǎng)景,其安全許可的嚴(yán)格限制和設(shè)置特權(quán)節(jié)點(diǎn)的靈活性可用于更明確地設(shè)定設(shè)備、用戶的管理權(quán)限和優(yōu)先級(jí)別,解決當(dāng)前系統(tǒng)無(wú)法完全滿足的需求。
在初步測(cè)試實(shí)驗(yàn)中,人們利用以太坊區(qū)塊鏈作為底層的技術(shù)支持,基于已有的物聯(lián)網(wǎng)平臺(tái),建立了一個(gè)能夠在用戶與其他用戶設(shè)備之間或用戶與物聯(lián)網(wǎng)平臺(tái)之間獲得數(shù)據(jù)、達(dá)成購(gòu)買數(shù)據(jù)和設(shè)備服務(wù)的不可篡改的契約交易關(guān)系的區(qū)塊鏈應(yīng)用平臺(tái)。
整個(gè)區(qū)塊鏈系統(tǒng)由多個(gè)客戶端節(jié)點(diǎn)組成,各節(jié)點(diǎn)都是完整的數(shù)據(jù)節(jié)點(diǎn),每個(gè)節(jié)點(diǎn)內(nèi)都有整個(gè)區(qū)塊鏈數(shù)據(jù)地址的完整備份。這些節(jié)點(diǎn)可以分別由不同的機(jī)構(gòu)或一個(gè)機(jī)構(gòu)內(nèi)部的多個(gè)數(shù)據(jù)中心來(lái)分別維護(hù)。實(shí)驗(yàn)中的區(qū)塊鏈系統(tǒng)不需要相互競(jìng)爭(zhēng)去產(chǎn)生新的區(qū)塊,在獲得競(jìng)爭(zhēng)權(quán)后對(duì)這段時(shí)間的區(qū)塊進(jìn)行打包,然后分發(fā)給其他節(jié)點(diǎn)。所有節(jié)點(diǎn)達(dá)成一致后各自對(duì)區(qū)塊進(jìn)行存儲(chǔ)。區(qū)塊鏈的區(qū)塊之間通過(guò)哈希值連接在一起,此哈希值由區(qū)塊頭部字段組合計(jì)算而成。
區(qū)塊中的交易通過(guò)Merkle 樹的數(shù)據(jù)結(jié)構(gòu)組織在一起,其中Merkle 樹的根節(jié)點(diǎn)存放在區(qū)塊的頭部中。用戶或平臺(tái)制定自己能夠提供數(shù)據(jù)或服務(wù)的條件,應(yīng)用將條件編譯為智能合約腳本再發(fā)布到系統(tǒng),然后系統(tǒng)通過(guò)審核和編譯,形成去中心化的應(yīng)用提供給其他用戶,其他用戶如果有需求并且能夠滿足條件響應(yīng),智能合約通過(guò)在區(qū)塊鏈上的執(zhí)行來(lái)完成合約內(nèi)容,通過(guò)所有其他全節(jié)點(diǎn)的驗(yàn)證達(dá)成合約。系統(tǒng)上的去中心化應(yīng)用是通過(guò)與物聯(lián)網(wǎng)平臺(tái)約定好的JSON-RPC API 進(jìn)行調(diào)用和驗(yàn)證,獲取遠(yuǎn)端物聯(lián)網(wǎng)平臺(tái)的數(shù)據(jù)和服務(wù),提供給區(qū)塊鏈去中心化應(yīng)用的用戶。
整個(gè)系統(tǒng)從架構(gòu)設(shè)計(jì)上來(lái)說(shuō),可以分為數(shù)據(jù)層、網(wǎng)絡(luò)層、智能合約層、物聯(lián)網(wǎng)平臺(tái)層和應(yīng)用層 5 個(gè)層次,如下圖所示。下面根據(jù)系統(tǒng)總體的架構(gòu)圖來(lái)分別描述各層的設(shè)計(jì)。

物聯(lián)網(wǎng)區(qū)塊鏈架構(gòu)圖
(1)最底層的是數(shù)據(jù)層,主要負(fù)責(zé)存儲(chǔ)區(qū)塊鏈數(shù)據(jù),包含區(qū)塊數(shù)據(jù)和事務(wù)交易數(shù)據(jù)HASH 地址的存儲(chǔ)。一些通用的基礎(chǔ)模塊,如網(wǎng)絡(luò)通信庫(kù)、流處理、線程封裝、消息封裝與解碼、系統(tǒng)時(shí)間、基礎(chǔ)加密算法和數(shù)據(jù)存儲(chǔ)技術(shù)等,采用改進(jìn)的以太坊區(qū)塊鏈系統(tǒng)對(duì)區(qū)塊數(shù)據(jù)的存儲(chǔ)進(jìn)行了優(yōu)化設(shè)計(jì)。
(2)第二層是系統(tǒng)的網(wǎng)絡(luò)層,主要包括共識(shí)算法、P2P 網(wǎng)絡(luò)及驗(yàn)證機(jī)制。這層一般包含了區(qū)塊鏈的主要邏輯,如共識(shí)模塊、交易處理模塊、嵌入式數(shù)據(jù)庫(kù)處理模塊等,難點(diǎn)在于點(diǎn)對(duì)點(diǎn)網(wǎng)絡(luò)的實(shí)現(xiàn)和并發(fā)處理。在本系統(tǒng)中,針對(duì)物聯(lián)網(wǎng)平臺(tái)下的節(jié)點(diǎn)承載能力與應(yīng)用需求,用基于Tendermint 共識(shí)機(jī)制的Ethermint 替換了傳統(tǒng)以太坊上的工作量證明共識(shí)機(jī)制。
(3)第三層是智能合約層。系統(tǒng)基于Json Standard RPC 的交互RPC 模塊與EVM(以太坊虛擬機(jī))模塊,基于EVM 模塊運(yùn)行智能合約交互處理區(qū)塊鏈與共識(shí)的相關(guān)事務(wù),基于JSON-RPC 通過(guò)網(wǎng)絡(luò)從遠(yuǎn)程計(jì)算機(jī)程序上請(qǐng)求服務(wù),進(jìn)行區(qū)塊節(jié)點(diǎn)的一致性處理和網(wǎng)絡(luò)層事務(wù)的交互,從而實(shí)現(xiàn)各種交易轉(zhuǎn)賬等具體商業(yè)活動(dòng)的完整過(guò)程。人們可以通過(guò)類似JAVAScript 編程語(yǔ)言的Solidity語(yǔ)言,靈活編寫,在區(qū)塊鏈中嚴(yán)格執(zhí)行適用于各種應(yīng)用的智能合約腳本。
(4)第四層是物聯(lián)網(wǎng)平臺(tái)層。系統(tǒng)通過(guò)基于Json Standard RPC 的交互RPC 模塊,通過(guò)物聯(lián)網(wǎng)平臺(tái)已有的接口,調(diào)用物聯(lián)網(wǎng)數(shù)據(jù)信息、操控指令和發(fā)布智能合約到智能合約層與區(qū)塊鏈節(jié)點(diǎn)進(jìn)行交互處理相關(guān)的事務(wù),應(yīng)用層去中心化應(yīng)用用戶通過(guò)底層區(qū)塊鏈平臺(tái)能夠間接獲取交易物聯(lián)網(wǎng)平臺(tái)設(shè)備的數(shù)據(jù)和控制權(quán)。
(5)最上層的是去中心化應(yīng)用層。它通過(guò)封裝以太坊Json RPC API 的Web3.js 接口庫(kù)與智能合約層、物聯(lián)網(wǎng)平臺(tái)層進(jìn)行數(shù)據(jù)信息交換。在去中心化應(yīng)用中,所有的智能合約在經(jīng)過(guò)編譯后都以二進(jìn)制代碼的形式運(yùn)行在區(qū)塊鏈系統(tǒng)的EVM 上,并用到了RPC API 的調(diào)用。區(qū)塊鏈上的智能合約可提供自治的服務(wù),通過(guò)在平臺(tái)中去中心化的應(yīng)用程序提供物聯(lián)網(wǎng)設(shè)備信息或操作為用戶服務(wù)。
基于安全的區(qū)塊鏈物聯(lián)網(wǎng)試驗(yàn)案例
現(xiàn)在的物聯(lián)網(wǎng)管理平臺(tái)基本有集中式管理和分布式管理兩種管理方案。其中集中式系統(tǒng)對(duì)物聯(lián)網(wǎng)物體進(jìn)行集中化管理,進(jìn)行統(tǒng)一的分配調(diào)度和權(quán)限管理。然而隨著物聯(lián)網(wǎng)的迅速發(fā)展,接入網(wǎng)絡(luò)的物體迅速增加,網(wǎng)絡(luò)結(jié)構(gòu)也變得越來(lái)越復(fù)雜多樣,導(dǎo)致集中式系統(tǒng)的管理和維護(hù)壓力巨大。更為重要的是集中式系統(tǒng)中存在的單點(diǎn)信任問題,由于集中式系統(tǒng)的統(tǒng)一控制和中央裁決,當(dāng)主機(jī)出現(xiàn)故障或被攻擊時(shí),可能會(huì)導(dǎo)致整個(gè)系統(tǒng)停止工作,甚至出現(xiàn)整個(gè)系統(tǒng)的信息泄露,這對(duì)于系統(tǒng)安全是一個(gè)致命的影響。
研究人員在試驗(yàn)中擬通過(guò)兩個(gè)方面的研究實(shí)現(xiàn)分布式平臺(tái)的搭建。
-
通過(guò)Geth 客戶端搭建出私有的區(qū)塊鏈網(wǎng)絡(luò),該區(qū)塊鏈網(wǎng)絡(luò)負(fù)責(zé)平臺(tái)節(jié)點(diǎn)的信息通信、對(duì)裁決方案進(jìn)行表決、對(duì)平臺(tái)信息進(jìn)行賬本存儲(chǔ),私有網(wǎng)絡(luò)上的節(jié)點(diǎn)需要提供API 供平臺(tái)節(jié)點(diǎn)進(jìn)行信息訪問和結(jié)果反饋。
-
設(shè)計(jì)分布式平臺(tái)的架構(gòu),設(shè)計(jì)平臺(tái)與私有區(qū)塊鏈網(wǎng)絡(luò)的信息交流方式、為設(shè)備提供的功能及在Web 端的展現(xiàn)形式。
為了實(shí)現(xiàn)分布式平臺(tái)對(duì)物聯(lián)網(wǎng)設(shè)備的管理能力,人們?cè)谑褂闷脚_(tái)設(shè)備之前需要在平臺(tái)進(jìn)行設(shè)備注冊(cè),只有注冊(cè)后的設(shè)備才能被用于在平臺(tái)上進(jìn)行信息交互。為了保證物聯(lián)網(wǎng)設(shè)備之間信息交互的安全可靠,平臺(tái)設(shè)備的合法性必須得到保障。接入認(rèn)證功能能夠在設(shè)備注冊(cè)時(shí)對(duì)設(shè)備進(jìn)行合法身份的鑒定,認(rèn)證過(guò)程需要通過(guò)區(qū)塊鏈的智能合約去完成,以保證每個(gè)平臺(tái)分節(jié)點(diǎn)都參與到認(rèn)證之中,以此來(lái)解決單點(diǎn)故障問題,保證認(rèn)證的可信度。認(rèn)證成功后的設(shè)備認(rèn)證信息也需要存儲(chǔ)在平臺(tái)進(jìn)行備案,認(rèn)證信息會(huì)被存儲(chǔ)到區(qū)塊鏈賬本中,以保證認(rèn)證信息不被輕易篡改。
物聯(lián)網(wǎng)設(shè)備需要頻繁地對(duì)自身的運(yùn)行信息進(jìn)行記錄,接入平臺(tái)的設(shè)備可以將自己的運(yùn)行信息上傳到平臺(tái)上。在上傳信息之前,平臺(tái)端會(huì)對(duì)設(shè)備的權(quán)限進(jìn)行驗(yàn)證,判斷其是否具有上傳信息的權(quán)限,權(quán)限驗(yàn)證過(guò)程也需要通過(guò)區(qū)塊鏈的智能合約去完成,從而使每個(gè)平臺(tái)分節(jié)點(diǎn)都參與到權(quán)限驗(yàn)證的過(guò)程中,以保證驗(yàn)證的可信度。平臺(tái)在對(duì)設(shè)備進(jìn)行權(quán)限驗(yàn)證后,驗(yàn)證通過(guò)的設(shè)備便可以將運(yùn)行信息存儲(chǔ)到平臺(tái)上,由其再存儲(chǔ)到區(qū)塊鏈賬本中,以備將來(lái)進(jìn)行信息的統(tǒng)計(jì)和歷史追溯。設(shè)備的上傳請(qǐng)求需要受到容忍入侵機(jī)制的監(jiān)督,以防止某些惡意設(shè)備進(jìn)行頻繁的錯(cuò)誤請(qǐng)求以損耗系統(tǒng)的性能。和前面使用智能合約的原理一樣,對(duì)容忍入侵模型中的惡性事件的判定也要通過(guò)區(qū)塊鏈的智能合約去完成,以保證判定的可信度。
設(shè)備在接入平臺(tái)之前,需要進(jìn)行設(shè)備注冊(cè)的操作,設(shè)備注冊(cè)信息被上報(bào)到平臺(tái),注冊(cè)信息包括生產(chǎn)廠商、設(shè)備型號(hào)等設(shè)備詳細(xì)信息,以及設(shè)備安全憑證信息。平臺(tái)對(duì)設(shè)備上報(bào)的注冊(cè)信息進(jìn)行接入認(rèn)證,接入認(rèn)證過(guò)程會(huì)觸發(fā)智能合約,該項(xiàng)工作由所有平臺(tái)分節(jié)點(diǎn)共同完成。對(duì)于認(rèn)證通過(guò)的設(shè)備,平臺(tái)會(huì)將信息存儲(chǔ)在區(qū)塊鏈賬本中,進(jìn)行永久備份。設(shè)備認(rèn)證通過(guò)后即可接入平臺(tái),進(jìn)行設(shè)備登錄操作,平臺(tái)讀取區(qū)塊鏈賬本中的注冊(cè)設(shè)備表,與登錄設(shè)備信息進(jìn)行比對(duì),對(duì)已經(jīng)注冊(cè)的設(shè)備進(jìn)行上線處理。在平臺(tái)中運(yùn)行的設(shè)備可以進(jìn)行信息交互,包括設(shè)備信息上傳和數(shù)據(jù)信息獲取。設(shè)備定期上傳自己的運(yùn)行信息到平臺(tái),平臺(tái)會(huì)在權(quán)限驗(yàn)證通過(guò)后將上傳信息存儲(chǔ)到區(qū)塊鏈賬本中永久存儲(chǔ)。另外,設(shè)備也可以根據(jù)所擁有的權(quán)限獲取平臺(tái)上其他設(shè)備的信息,或者進(jìn)行信息追溯和信息統(tǒng)計(jì),在此過(guò)程中平臺(tái)會(huì)讀取區(qū)塊鏈賬本中的相應(yīng)信息,進(jìn)行分析并返回結(jié)果。平臺(tái)也會(huì)對(duì)設(shè)備信息交互過(guò)程進(jìn)行容忍入侵檢測(cè),警告和排除出現(xiàn)故障的設(shè)備或惡意設(shè)備。
平臺(tái)的節(jié)點(diǎn)需要處理平臺(tái)與物聯(lián)網(wǎng)設(shè)備的信息交互、設(shè)備信息統(tǒng)計(jì)分析、設(shè)備信息的數(shù)據(jù)可視化及平臺(tái)對(duì)外的服務(wù)封裝,還需要接入認(rèn)證機(jī)制、權(quán)限管理機(jī)制和入侵檢測(cè)機(jī)制的邏輯管理功能。而區(qū)塊鏈網(wǎng)絡(luò)完成的功能比較純粹,只需要關(guān)注對(duì)于決策的多數(shù)表決和對(duì)于信息的永久存儲(chǔ)。所以,在平臺(tái)的總體設(shè)計(jì)中,需要將平臺(tái)節(jié)點(diǎn)和區(qū)塊鏈網(wǎng)絡(luò)節(jié)點(diǎn)在結(jié)構(gòu)上分離開來(lái),讓平臺(tái)節(jié)點(diǎn)專注于數(shù)據(jù)處理、服務(wù)封裝和管理邏輯,區(qū)塊鏈網(wǎng)絡(luò)節(jié)點(diǎn)專注于決策表決和信息存儲(chǔ),具體平臺(tái)架構(gòu)設(shè)計(jì)如下圖所示。

物聯(lián)網(wǎng)絡(luò)結(jié)構(gòu)圖
平臺(tái)的下層是由Geth 客戶端節(jié)點(diǎn)相互連接構(gòu)建的區(qū)塊鏈網(wǎng)絡(luò),它們負(fù)責(zé)交易的驗(yàn)證、信息存儲(chǔ)備案及執(zhí)行智能合約并返回執(zhí)行結(jié)果。下層的Geth 客戶端節(jié)點(diǎn)之間相互連接,能保證上層平臺(tái)節(jié)點(diǎn)的信息傳遞,下層網(wǎng)絡(luò)的所有節(jié)點(diǎn)會(huì)對(duì)上層的裁決請(qǐng)求進(jìn)行多數(shù)表決,給出上層裁決結(jié)果,其區(qū)塊鏈賬本會(huì)對(duì)信息進(jìn)行永久存儲(chǔ),并對(duì)上層節(jié)點(diǎn)數(shù)據(jù)進(jìn)行備份。
平臺(tái)的上層是分布式物聯(lián)網(wǎng)平臺(tái)的分節(jié)點(diǎn),每一個(gè)分節(jié)點(diǎn)對(duì)應(yīng)著一個(gè)底層的Geth 客戶端節(jié)點(diǎn)。上層平臺(tái)節(jié)點(diǎn)負(fù)責(zé)與物聯(lián)網(wǎng)設(shè)備的信息交互,對(duì)物聯(lián)網(wǎng)設(shè)備信息進(jìn)行統(tǒng)計(jì)分析,將物聯(lián)網(wǎng)設(shè)備信息數(shù)據(jù)進(jìn)行可視化展示,將平臺(tái)服務(wù)對(duì)外封裝,提供服務(wù)接口,并完成設(shè)備接入認(rèn)證、設(shè)備權(quán)限管理和平臺(tái)入侵檢測(cè)的邏輯功能。
平臺(tái)分節(jié)點(diǎn)與Geth 客戶端節(jié)點(diǎn)之間通過(guò)JSON-RPC 進(jìn)行信息通信,平臺(tái)分節(jié)點(diǎn)通過(guò)Web3.js 進(jìn)行接口調(diào)用,將信息傳遞給Geth 客戶端節(jié)點(diǎn),也可以請(qǐng)求Geth 客戶端節(jié)點(diǎn)返回區(qū)塊信息。分節(jié)點(diǎn)安全機(jī)制中的仲裁判定都是與區(qū)塊鏈網(wǎng)絡(luò)合作完成的,包括設(shè)備接入時(shí)進(jìn)行的身份認(rèn)證,設(shè)備權(quán)限控制中進(jìn)行的權(quán)限判定,以及負(fù)責(zé)入侵檢測(cè)的事件分析器對(duì)事件的分析判定。當(dāng)分節(jié)點(diǎn)需要進(jìn)行仲裁判定時(shí),分節(jié)點(diǎn)將仲裁請(qǐng)求及仲裁信息通過(guò)JSON-RPC 傳送給Geth客戶端,觸發(fā)區(qū)塊鏈網(wǎng)絡(luò)中的智能合約,啟動(dòng)對(duì)信息的仲裁判定,區(qū)塊鏈節(jié)點(diǎn)執(zhí)行智能合約并返回合約運(yùn)行結(jié)果,在區(qū)塊鏈網(wǎng)絡(luò)形成仲裁結(jié)果后,Geth 客戶端再將仲裁結(jié)果通過(guò)JSON-RPC 返回給平臺(tái)分節(jié)點(diǎn),從而完成仲裁判定。