大規(guī)模的惡意網(wǎng)絡(luò)攻擊正變得越來(lái)越常見(jiàn),這無(wú)論是對(duì)政府機(jī)構(gòu)還是私營(yíng)企業(yè)都造成巨大影響。隨著時(shí)間的推移,這些網(wǎng)絡(luò)攻擊變得越來(lái)越復(fù)雜,因此也更難以緩解。其中最引人注目的一個(gè)例子是WannaCry,一個(gè)勒索軟件設(shè)法攻擊了超過(guò)20萬(wàn)臺(tái)計(jì)算機(jī),造成巨大的破壞以及數(shù)億美元的損失,也許更多!
未來(lái)生產(chǎn)系統(tǒng)中將有數(shù)百億個(gè)物聯(lián)網(wǎng)節(jié)點(diǎn)通過(guò)公共互聯(lián)網(wǎng)連接到云,為了保護(hù)敏感數(shù)據(jù)免受未經(jīng)授權(quán)第三方的訪問(wèn)和竊取,確保物聯(lián)網(wǎng)強(qiáng)大的安全性將至關(guān)重要。然而,由于物聯(lián)網(wǎng)節(jié)點(diǎn)通常位于網(wǎng)絡(luò)邊緣,現(xiàn)有的加密機(jī)制需要依賴太多資源以致于在這種環(huán)境下無(wú)法實(shí)施。因此,這意味著需要采用更合適的輕工作量或零工作量(zero-touch)配置方案。
在制造階段將安全密鑰直接嵌入到器件中被證明是一種非常有效的保護(hù)手段,同時(shí)仍然能夠尊重這些運(yùn)行規(guī)范。本文中貿(mào)澤電子介紹了Microchip的ATECC608A專用安全IC如何通過(guò)Google Cloud IoT核心服務(wù)用于硬件身份驗(yàn)證,同時(shí)還可以降低整體物料清單成本和功耗水平,而只需要很少的軟件開(kāi)銷。
隨著越來(lái)越多的物聯(lián)網(wǎng)節(jié)點(diǎn)部署在生產(chǎn)系統(tǒng),這些節(jié)點(diǎn)仍然使用公共互聯(lián)網(wǎng)與云通信,因而為通信和身份驗(yàn)證提供強(qiáng)大而有彈性的安全性至關(guān)重要,這對(duì)于保護(hù)系統(tǒng)免受攻擊和保護(hù)數(shù)據(jù)安全非常必要。
由于部署的網(wǎng)絡(luò)邊緣節(jié)點(diǎn)數(shù)量可能會(huì)達(dá)到數(shù)萬(wàn)個(gè),因此輕工作量或零工作量配置是一個(gè)起碼的要求。在制造階段將安全密鑰構(gòu)建到器件中是滿足安全性和易配置性的極其有效方式。
本文中,我們將介紹Microchip ATECC608A以及如何通過(guò)Google Cloud IoT核心服務(wù)來(lái)實(shí)現(xiàn)基于硬件的身份驗(yàn)證。
IIoT中極其重要的安全性
近年來(lái),對(duì)工業(yè)和商業(yè)系統(tǒng)的惡意攻擊數(shù)量和頻率均有所增加,這些可能是出于犯罪目的,也可能是政府網(wǎng)絡(luò)戰(zhàn)策略的一部分。惡意網(wǎng)絡(luò)攻擊變得越來(lái)越復(fù)雜,并且會(huì)損害大量設(shè)備。最近的一些網(wǎng)絡(luò)攻擊例子包括:
·2010年:Stuxnet蠕蟲(chóng)據(jù)稱對(duì)伊朗的核加工廠造成了重大損害。
·2014年:廣泛使用的OpenSSL安全軟件中發(fā)現(xiàn)有Heartbleed病毒,并被用于竊取來(lái)自多個(gè)系統(tǒng)的信息。盡管該漏洞在2014年已得到修復(fù),但仍有許多未修補(bǔ)且易受攻擊的系統(tǒng)。
·2016年:Mirai惡意軟件將大量監(jiān)控?cái)z像頭和路由器等在線設(shè)備轉(zhuǎn)變?yōu)椤敖┦W(wǎng)絡(luò)(botnets)”,用于發(fā)動(dòng)分布式拒絕服務(wù)(DDoS)攻擊。
·2017年:據(jù)估計(jì),WannaCry勒索軟件影響了150個(gè)國(guó)家/地區(qū)的20多萬(wàn)臺(tái)計(jì)算機(jī),造成的總損失據(jù)信達(dá)到數(shù)億或者數(shù)十億美元。
·2018年:萬(wàn)豪連鎖酒店發(fā)現(xiàn)攻擊者入侵他們4年的客戶預(yù)訂數(shù)據(jù)庫(kù),這使得大約5億人的個(gè)人信息面臨被盜取風(fēng)險(xiǎn)。
在工業(yè)環(huán)境中,對(duì)單個(gè)IoT節(jié)點(diǎn)的惡意訪問(wèn)也具有足夠大的破壞性。更大的風(fēng)險(xiǎn)是,這使攻擊者能夠盜取通信身份,從而致使無(wú)限數(shù)量的設(shè)備受到攻擊。此類安全漏洞可能會(huì)損害您的客戶、您自己的收入和聲譽(yù)。
私鑰和公鑰
互聯(lián)網(wǎng)上幾乎所有安全通信都依賴于公鑰加密。這種加密方式使用一對(duì)加密密鑰:一個(gè)密鑰是公開(kāi)的,任何人都可以使用;而另一個(gè)密鑰則被所有者秘密保持。用任一密鑰加密的消息只能用此一對(duì)加密密鑰中的另一個(gè)解密。
以這種方式加密數(shù)據(jù)需要復(fù)雜的計(jì)算,因此通常僅應(yīng)用于短消息。
有幾種數(shù)學(xué)技術(shù)用于執(zhí)行公鑰加密。最早的方法是基于這樣一個(gè)事實(shí),即大整數(shù)因子分解比從主要因子產(chǎn)生大整數(shù)要困難得多,這是由Ron Rivest、Adi Shamir和Leonard Adleman發(fā)明的RSA算法的基礎(chǔ)。其他加密系統(tǒng)使用了離散對(duì)數(shù)(discrete logarithms),最近的一些技術(shù)則使用了橢圓曲線(elliptic curves)。
橢圓曲線加密(ECC)比其他替代方案具有更高的安全性。自RSA加密發(fā)明以來(lái),已經(jīng)開(kāi)發(fā)了各種對(duì)其攻擊的方法,這些攻擊方法與日益增大的可用計(jì)算能力相結(jié)合,意味著必須使用比過(guò)去更長(zhǎng)的密鑰來(lái)提供相同級(jí)別的安全性。然而,在ECC的情況下,即使經(jīng)過(guò)三十年的研究,仍然沒(méi)有發(fā)現(xiàn)可以很容易破解ECC的捷徑。
因此,使用ECC可以采用較小的密鑰來(lái)獲得相同級(jí)別的安全性,這意味著可以使用IoT節(jié)點(diǎn)中功能較弱的處理器來(lái)完成安全加密。使用ECC可節(jié)省時(shí)間、功耗和計(jì)算資源,其他的挑戰(zhàn)是如何確保公鑰實(shí)際上為正確的人或?qū)嶓w所擁有,而通常的方法是使用受信任的證書(shū)機(jī)構(gòu)(CA),這些是生成密鑰對(duì)的組織機(jī)構(gòu)。通過(guò)使用自己的私鑰對(duì)其進(jìn)行簽名,能夠向所有者提供私鑰,并證明公鑰的所有權(quán)。有相對(duì)較少數(shù)量的根證書(shū)機(jī)構(gòu)能夠提供可由其他人用來(lái)生成和簽署中間證書(shū)的密鑰,從而創(chuàng)建了一個(gè)“信任鏈”。
信任鏈不僅必須包括通信鏈路兩端的系統(tǒng),還必須包括硬件和軟件供應(yīng)商。
您可以通過(guò)多種方式來(lái)使用公鑰加密:
·任何人都可以使用公鑰對(duì)信息進(jìn)行加密,但只有收件人才能使用相應(yīng)的私鑰讀取信息。
·發(fā)件人可以使用其私鑰對(duì)信息進(jìn)行簽名(例如,通過(guò)附加信息的加密副本),然后,任何人都可以使用發(fā)件人的公鑰來(lái)解密簽名,從而對(duì)簽名進(jìn)行身份驗(yàn)證(實(shí)際上,哈希函數(shù)(hash function)用于生成表示信息文本的數(shù)字,然后將此哈希加密為簽名)。
·還可以使用數(shù)字簽名驗(yàn)證信息的完整性。如果解密的簽名與明文不匹配,則表明該信息已被篡改。
·兩個(gè)人可以使用私鑰和另一個(gè)人的公鑰獨(dú)立生成共享密鑰,該技術(shù)被稱為Diffie-Hellman密鑰交換,以紀(jì)念發(fā)明人。然后,共享密鑰可用于加密和解密兩人之間的信息。這需要較少的計(jì)算,因此可用于較長(zhǎng)的信息。
您可以使用這些技術(shù)來(lái)保護(hù)通信,并在安裝之前驗(yàn)證軟件更新是否來(lái)源可靠。
在所有這些用例中,我們可以看到保護(hù)私鑰對(duì)于系統(tǒng)的安全性至關(guān)重要。
管理物聯(lián)網(wǎng)系統(tǒng)中的安全性
強(qiáng)大的身份驗(yàn)證和數(shù)據(jù)加密是物聯(lián)網(wǎng)安全通信的核心,要求IoT節(jié)點(diǎn)具有安全、唯一且可信的身份,這可以通過(guò)使用公鑰加密來(lái)提供。
但是,管理IoT節(jié)點(diǎn)私鑰卻存在一些挑戰(zhàn)。例如,私鑰通常存儲(chǔ)在微控制器存儲(chǔ)器中某處,這意味著獲得系統(tǒng)訪問(wèn)權(quán)限的人將能夠讀取密鑰。操作系統(tǒng)或應(yīng)用軟件中的漏洞經(jīng)常被用來(lái)獲取訪問(wèn)權(quán)限。雖然可以安裝軟件更新來(lái)修復(fù)安全漏洞,但是一旦更新公布,就會(huì)讓全世界都知道這些漏洞。
由于需要進(jìn)行全面測(cè)試并避免停機(jī),因此可能需要數(shù)月才能更新工業(yè)系統(tǒng)中的嵌入式軟件,這可能使系統(tǒng)仍然在比較脆弱時(shí)為惡意攻擊者留下重要的窗口機(jī)會(huì)。
另一個(gè)潛在的弱點(diǎn)是人的因素。 人們可能會(huì)不小心,選擇捷徑,或者被試圖提取有關(guān)系統(tǒng)關(guān)鍵信息的人操縱或說(shuō)服。
因此,為了保護(hù)私鑰安全,需要滿足以下目標(biāo):
·切勿將私鑰存儲(chǔ)在微控制器存儲(chǔ)器中
·將私鑰隔離,使其不能通過(guò)軟件直接訪問(wèn)
·保護(hù)私鑰,使其不受他人訪問(wèn)
實(shí)現(xiàn)這些目標(biāo)的理想解決方案是采用專用安全器件,以便授權(quán)和加密都是在安全硬件中進(jìn)行,并且永遠(yuǎn)不會(huì)暴露私鑰。這種器件的一個(gè)范例是Microchip的ATECC608A。
Microchip ATECC608A
Microchip ATECC608A(見(jiàn)圖1)是一種支持多種加密算法的加密協(xié)處理器,它可以在安全硬件中存儲(chǔ)多達(dá)16個(gè)私鑰或證書(shū),密鑰永遠(yuǎn)不會(huì)在外部暴露。
圖1:ATECC608A加密協(xié)處理器。(來(lái)源:Microchip)
該器件支持橢圓曲線Diffie-Hellman(ECDH)密鑰交換和橢圓曲線數(shù)字簽名算法(ECDSA),也可為AES-128和SHA-256等其他算法提供硬件支持。
ATECC608A專為物聯(lián)網(wǎng)市場(chǎng)而設(shè)計(jì),具有功耗低、成本低、軟件占用空間小等優(yōu)勢(shì),即使是小型微控制器也可以使用。CryptoAuthLib庫(kù)使其能夠獨(dú)立于任何特定的微控制器,并且通過(guò)使用標(biāo)準(zhǔn)JSON WebToken(JWT)進(jìn)行身份驗(yàn)證使其與軟件安全堆棧無(wú)關(guān)。
制造生產(chǎn)時(shí)會(huì)生成證書(shū)和密鑰,并將其存儲(chǔ)在芯片上的安全硬件中,從而能夠提供零工作量配置。密鑰永遠(yuǎn)不會(huì)被制造設(shè)備或人員所看到,這些密鑰還有防篡改保護(hù),即使可以物理訪問(wèn)硬件,也能夠防止讀取密鑰。
Microchip已與Google合作,使用ATECC608A能夠提供集成的云身份驗(yàn)證流程。
Google Cloud IoTCore
Google在可擴(kuò)展的全球通信、數(shù)據(jù)存儲(chǔ)和分析方面擁有豐富的經(jīng)驗(yàn),使其成為物聯(lián)網(wǎng)云服務(wù)的理想提供商。
Cloud IoT Core是一種用于安全連接和管理物聯(lián)網(wǎng)設(shè)備的服務(wù),無(wú)論是幾個(gè)還是幾百萬(wàn)個(gè)節(jié)點(diǎn)都可以適用。它可以使連接的設(shè)備傳輸數(shù)據(jù),并由Google Cloud Platform進(jìn)行處理,參見(jiàn)圖2。這種服務(wù)以完全透明的方式在世界任何地方提供,因而能夠?qū)崟r(shí)分析和可視化物聯(lián)網(wǎng)數(shù)據(jù),生成的建議可減少停機(jī)時(shí)間和提高生產(chǎn)率。
可以使用ATECC608A進(jìn)行身份驗(yàn)證并與Cloud IoT Core進(jìn)行安全通信,該過(guò)程總結(jié)如下:
1.從所選證書(shū)機(jī)構(gòu)獲取根證書(shū)。
2.然后,創(chuàng)建由根證書(shū)簽名的OEM證書(shū)
3.與Microchip的秘密交換能夠在安全的制造環(huán)境中在器件上創(chuàng)建器件證書(shū),進(jìn)行證書(shū)簽名。
4.然后,可以將器件的公鑰上傳到您的Google IoTCore帳戶,從而實(shí)現(xiàn)安全的身份驗(yàn)證和通信。
為了執(zhí)行認(rèn)證,微控制器使用ATECC608A通過(guò)ECDSA對(duì)令牌進(jìn)行簽名。在微控制器和協(xié)處理器之間不傳輸機(jī)密信息。
圖2:使用ATECC608A進(jìn)行Cloud IoT Core認(rèn)證。(來(lái)源:Microchip)
簽名的令牌然后傳遞給Cloud IoT Core的設(shè)備管理功能,該功能使用先前存儲(chǔ)的公鑰來(lái)驗(yàn)證簽名,同時(shí)驗(yàn)證節(jié)點(diǎn),從而實(shí)現(xiàn)安全通信。
有關(guān)這些內(nèi)容的更多信息,請(qǐng)參閱Microchip網(wǎng)站上的文章:Why harden your IoT Security with the ATECC608A for Google Cloud IoT Core?(為何要使用支持Google Cloud IoT Core 的ATECC608A來(lái)加強(qiáng)您的IoT安全性?)
結(jié)論
我們時(shí)常被提醒維護(hù)連接系統(tǒng)安全的重要性,公鑰加密在實(shí)施必要的安全協(xié)議時(shí)可以發(fā)揮重大作用。
ATECC608A加密協(xié)處理器解決了IoT節(jié)點(diǎn)中管理私鑰的許多問(wèn)題,它與任何類型的微控制器兼容,并能夠與Google IoT Cloud Core無(wú)縫集成。
ATECC608A只增加了系統(tǒng)幾美分的成本,但卻能夠顯著提高系統(tǒng)的安全性,能夠以非常小的代價(jià)避免成為下一個(gè)惡意攻擊目標(biāo)和新聞話題。
-
IIoT
+關(guān)注
關(guān)注
3文章
224瀏覽量
26018
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論