黑客入侵物聯網設備的能力比黑客的技能更能說明這些設備的安全級別:在大多數情況下,受影響的產品缺乏最基本的安全措施。也就是說,基本安全在概念上很簡單,但其實現需要在系統(tǒng)中的每個節(jié)點上小心注意以避免漏洞。
Microchip Technology的預構建安全解決方案允許開發(fā)人員實現零接觸設備配置圍繞亞馬遜網絡服務(AWS)物聯網服務構建的物聯網應用程序。
安全要求
物聯網連接設備的世界為黑客提供了豐富的獎勵,旨在控制,破壞或破壞工業(yè),運輸,健康和緊急服務等領域的關鍵應用。物聯網開發(fā)人員越來越多地通過加密設備與其主機之間的通信來解決傳輸中數據的安全問題。然而,數據加密僅代表端到端安全要求的一部分。
安全IoT應用程序還依賴于安全身份驗證,以確保已知設備與可信主機通信。設備或主機身份缺乏保證為攻擊者利用中間人攻擊控制數據流敞開了大門。在這些攻擊中,壞的actor將自己表示為可信的終端設備,以便將損壞的數據流插入到應用程序中。或者,攻擊者錯誤地將自己稱為控制物聯網設備的已知主機。
雖然他們破解加密的能力是這些方法的核心,但真正的損害在于他們作為授權實體侵入自己的能力。進入可信賴的網絡,可能帶來所有潛在的傷害。因此,物聯網應用程序適用于更加復雜的服務平臺,可以在廣泛的層面上解決安全問題。
使用安全的云平臺
亞馬遜網絡服務(AWS)物聯網平臺提供全面的環(huán)境它將安全性作為一項基本功能,因為它滿足物聯網應用的各種功能需求。作為各種AWS服務的專用前端,AWS IoT位于物聯網設備及其應用之間,使用基于消息的架構來保護和管理物聯網設備(圖1)。
圖1:Amazon Web Services物聯網平臺將物聯網設備與廣泛的AWS服務系列連接起來,利用AWS安全機制在物聯網之間執(zhí)行相互身份驗證設備和AWS平臺。 (圖像來源:Amazon Web Services)
當消息從IoT終端設備到達時,開發(fā)人員定義的規(guī)則會啟動涉及代表IoT應用程序工作的其他AWS服務的相應操作。反過來,IoT應用軟件與基于云的設備陰影交互,這些陰影維持相應物理IoT設備的最后已知狀態(tài)。即使物理設備暫時脫機,此陰影也可確保物聯網應用程序的持續(xù)運行。此服務模型依賴于一組復雜的安全機制,旨在識別可信實體并控制其對可用資源的訪問。
AWS安全模型的核心是身份和訪問管理(IAM)策略。這些說明允許哪些設備,用戶或服務訪問IoT網絡,AWS環(huán)境或應用程序中的哪些特定資源。在很大程度上,該安全模型的成功取決于對請求訪問特定資源的實體(用戶,設備或服務)的可靠認證。如果不良行為者能夠欺騙安全系統(tǒng)將其作為完全信任的用戶進行身份驗證,那么訪問權限規(guī)則所帶來的障礙就會有效解除。
與一般Web訪問一樣,AWS使用公鑰基礎結構(PKI)密鑰和標準X.509證書。實際上,AWS安全服務使用Web用戶熟悉的身份驗證模型。對于安全的Web鏈接,Web瀏覽器依賴于基礎機制,例如傳輸層安全性(TLS)服務,它們在建立安全通信之前檢查站點證書以驗證主機服務器。更敏感的基于Web的應用程序通過客戶端身份驗證補充主機身份驗證,使用用戶瀏覽器中的客戶端證書來確認用戶的身份。
這種相互身份驗證的部署在一般Web使用中仍然相對較少,因為很少用戶愿意或能夠采取獲取自己的客戶端證書所需的步驟,并使用這些證書配置他們的瀏覽器。然而,相互認證是減少壞人可用的攻擊面的關鍵。實際上,AWS IoT服務需要在物聯網設備和AWS云之間進行相互身份驗證。如果在一般Web使用中難以進行相互身份驗證,則會給物聯網開發(fā)人員帶來重大挑戰(zhàn)。
要在物聯網設備中實現相互身份驗證,開發(fā)人員需要克服多個障礙。除了處理密鑰和證書獲取的物流外,開發(fā)人員還需要安全地存儲這些機密,不會有未經授權的訪問。此外,物聯網設備還需要能夠以不受滲透影響的方式執(zhí)行加密算法,同時保持物聯網設備的整體性能。
與AWS合作開發(fā),預先配置“通用”Microchip ATECC508A CryptoAuthentication設備的版本滿足這些要求,為設計人員構建AWS IoT設備提供了簡單的插入式解決方案。
專用加密
專為安全認證而創(chuàng)建ATECC508A IC將基于硬件的PKI算法和安全存儲結合在一起,通過物理,電氣或軟件方式抵御攻擊。該器件通過其I 2 C接口連接到設計的主機CPU。然后,主機CPU使用簡單的命令集來執(zhí)行加密,更新存儲的證書以及訪問其他ATECC508A功能。實際上,ATECC508A在內部生成私鑰并安全存儲它們,無需進行片外密鑰管理。由于集成加密引擎可以在同一芯片內使用安全數據,因此加密機密碼永遠不會暴露在可能被截獲的外部總線上。
在卸載主機處理器的加密執(zhí)行時,ATECC508A不僅增強安全性,但它不會影響性能。使用ATECC508A進行設計可以比僅使用軟件的TLS實現更快地實現TLS連接。在基準測試中,基于ATECC508A的系統(tǒng)完成TLS連接的速度比使用高性能ARM?Cortex?-M0處理器 1 的純軟件實現平均快5倍。
< p> ATECC508A為物聯網設計人員提供了巨大的好處,但在其通用形式中,它基本上仍然是認證應用的空白板塊。雖然設備在內部生成私鑰,但它需要開發(fā)組織獲取并加載受信任的X.509證書。證書構建在信任層次結構上,其中根證書簽署主機和客戶端上使用的證書。構建此信任層次結構是安全系統(tǒng)和應用程序的基礎。然而,對于開發(fā)人員而言,證書生成和注冊的詳細后勤代表了一個重要的復雜因素。更糟糕的是,當生產單元使用單獨的根證書或不同的證書鏈時,原型或預生產系統(tǒng)的證書生成可能只是浪費時間。預先配置的ATECC508A為在預生產設計中使用AWS IoT平臺的工程師提供了更簡單的解決方案。
使用預先配置的ATECC508A器件,設計人員只需將器件放入其設計中即可實現認證。通過I 2 C端口將其連接到主機MCU。這些器件采用8引腳UDFN(ATECC508A-MAHAW-S)和8引腳SOIC(ATECC508A-SSHAW-T)版本,預先配置了必要的客戶端證書,并預先配置為可與AWS IoT配合使用。開發(fā)人員可以將設備焊接到他們自己的設計中,并使用應用程序編程接口(API)與AWS IoT進行交互。這些API位于其目標系統(tǒng)上托管的AWS軟件開發(fā)工具包(SDK)庫中。
或者,他們可以使用Microchip AT88CKECC-AWS-XSTK AWS零接觸配置套件評估器件(圖2) )。
圖2:Microchip Technology AT88CKECC-AWS-XSTK AWS Zero Touch Provisioning Kit提供圍繞SAM G MCU板(中心),ATECC508A-xxxAW器件板(左),ATWINC1500-XSTK RF板構建的完整無線物聯網設計(右)和ATOLED1-XPRO顯示板,帶有按鈕和開關,用于模擬物聯網事件(下圖)。 (圖片來源:Microchip Technology)
該套件與用于ATECC508的ATCRYPTOAUTH-XPRO加密評估板一起提供完整的物聯網設計原型,包括ATSAMG55-XPRO SAM G MCU板,ATWINC1500-XSTK RF板,ATOLED1-XPRO板,帶有顯示,按鈕和開關,用于模擬物聯網數據事件。
零接觸配置
無論是使用自定義原型還是入門套件,開發(fā)人員只需將設備插入設計即可與ATECC508A-xxxAW實施AWS相互認證。當設備首次與AWS IoT連接時,ATECC508A-xxxAW的優(yōu)勢變得明顯。
在初始連接時,ATECC508A-xxxAW設備與AWS IoT交互以自動完成AWS即時注冊(JITR)流程,用于唯一標識AWS IoT中的每個IoT設備。此外,物聯網開發(fā)人員可以將這種零接觸配置概念擴展到基于這些預先配置的ATECC508A版本的設計之外。
通常用于IT網絡環(huán)境,零接觸配置(ZTP)允許網絡設備部署到無需用戶干預即可繼續(xù)在啟動時,網絡識別新的網絡設備并授權其與網絡的連接,就像AWS JITR自動配置預先配置的IoT設備一樣。對于預計包含大量設備的物聯網應用,ZTP代表了一個特別重要的概念。使用Microchip AT88CKECC-AWS-XSTK入門套件,開發(fā)人員可以使用AWS JITR更好地了解證書配置和ZTP背后的詳細信息。特別是,開發(fā)人員可以使用AWS的無服務器Lambda服務探索定制軟件的使用,以滿足ZTP過程的獨特要求。
除上述IoT設計硬件外,入門套件還附帶Microchip AT88CKECCROOT root模塊實用程序和AT88CKECCSIGNER簽名模塊實用程序。根和簽名者模塊每個都帶有一個USB加密狗,分別包含根密鑰和簽名密鑰。
使用入門工具包,開發(fā)人員通過USB將AT88CKECC-AWS-XSTK和模塊連接到他們的PC,應該運行入門套件軟件包。入門工具包應用程序向用戶介紹在AWS IoT上注冊證書的詳細信息。它使用上面提到的root和signer模塊來表示最終將在制造期間使用的實際根證書和簽名證書的角色。對于生產單元,Microchip制造工廠中會出現類似的過程,其中“空白”ATECC508A使用基于開發(fā)組織自己的信任根構建的證書進行配置(圖3)。
圖3:雖然Microchip針對AWS IoT預先配置了ATECC508A-xxxAW系列,但為客戶設計生產的設備將使用此類工具作為AT88CKECCSIGNER簽名者模塊,用于創(chuàng)建基于開發(fā)組織信任根的自定義設備證書。 (圖像來源:Microchip Technology)
Microchip支持帶有軟件包的入門套件,該套件可將操作和與AWS IoT的交互減少到一些簡單的軟件調用。例如,示例應用程序中的主例程調用aws_demo_tasks_init(),它會啟動與入門工具包中的每個硬件組件關聯的一系列單獨任務。
開發(fā)人員可以利用示例代碼集為AWS IoT應用程序創(chuàng)建自己的基于ATECC508的設計。事實上,該套件基于相同的CryptoAuthLib C語言,作為ATECC508軟件支持的標準軟件包提供。入門工具包只是將更高級別的調用轉換為對CryptoAuthLib庫的“at”例程的一系列低級調用(清單1)。
/**
* brief通過I2C向ATECC508A發(fā)送命令數組。
*
* param [in] tx_buffer要發(fā)送的緩沖區(qū)
* return ATCA_SUCCESS成功
*/
uint8_t aws_prov_send_command(uint8_t * tx_buffer)
{
uint8_t status = ATCA_SUCCESS;
uint8_t cmd_index;
uint16_t rx_length;
uint16_t execution_time = 0;
uint8_t * cmd_buffer;
ATCADevice _gDevice = NULL;
ATCACommand _gCommandObj = NULL ;
ATCAIface _gIface = NULL;
do {
<代碼>
if(tx_buffer == NULL)
break;
/*從TX緩沖區(qū)收集命令信息。 */
if(aws_prov_get_commands_info(tx_buffer,&amp; cmd_index,&amp; rx_length)!= ATCA_SUCCESS)
break;
cmd_buffer =(uint8_t *)malloc(tx_buffer [0] + 1);
memcpy(&amp; cmd_buffer [1],tx_buffer,tx_buffer [0]);
/*初始化每個對象。 */
_gDevice = atcab_getDevice();
_gCommandObj = atGetCommands(_gDevice);
_gIface = atGetIFace(_gDevice);
/*獲取命令執(zhí)行時間。 */
execution_time = atGetExecTime(_gCommandObj,cmd_index);
if((status = atcab_wakeup())!= ATCA_SUCCESS)
break;
/*發(fā)送命令。 */
if((status = atsend(_gIface,(uint8_t *)cmd_buffer,tx_buffer [0]))!= ATCA_SUCCESS)
< p> break;
。
。
。
} while(0);
退貨狀態(tài);
}
清單1:入門套件軟件包基于標準ATECC508 CryptoAuthLib C庫構建,使用一系列CryptoAuthLib“at”調用實現更高階的功能,例如從MCU向ATECC508A發(fā)送命令。 (代碼來源:Microchip Technology)
對于在自定義環(huán)境中工作的開發(fā)人員,CryptoAuthLib提供了一個定義良好的體系結構,可將硬件依賴性隔離到硬件抽象層(HAL)中(圖4)。通過修改HAL例程,開發(fā)人員可以構建對其獨特操作環(huán)境的支持。
圖4:多層CryptoAuthLib架構將硬件依賴關系分離為硬件抽象層,簡化了將庫移植到不同操作環(huán)境的過程。 (圖像來源:Microchip Technology)
結論
相互身份驗證為設備,用戶和服務之間的通信提供了最安全的方法,并且已成為AWS IoT中的一項要求。然而,相互認證的實施對物聯網設備部署提出了重大挑戰(zhàn)。它的成功取決于有效配置具有安全通信協議的知識產權的物聯網設備的有效方法。
Microchip預先配置的ATECC508器件消除了實現相互認證的傳統(tǒng)障礙,并為開發(fā)人員提供了直接的解決方案為AWS IoT設計的物聯網應用程序。使用這些設備,開發(fā)人員可以實施ZTP,消除物聯網設備部署中的人工干預,而不是依賴于物聯網設備的自動識別和注冊。
-
物聯網
+關注
關注
2909文章
44713瀏覽量
374276 -
網絡
+關注
關注
14文章
7576瀏覽量
88912 -
亞馬遜
+關注
關注
8文章
2668瀏覽量
83429
發(fā)布評論請先 登錄
相關推薦
評論