約起來!無風險!Hdac區塊鏈技術路線簡析-物聯網合約
本期我們接著來看Hdac的物聯網智能合約.
在Hdac的物聯網區塊鏈網絡中,管理者就是靠智能合約來控制一個設備的運行的.智能合約在用戶與設備,設備與設備之間傳輸并處理.為了通過智能合約的處理而達到控制效果.這些設備和用戶之間的認證是必須要先執行的.

一個設備或者一個用戶在處理物聯網合約的前提是必須在區塊鏈上注冊并通過認證.
作為用戶來講,必須通過兩步認證(ID,密碼及另一個一次性密碼或者指紋,虹膜,面部識別等生物識別技術)才能上鏈.
作為普通設備來講,本身無法執行認證.所以管理員需要先為這個設備綁定注冊一個輔助認證設備,同時保證這個普通設備具有可被當作唯一性的數據屬性.這樣才會作為一個唯一的設備上鏈.在這種情況下,一但設備被篡改,區塊鏈就會自動識別到這個篡改的發生,將這個設備斷開連接并將這個信息報告給管理者.
通過物聯網合約在區塊鏈上的傳輸和被處理,如果某個設備處理了這個智能合約并按照智能合約對于設備的運行模式進行了更改,這個合約會自動地在選定的設備間傳輸并被處理,并把執行情況和數據傳輸到預先指定的位置.哪些設備會接受,發送和處理哪個智能合約需要先被管理員設定好.
管理員可以在智能合約中添加可自啟動的程序,從而實現通過一個物聯網設備監控,控制并管理其他物聯網設備.這種程序可以處理并傳輸簡單的JSON數據給普通設備,并有API接口開放,以實現更多,更復雜的功能.
對于更高級的物聯網設備,可以在物聯網合約中添加更復雜更智能的程序,通過比如解析機,虛擬機的方式來操控該設備.
通常來講最高效最方便的操控設備的方式就是通過API編寫程序來控制設備.而從靈活性上來講,通過解析機,虛擬機來控制設備并不需要在用戶端更改程序,所以更加靈活.但是解析機和虛擬機對于算力和內存都有更高要求,所以對于性能較低的物聯網設備并不適用.
在IOT網絡中,每當一個智能合約被真實有效處理,這個智能合約所涉及的設備信息都會被記錄在區塊鏈上.Hdac的私有鏈可以每秒處理500筆交易.這個處理速度是理論值,實際處理速度會受網絡和設備性能影響而低一些(吧).如果安全需要,特定設備的智能合約處理信息可以被加密傳輸.
綜上所述(或許叫不知所云吧,哈哈),Hdac的物聯網智能合約的特點如下:
基礎區塊鏈傳輸
用于定義用戶的JSON文件頭(包含用戶信息,用戶ID,認證信息,反饋方式,執行信息等)
用戶編寫的程序(JSON或者更高級的編程語言編寫的,可以通過API,解析機,虛擬機來執行)
用于用戶編寫的程序的數據/流
為了不讓開發者頭大,Hdac項目組保證他們會保持源代碼盡可能地簡潔.
IOT智能合約的安全保障:
Hdac項目組謙虛地承認,雖然用區塊鏈技術可以保證絕大多數情況下物聯網設備的安全,不過對于DoS,DDoS,嗅探攻擊他們的區塊鏈并不能完全應對.因此項目組還準備了其他安全技術:
在私有鏈中,可以通過加密硬件或者加密區塊鏈軟件來確保信息的加密傳輸,當然首先設備必須支持加密.這種安全措施的好處是不需要改變已有的區塊鏈節點及設備設置.
再有就是現在普遍使用的TLS或者SSL協議來在服務器端進行安全部署.IOT智能合約支持這些協議.
一些物聯網設備不夠智能,則只能通過標準的對稱式密鑰來加密.
上述這種方式因為會對設備內的程序進行更改,所以對于已經上鏈的設備來講實施難度更大.在這種情況下,可以選擇把這些智能性不夠的設備當作普通設備來處理,為這個設備連一個智能網關來實現安全通道加密傳輸.

而即便是花了如此多的心機在安全性上,難免在實際情況中還是會有無法預料到的安全漏洞.所以不光需要隨時監控設備運行狀況及更改情況,通過大數據和機器學習而對更改的內容進行記錄和分析也是非常重要的.
再進一步來講,重大的更改必須要經過管理員二次驗證來實現部署.
所以把一個節點或者多個節點作為監聽節點,從而監聽不正常的數據處理和事件是非常重要的.這些異常如果即時通報給管理員從而讓管理員即時處理,就能避免整個區塊鏈的難以控制.

