即使一個(gè)經(jīng)驗(yàn)豐富的工程師,對(duì)于設(shè)備的完整性、數(shù)據(jù)保護(hù)和設(shè)備管理, DIY安全也不會(huì)得到保證,近來(lái)物聯(lián)網(wǎng)設(shè)備的應(yīng)用讓這一觀點(diǎn)變得痛苦而清晰。2017年底,有超過(guò)50億的藍(lán)牙設(shè)備被發(fā)現(xiàn)容易受到 BlueBorne 惡意軟件的攻擊。 打開(kāi)藍(lán)牙設(shè)備, 黑客可以注入惡意代碼, 在某些情況下, 可以攔截進(jìn)出 Windows PC 的網(wǎng)絡(luò)流量, 并隨意修改。
這不是一個(gè)孤立的事件, 搜索一下就會(huì)發(fā)現(xiàn)幾十起類(lèi)似的攻擊事件。
由于制造商讓物聯(lián)網(wǎng)設(shè)備容易受到默認(rèn)密碼和不必要開(kāi)放端口的影響, 這些設(shè)備可以被用來(lái)攻擊整個(gè)物聯(lián)網(wǎng)堆棧。 這就是物聯(lián)網(wǎng)安全攻擊如此嚴(yán)重的原因: 犯罪者不僅可以竊取數(shù)據(jù)和關(guān)閉服務(wù), 而且會(huì)對(duì)設(shè)備和用戶(hù)造成損害。
當(dāng)然, 設(shè)計(jì)者可以下載一些開(kāi)源傳輸和加密代碼, 并將其連接到應(yīng)用程序中,但這也不可避免地導(dǎo)致了黑客能夠找到相關(guān)的安全漏洞。
盡管現(xiàn)有的商業(yè)安全平臺(tái)并沒(méi)有完全消除安全風(fēng)險(xiǎn), 但它們確實(shí)會(huì)減少安全風(fēng)險(xiǎn)。 為了實(shí)現(xiàn)最佳的安全性, 這些解決方案必須無(wú)縫地集成到一個(gè)平臺(tái)中, 而不是在一個(gè)設(shè)計(jì)完工的時(shí)候進(jìn)行加鎖。
物聯(lián)網(wǎng)安全與傳統(tǒng)安全
物聯(lián)網(wǎng)安全和傳統(tǒng)的安全措施之間有一些關(guān)鍵的區(qū)別。 傳統(tǒng)的安全性假定它可以控制對(duì)孤立網(wǎng)絡(luò)的設(shè)備和數(shù)據(jù)的訪問(wèn), 這兩種網(wǎng)絡(luò)都存在于已定義的物理環(huán)境中。
保護(hù)這些設(shè)備和數(shù)據(jù)的解決方案在端點(diǎn)上需要相當(dāng)大的計(jì)算能力, 例如防病毒軟件、防火墻和入侵檢測(cè) / 防御系統(tǒng)(IDS / IPS)。 如果需要安全更新, 那么就很容易下載和安裝設(shè)備上的最新補(bǔ)丁。
另一方面, 物聯(lián)網(wǎng)安全更像是荒野。 設(shè)備通常生活在相對(duì)開(kāi)放的網(wǎng)絡(luò)上, 通常是在物理上沒(méi)有保護(hù)的區(qū)域。 尤其是對(duì)于電池驅(qū)動(dòng)的便攜式設(shè)備而言,計(jì)算能力更加有限,發(fā)布軟件更新的能力也是如此。 物聯(lián)網(wǎng)系統(tǒng)的終端可能很少或者根本沒(méi)有安全軟件的空間。
因此, 物聯(lián)網(wǎng)安全必須在邊緣設(shè)備進(jìn)行通信之前進(jìn)行身份驗(yàn)證, 并保護(hù)從終端設(shè)備到云端的數(shù)據(jù)。 這意味著安全必須在設(shè)備裝載之前被植入, 而不是一旦設(shè)備到達(dá)工作現(xiàn)場(chǎng)就會(huì)啟動(dòng)。
內(nèi)部的缺點(diǎn), DIY 安全
為了更好地了解物聯(lián)網(wǎng)安全的艱巨性, 可以考慮一下典型的系統(tǒng)架構(gòu):
設(shè)備側(cè): 由物聯(lián)網(wǎng)設(shè)備、應(yīng)用程序、數(shù)據(jù)和連接到網(wǎng)絡(luò)交換機(jī) / 網(wǎng)關(guān)
網(wǎng)絡(luò)交換機(jī) / 網(wǎng)關(guān): 包括網(wǎng)絡(luò)交換機(jī) / 網(wǎng)關(guān)、路由軟件和其他應(yīng)用程序, 以及與設(shè)備端和云的通信
云: 包括服務(wù)器基礎(chǔ)設(shè)施、存儲(chǔ)數(shù)據(jù)、本機(jī)應(yīng)用程序, 也許包括對(duì)硬件安全模塊(HSMs)的訪問(wèn), 以及向網(wǎng)絡(luò)交換機(jī) / 網(wǎng)關(guān)或設(shè)備的雙向通信機(jī)制
為了在內(nèi)部開(kāi)發(fā)物聯(lián)網(wǎng)安全的解決方案, 解決這些領(lǐng)域的每一個(gè)問(wèn)題, 設(shè)計(jì)團(tuán)隊(duì)必須在應(yīng)用范圍、時(shí)間和成本之間進(jìn)行權(quán)衡。 構(gòu)建此類(lèi)解決方案的組件通常依賴(lài)于內(nèi)部開(kāi)發(fā)和開(kāi)源社區(qū), 如 ssl / tls、 OpenSSH、 OpenVAS、 AES、 TrueCrypt 等等。
不幸的是, 在許多情況下, 這些組件是在物聯(lián)網(wǎng)存在多年前就已經(jīng)開(kāi)發(fā)出來(lái)的。 他們通常不認(rèn)為物聯(lián)網(wǎng)超越了防火墻, 而且在許多情況下超越了所有的保護(hù), 因?yàn)槲锫?lián)網(wǎng)設(shè)備來(lái)自野外的電線桿和其他結(jié)構(gòu)等等。 這為黑客攻擊創(chuàng)造了許多不可預(yù)見(jiàn)的機(jī)會(huì)(圖1)。
圖1. SSL的注多漏洞。 來(lái)源:Centri Technology
對(duì)于由多個(gè)設(shè)備、服務(wù)和軟件組成的物聯(lián)網(wǎng)系統(tǒng)選擇一個(gè)安全解決方案不是一件容易的事。 首先, 它可能導(dǎo)致一個(gè)缺乏集成的龐大安全解決方案組合。 每個(gè)點(diǎn)必須單獨(dú)管理, 這增加了工程支持的負(fù)擔(dān)。
單點(diǎn)的解決方案也難以彼此共享數(shù)據(jù), 導(dǎo)致對(duì)安全性的看法分散, 威脅檢測(cè)受到限制。 增加的復(fù)雜性還會(huì)產(chǎn)生矛盾, 因?yàn)樾碌膽?yīng)用程序和服務(wù)必須與一系列專(zhuān)業(yè)技術(shù)兼容, 每一種都有自己的 API、策略和需求。
錯(cuò)誤的安全選擇對(duì)敏捷性和上市時(shí)間的影響可能很大。 創(chuàng)建緊密集成的物聯(lián)網(wǎng)安全解決方案可能以年為單位,而不是以普通的工作時(shí)間來(lái)衡量的。
綜合安全辦法
Centri物聯(lián)網(wǎng)高級(jí)安全平臺(tái)的目標(biāo)是設(shè)計(jì)者從一開(kāi)始就希望整合安全(圖2)。 該平臺(tái)允許開(kāi)發(fā)者將基于標(biāo)準(zhǔn)的加密和高級(jí)密碼集成到物聯(lián)網(wǎng)解決方案堆棧中, 包括從芯片到云的安全通信, 數(shù)據(jù)處理的保護(hù), 以及數(shù)據(jù)取證的管理控制臺(tái)。
安全通信端點(diǎn): 允許開(kāi)發(fā)人員在物聯(lián)網(wǎng)應(yīng)用程序中使用輕量級(jí)的安全通信庫(kù)或設(shè)備軟件堆棧中的代理客戶(hù)端在物聯(lián)網(wǎng)應(yīng)用程序中加入設(shè)備端安全性。 它與安全通信服務(wù)一起使用, 以確保數(shù)據(jù)在云中移動(dòng);
數(shù)據(jù)保護(hù)工具: 輕量級(jí)的數(shù)據(jù)保護(hù)庫(kù)可以從物聯(lián)網(wǎng)應(yīng)用程序中調(diào)用, 使用一個(gè) API 來(lái)加密數(shù)據(jù), 然后才能進(jìn)入設(shè)備或者是存儲(chǔ)
安全通信服務(wù): 這個(gè)工具運(yùn)行在現(xiàn)有的應(yīng)用服務(wù)器上, 為云基礎(chǔ)設(shè)施提供安全性
圖2 Centri IoTAS 提供端到端的保護(hù)。 來(lái)源:Centri Technology
特別地, CENTRI 安全通信庫(kù)和安全通信服務(wù)有助于促進(jìn)物聯(lián)網(wǎng)設(shè)備和云基礎(chǔ)設(shè)施之間的即時(shí)加密。 這減少了復(fù)雜證書(shū)管理方案的復(fù)雜性, 并消除了使用第三方證書(shū)授權(quán)(CA)解決方案的必要性。 該系統(tǒng)還采用一種無(wú)保險(xiǎn)庫(kù)密鑰管理技術(shù), 在數(shù)據(jù)中嵌入加密的密鑰信息。 因此, 不需要 HSMs 或第三方密鑰存儲(chǔ)機(jī)制。
智能緩存和數(shù)據(jù)壓縮技術(shù)有助于將安全開(kāi)銷(xiāo)降低到只使用1% CPU , 使平臺(tái)能夠適合資源有限的物聯(lián)網(wǎng)設(shè)備。 Centri IoTAS 的每個(gè)組件允許有經(jīng)驗(yàn)的開(kāi)發(fā)人員在一天內(nèi)將這些技術(shù)集成到應(yīng)用程序代碼中。
許多第三方商業(yè)安全解決方案比 DIY 替代品提供了更大的保護(hù), 在設(shè)計(jì)的后期階段, DIY也會(huì)增加大量的成本和管理開(kāi)銷(xiāo)。 一個(gè)更好的選擇是盡早在端和云端安裝安全解決方案。 這既降低了設(shè)備攻擊和數(shù)據(jù)泄露的風(fēng)險(xiǎn), 也減少了進(jìn)入市場(chǎng)的時(shí)間。
既然物聯(lián)網(wǎng)安全是個(gè)棘手的問(wèn)題, 僅保證個(gè)人設(shè)備的安全是不夠的, 還必須保護(hù)設(shè)備在現(xiàn)場(chǎng)使用嵌入式和 IT 系統(tǒng)的連接。鑒于物聯(lián)網(wǎng)安全的內(nèi)嵌性,使得區(qū)塊鏈在該領(lǐng)域的應(yīng)用成為可能,但是這種技術(shù)很難在已有系統(tǒng)中實(shí)現(xiàn)。 為了解決這個(gè)問(wèn)題, 像 SPARKL 這樣的公司已經(jīng)創(chuàng)建了解決方案, 即便是該網(wǎng)絡(luò)包含不可信的設(shè)備,仍允許新的區(qū)塊鏈設(shè)備與現(xiàn)有的端到端安全設(shè)備進(jìn)行交互操作。
從比特幣到 區(qū)塊鏈
了解區(qū)塊鏈往往是從比特幣開(kāi)始的, 比特幣是一種數(shù)字密碼貨幣, 它依賴(lài)于塊環(huán)鏈來(lái)維護(hù)以前的交易記錄。區(qū)塊鏈這個(gè)術(shù)語(yǔ)在狹義和廣義上都被使用。 狹義地說(shuō), 它指的是比特幣用于創(chuàng)建、維護(hù)和保護(hù)自己交易記錄的具體實(shí)現(xiàn)。
更廣泛地說(shuō), 區(qū)塊鏈指的是利用分布式分類(lèi)賬來(lái)確保和維護(hù)任何利益攸關(guān)方或授權(quán)個(gè)人均可使用的交易分類(lèi)賬。 有時(shí)“相互分配的分類(lèi)賬”(MDL)與區(qū)塊鏈互換使用, 但這兩個(gè)術(shù)語(yǔ)并不完全相同。 每個(gè)區(qū)塊鏈都是一個(gè)分布的分類(lèi)賬, 也就是說(shuō), 每個(gè)區(qū)塊鏈鏈都是一個(gè)獨(dú)立的、透明的、永久的數(shù)據(jù)庫(kù), 可以同時(shí)存在于多個(gè)地點(diǎn), 但并不是所有的 MDL都是區(qū)塊鏈。
在最簡(jiǎn)單的層面上, 區(qū)塊鏈?zhǔn)且粋€(gè)持續(xù)的交易分類(lèi)賬。 每組事務(wù)(稱(chēng)為塊)都是安全加密的, 其與以前事務(wù)的鏈接都被驗(yàn)證。
想象一下一連串的塊, 每一個(gè)都鏈接到前一個(gè)區(qū)塊, 這個(gè)“區(qū)塊鏈”的名字就變得清晰起來(lái): 它是對(duì)事務(wù)記錄如何存儲(chǔ)和驗(yàn)證的文字描述, 用時(shí)間戳信息和用密碼加密的方式將數(shù)據(jù)記錄到每個(gè)塊中。 因?yàn)槊總€(gè)新塊的哈希部分是基于其前面所有塊的哈希, 所以只有在大多數(shù)參與者同意的情況下, 才允許修改或修改區(qū)塊鏈, 而且只有在大多數(shù)參與者同意的情況下, 才允許修改記錄(如果允許的話(huà))。
區(qū)塊鏈的早期物聯(lián)網(wǎng)應(yīng)用
英特爾在一年前宣布了自己的塊環(huán)鏈平臺(tái), 已經(jīng)建立了一些示范, 說(shuō)明區(qū)塊鏈和物聯(lián)網(wǎng)如何在海鮮通過(guò)供應(yīng)鏈中用于跟蹤的(圖1)。
供應(yīng)商或買(mǎi)方通過(guò)其銷(xiāo)售網(wǎng)絡(luò)對(duì)產(chǎn)品進(jìn)行監(jiān)測(cè), 大大提高了其快速、明確地確定任何受污染食物來(lái)源的能力, 或查明在任何特定時(shí)間點(diǎn)誰(shuí)擁有產(chǎn)品的保管權(quán)。 如果出現(xiàn)產(chǎn)品召回或污染問(wèn)題, 以塊環(huán)鏈為基礎(chǔ)的分類(lèi)賬將使公司能夠確定哪些產(chǎn)品是從哪些商店出售的, 并且可以接觸到購(gòu)買(mǎi)這些產(chǎn)品的客戶(hù)。
區(qū)塊鏈技術(shù)也被評(píng)估為一種確保物聯(lián)網(wǎng)安全的方法, 通過(guò)賦予實(shí)體產(chǎn)品一個(gè)獨(dú)特的身份, 以確保每個(gè)特定設(shè)備的真實(shí)性。 目前, 物聯(lián)網(wǎng)設(shè)備是由集中的服務(wù)器控制的, 這使得它們?nèi)菀资艿焦簟?區(qū)塊鏈技術(shù)的分散性可以減輕目前物聯(lián)網(wǎng)設(shè)備存在的風(fēng)險(xiǎn), 并有助于確保仍在開(kāi)發(fā)中的產(chǎn)品。
物聯(lián)網(wǎng)區(qū)塊鏈的部署問(wèn)題
塊環(huán)鏈技術(shù)有可能解決物聯(lián)網(wǎng)世界中的安全問(wèn)題, 但只能在正確實(shí)施的情況下才能成功。 開(kāi)發(fā)者必須了解客戶(hù)的需求, 客戶(hù)之前為滿(mǎn)足這些需求而采取了哪些解決方案, 以前的解決方案成功或失敗的程度, 以及在任何給定環(huán)境中的各種利益相關(guān)者。
例如, 當(dāng)部署一個(gè)物聯(lián)網(wǎng)傳感器網(wǎng)絡(luò)以監(jiān)測(cè)倉(cāng)庫(kù)溫度時(shí), 誰(shuí)需要訪問(wèn)該日志以確保環(huán)境保持在適當(dāng)?shù)臏囟龋?如果超過(guò)了溫度閾值, 誰(shuí)應(yīng)該接收警報(bào), 物聯(lián)網(wǎng)解決方案是否能夠調(diào)整房間的溫度, 或者應(yīng)該限于發(fā)出警告?
區(qū)塊鏈技術(shù)并不是靈丹妙藥,如果這個(gè)問(wèn)題沒(méi)有得到很好的闡述和限制, 它不能自動(dòng)地提供一個(gè)問(wèn)題的解決方案。
一些遺留的嵌入式系統(tǒng)需要能夠與基于區(qū)塊鏈的物聯(lián)網(wǎng)產(chǎn)品進(jìn)行交互, 而另一些系統(tǒng)可能需要升級(jí)或更換。 開(kāi)發(fā)者將不得不應(yīng)對(duì)從一個(gè)集中的服務(wù)器基礎(chǔ)設(shè)施轉(zhuǎn)變?yōu)橐粋€(gè)分布式模型, 這種模型能夠處理來(lái)自幾十個(gè), 幾百個(gè), 甚至上千個(gè)設(shè)備的接入。 如果要使這些實(shí)現(xiàn)能夠成功, 就需要靈活且可伸縮的解決方案。
看一下現(xiàn)有的參考實(shí)現(xiàn), SPARKL 以其獨(dú)特的能力, 將遺留系統(tǒng)與人工智能、區(qū)塊鏈支持的策略和復(fù)雜的控制系統(tǒng)聯(lián)系了起來(lái)。
什么是 SPARKL?
SPARKL由兩個(gè)關(guān)鍵組件組成: 測(cè)序引擎和 Clear Box 配置系統(tǒng)。 Clear Box 被設(shè)計(jì)成可以同時(shí)與多個(gè)系統(tǒng)交互操作, 并提供了一個(gè)單一的訪問(wèn)點(diǎn), 開(kāi)發(fā)人員需要系統(tǒng)工作的所有信息, 即使這些系統(tǒng)通常不相互通信。
Clear Box 具有靈活性, 可以同時(shí)支持多個(gè)區(qū)塊鏈實(shí)現(xiàn), 也可以調(diào)用第三方服務(wù)或應(yīng)用程序(圖2)。 它還允許對(duì)許可設(shè)置進(jìn)行細(xì)粒度的設(shè)置, 以確保只有被清除的用戶(hù)才能訪問(wèn)某些數(shù)據(jù)集。
這種靈活性解決了在物聯(lián)網(wǎng)設(shè)備和區(qū)塊鏈技術(shù)在部署時(shí)的一個(gè)主要問(wèn)題, 減少物聯(lián)網(wǎng)與遺留系統(tǒng)結(jié)合起來(lái)的難度。 試圖實(shí)現(xiàn)一個(gè)全新的控制系統(tǒng), 其中包含一套統(tǒng)一的硬件和軟件解決方案, 這些解決方案能夠解決每一個(gè)單一用例, Clear Box 和 SPARKL 測(cè)序引擎可以通過(guò)原有的解決方案進(jìn)行通信, 從這些多重源收集數(shù)據(jù), 并執(zhí)行終端用戶(hù)定義的任何指令。 Clear Box 是定義策略或行為的解決方案, SPARKL 排序引擎則在整個(gè)系統(tǒng)中驅(qū)動(dòng)這些策略和行為。
Sparkl 已經(jīng)發(fā)布了一個(gè)PoV , 展示了區(qū)塊鏈鏈技術(shù)及其自身服務(wù)如何可以用來(lái)為再保險(xiǎn)市場(chǎng)建立智能合約。 Sparkl 與多個(gè)分布式分類(lèi)賬項(xiàng)目兼容, 包括 BigchainDB、 HyperLedger 和英特爾 Sawtooth Lake, 后者用于再保險(xiǎn)編制。
Sawtooth Lake 也是一個(gè)模塊化分布式平臺(tái), 旨在滿(mǎn)足多樣性和可伸縮性, 支持廣泛的共識(shí)模型。 在這方面, 協(xié)商一致指的是在相互不信任的制度之間達(dá)成協(xié)議的進(jìn)程。目標(biāo)是通過(guò)透明的方式記錄交易,制定一套可以解釋參與者之間不同的信任關(guān)系、遺留系統(tǒng)和非遺留系統(tǒng)之間的接口、支持全面的自動(dòng)化工作流程以及以所有各方都能看到的方式。 為了有效發(fā)揮作用, 必須能夠評(píng)估復(fù)雜的條件, 應(yīng)用于任何政策限制, 計(jì)算和處理溢價(jià)支付, 并使交易分類(lèi)賬與上述每一個(gè)步驟進(jìn)行適當(dāng)?shù)母隆?/p>
這個(gè)過(guò)程的結(jié)果不是在基礎(chǔ)設(shè)施上貼一個(gè)創(chuàng)可貼,如果執(zhí)行得當(dāng), SPARKL 可以用來(lái)連接遺留系統(tǒng)和前沿系統(tǒng), 創(chuàng)建新的基于塊環(huán)鏈的智能合約和策略, 使合同執(zhí)行能夠自動(dòng)化, 同時(shí)為所有利益相關(guān)這提供保存記錄和監(jiān)管所需的文件。
評(píng)論