本應(yīng)用筆記是討論物聯(lián)網(wǎng)安全性的兩篇中的第一篇。它描述了如何識(shí)別并評(píng)估連接的電子設(shè)備的安全風(fēng)險(xiǎn)。它解釋了如何將最好的、經(jīng)過驗(yàn)證的安全性設(shè)計(jì)到電子設(shè)備中并在制造過程中加載。重點(diǎn)是對(duì)策,特別是基于公鑰的算法。
介紹
電子設(shè)備的安全性是當(dāng)今互聯(lián)物聯(lián)網(wǎng) (IoT) 世界中的“必備條件”。電子設(shè)備的范圍從智能連接的冰箱到鈾離心機(jī)控制系統(tǒng)。當(dāng)設(shè)備的安全性受到損害、“損壞”時(shí),我們就不能再依賴該設(shè)備進(jìn)行安全的數(shù)據(jù)交換、處理或存儲(chǔ)。如果電子交易、核電站等關(guān)鍵系統(tǒng)或植入式醫(yī)療設(shè)備遭到黑客攻擊,那么全球信任將受到巨大影響。
電子安全是一個(gè)影響深遠(yuǎn)的話題。這是關(guān)于物聯(lián)網(wǎng)安全性的兩部分系列中的第一篇應(yīng)用說明。在第 1 部分中,我們將介紹如何識(shí)別并評(píng)估連接的電子設(shè)備的安全風(fēng)險(xiǎn)。我們解釋了如何將最好的、經(jīng)過驗(yàn)證的安全性設(shè)計(jì)到電子設(shè)備中。我們的重點(diǎn)是對(duì)策,特別是基于公鑰的算法。
在后續(xù)的第2部分應(yīng)用筆記中,我們重點(diǎn)介紹了安全啟動(dòng)和“信任根”的重要性,這是電子設(shè)備可信度的基石。我們將演示如何方便地實(shí)現(xiàn)設(shè)備安全性以及如何在現(xiàn)場更新設(shè)備。DeepCover安全微控制器將作為支持信任的組件示例來保護(hù)物聯(lián)網(wǎng)。?
互聯(lián)世界伸出援手
我們的生活越來越多地被現(xiàn)在稱為萬物互聯(lián)的互連電子設(shè)備所包圍。這個(gè)物聯(lián)網(wǎng)和每個(gè)安全的便攜式設(shè)備、工業(yè)和醫(yī)療設(shè)備都有軟件在硬件中運(yùn)行。它們減輕了我們的日子,滿足了我們的需求,控制了我們家庭的電氣功能,在醫(yī)療設(shè)備中保護(hù)了我們的生活,并通過智能電網(wǎng)或控制發(fā)電廠為我們提供公用事業(yè)服務(wù)(水、煤氣、電)。
安全的個(gè)人設(shè)備和物聯(lián)網(wǎng)已經(jīng)改變了許多人的個(gè)人行為。這項(xiàng)技術(shù)將我們的手臂,我們的意志,我們的思想延伸到我們的身體之外,以幫助我們交流和消費(fèi)。制造商和許多行業(yè)正在采用物聯(lián)網(wǎng)來提高業(yè)務(wù)效率和數(shù)據(jù)跟蹤(即工業(yè)4.0)。能源和水務(wù)公司現(xiàn)在才意識(shí)到,他們將通過數(shù)據(jù)管理和數(shù)據(jù)挖掘從遠(yuǎn)程訪問到智能電表來收集效率和智能。1在物聯(lián)網(wǎng)網(wǎng)絡(luò)上。銀行和支付處理器現(xiàn)在可以使用免費(fèi)(或幾乎免費(fèi))彩色觸摸終端隨時(shí)隨地使用智能卡進(jìn)行快速交易。物聯(lián)網(wǎng)的家庭健康 - 心電圖監(jiān)測,葡萄糖分配器或胰島素泵 - 正在改善患者和醫(yī)療機(jī)構(gòu)的生活并節(jié)省時(shí)間和金錢。預(yù)測估計(jì),88年將有2018萬移動(dòng)POS連接。2很明顯,連接的電子設(shè)備具有一定的價(jià)值......以及明確的漏洞。
識(shí)別安全風(fēng)險(xiǎn)
使用我們的智能手機(jī)幾乎可以從任何地方上網(wǎng)變得如此簡單、如此舒適,以至于我們已經(jīng)忘記了舊的 56k 調(diào)制解調(diào)器。但是,今天的連接設(shè)備和對(duì)光明世界的即時(shí)訪問也給了我們一種誤導(dǎo)的信心。我們應(yīng)該記住一個(gè)可悲但簡單的事實(shí):物聯(lián)網(wǎng)上的投資、連接和交易也激起了其他不那么善意的掠奪者的胃口。
安全風(fēng)險(xiǎn)來自競爭對(duì)手、孤獨(dú)的掠奪者和犯罪組織。前者更傾向于復(fù)制/克隆技術(shù) - 神奇的智能手機(jī)或墨盒 - 通常節(jié)省多年的研發(fā)工作。第二種和后者對(duì)竊取支付卡、PIN碼、支付終端中的鑰匙或勒索個(gè)人更感興趣,可能是通過破壞帳戶或遠(yuǎn)程關(guān)閉便攜式醫(yī)療設(shè)備。我們還可以想象通過遠(yuǎn)程黑客入侵用于工廠或醫(yī)院能源分配的能源智能電表來想象恐怖主義威脅。3這里不需要更多的例子。可以說,安全風(fēng)險(xiǎn)就在我們身邊。
一般來說,利益相關(guān)者面臨的風(fēng)險(xiǎn)很多。
名譽(yù)受損。您(制造商“x”)聲稱為正品的電池在我的筆記本電腦中爆炸了。
知識(shí)產(chǎn)權(quán)丟失。“在過去的五年里,我在視頻解碼器中開發(fā)的出色算法已被復(fù)制和復(fù)制。而且我沒有申請(qǐng)專利,以避免暴露我的詭計(jì)!
賠錢。“我的零售連鎖店中有數(shù)十個(gè)支付終端被黑客入侵,因此進(jìn)行了虛假交易和/或持卡人敏感數(shù)據(jù)被盜。客戶會(huì)責(zé)怪我,我需要識(shí)別黑客。
貨物損失。“我剛剛讀到網(wǎng)絡(luò)上發(fā)布的一個(gè)電表被黑客入侵,已經(jīng)有成千上萬的不誠實(shí)用戶正在實(shí)施它以支付更低的賬單。
健康損失。“我的胰島素泵不再分配,或者分配太多。誰下令更改交貨時(shí)間?
失去對(duì)重要基礎(chǔ)設(shè)施的控制。“誰把整個(gè)城市的燈關(guān)了?”
很明顯,任何電子設(shè)備提供商都必須有兩個(gè)目標(biāo):首先,提供新的、強(qiáng)大的、具有成本效益的設(shè)備或服務(wù);其次,完全致力于其產(chǎn)品的穩(wěn)健性、責(zé)任性和安全性。事實(shí)上,這是他們保持用戶、利益相關(guān)者和消費(fèi)者信心的唯一途徑。
分析風(fēng)險(xiǎn)
上述目標(biāo),可以肯定的是,這些目標(biāo)雄心勃勃,是企業(yè)長壽的必要條件。但是,識(shí)別安全風(fēng)險(xiǎn)只是提供安全產(chǎn)品的第一步。每個(gè)提供商還必須采用并執(zhí)行嚴(yán)格的持續(xù)風(fēng)險(xiǎn)分析流程。
風(fēng)險(xiǎn)分析,最簡單的形式,是一個(gè)三步過程。它首先評(píng)估資產(chǎn),要保護(hù)的貨物,其優(yōu)勢和劣勢。然后評(píng)估任何潛在的攻擊者并分析其可能的方法。最后,檢查任何可能的攻擊路徑。資產(chǎn)、攻擊方法和攻擊路徑之間的任何一致性都會(huì)使設(shè)備(資產(chǎn))面臨風(fēng)險(xiǎn)。
考慮一個(gè)可能的情況。如果通過簡單的藍(lán)牙連接入侵能源智能電表可以為某人節(jié)省 20% 的月度賬單,那么大規(guī)模甚至廣泛欺詐的風(fēng)險(xiǎn)非常高。同樣,如果獲取控制家用電器水和能源使用的應(yīng)用程序的二進(jìn)制代碼的成本非常低,那么一些不誠實(shí)的競爭對(duì)手(或供應(yīng)商?!)就會(huì)這樣做。?
風(fēng)險(xiǎn)分析后的行動(dòng)選擇需要逐案決定。
采取法律/合同方法。這條途徑總是非常具有成本效益,值得建立。設(shè)備制造商可以很容易地要求分包商(例如制造工廠)簽署保密協(xié)議(NDA),并承諾誠實(shí)和忠實(shí)。4
實(shí)施技術(shù)對(duì)策。這些步驟將保護(hù)設(shè)備免受不誠實(shí)的合作伙伴、分包商和非法/無法訪問的攻擊者的侵害。技術(shù)對(duì)策保證設(shè)備的預(yù)期行為和功能由制造商控制、密封和批準(zhǔn)。沒有人,沒有任何東西可以修改定義的操作或訪問受保護(hù)的功能。
當(dāng)制造商在設(shè)備中使用與供應(yīng)商的法律合同和技術(shù)對(duì)策時(shí),它正在保護(hù)自己的資產(chǎn)并保護(hù)設(shè)備免受未經(jīng)授權(quán)的篡改和盜竊知識(shí)產(chǎn)權(quán)。制造商還確保設(shè)備為用戶,您和我提供安全可靠的運(yùn)行。
到目前為止是有道理的,但是您如何在設(shè)備中真正實(shí)施對(duì)策?部分答案是軟件中的加密。我們現(xiàn)在將看到如何將密碼學(xué)用作工具箱,以確保設(shè)備安全并為制造商和最終用戶提供信任和信心。
對(duì)策
什么是安全啟動(dòng)?
在本應(yīng)用筆記中,我們不會(huì)過多地談?wù)摪踩珕?dòng),因?yàn)樗俏覀兊?部分應(yīng)用筆記的主要關(guān)注點(diǎn)。盡管如此,我們不能在不提及安全啟動(dòng)的情況下討論密碼學(xué)。
電子設(shè)備由安裝在印刷電路板(PCB)上的一組電子元件組成,通常有一個(gè)(或多個(gè))運(yùn)行嵌入式軟件的微控制器。該軟件被視為數(shù)字內(nèi)容,并以二進(jìn)制可執(zhí)行格式存儲(chǔ)在一些內(nèi)存中。在執(zhí)行的軟件中啟用信任是一個(gè)基本期望,并且由于安全啟動(dòng),這種信任得以啟用。
安全啟動(dòng)是一個(gè)涉及加密的過程,它允許電子設(shè)備開始執(zhí)行經(jīng)過身份驗(yàn)證的,因此是受信任的軟件來運(yùn)行。現(xiàn)在我們將探討如何在基于公鑰的簽名驗(yàn)證的幫助下實(shí)現(xiàn)這種安全啟動(dòng)。
基于公鑰的簽名驗(yàn)證
現(xiàn)有的公鑰加密方案5方便、安全地驗(yàn)證數(shù)字內(nèi)容的完整性和真實(shí)性。完整性意味著數(shù)字內(nèi)容自創(chuàng)建以來未被修改。真實(shí)性意味著相同的數(shù)字內(nèi)容已由一個(gè)明確識(shí)別的實(shí)體發(fā)布。這兩個(gè)基本特征由數(shù)字簽名方案提供,并且是必需的,以便數(shù)字內(nèi)容(即二進(jìn)制可執(zhí)行代碼)可以被電子設(shè)備信任。
數(shù)字內(nèi)容的完整性由一種稱為消息摘要的機(jī)制保證,即一種安全的哈希算法,如著名的 SHA-1、SHA-256 和最近的 SHA-3。消息摘要類似于“超級(jí)循環(huán)冗余校驗(yàn) (CRC)”6但在輸出中產(chǎn)生更多字節(jié)。例如,SHA-256 算法產(chǎn)生 32 字節(jié)輸出;CRC-32 僅產(chǎn)生 4 個(gè)字節(jié)。安全哈希算法有一個(gè)重要的基本屬性:不可能偽造產(chǎn)生預(yù)定義哈希值的數(shù)字內(nèi)容。推論是兩個(gè)不同的隨機(jī)數(shù)字內(nèi)容產(chǎn)生兩個(gè)不同的哈希值;讓兩個(gè)不同的數(shù)字內(nèi)容產(chǎn)生相同哈希值的概率幾乎為零。因此,如果更改了數(shù)字內(nèi)容的某些字節(jié),則數(shù)字內(nèi)容的哈希值也會(huì)更改。此外,與CRC不同,不可能將一些字節(jié)附加到修改后的數(shù)字內(nèi)容中,以便生成的哈希值與原始的,未修改的數(shù)字內(nèi)容的哈希值匹配。因此,使用哈希算法保護(hù)數(shù)字內(nèi)容,不可能秘密修改該數(shù)字內(nèi)容。最后,計(jì)算哈希就像計(jì)算CRC:不涉及加密密鑰。
數(shù)字內(nèi)容的真實(shí)性由基于公鑰的數(shù)字簽名方案本身(即加密配方)保證。公鑰加密基于密鑰對(duì)。任何人都可以擁有一對(duì)密鑰:一個(gè)秘密存儲(chǔ)的私鑰(例如,K普里夫)和一個(gè)公鑰(例如 K酒館) 公開提供給任何人。私鑰可用于對(duì)數(shù)字內(nèi)容進(jìn)行簽名。數(shù)字內(nèi)容的發(fā)行者使用自己秘密持有的私鑰來標(biāo)識(shí)自己是發(fā)行人。任何人都可以使用公鑰來驗(yàn)證數(shù)字內(nèi)容的簽名。這兩把鑰匙是綁在一起的。確實(shí),使用 K 簽署內(nèi)容普里夫生成可由 K 成功驗(yàn)證的數(shù)字簽名酒館只。沒有其他公鑰可以工作。相反,如果使用 K 成功驗(yàn)證簽名酒館,然后毫無疑問地被K簽了普里夫并且沒有其他私鑰。
數(shù)字簽名生成涉及兩個(gè)步驟。第一步包括對(duì)數(shù)字內(nèi)容進(jìn)行哈希處理,并使用上述屬性生成哈希值。在第二步中,前一個(gè)哈希值使用數(shù)字內(nèi)容作者唯一擁有的未公開私鑰進(jìn)行“簽名”。第二步生成附加到原始數(shù)字內(nèi)容的值(“簽名”)。
現(xiàn)在,任何想要驗(yàn)證數(shù)字內(nèi)容簽名的人都必須執(zhí)行以下兩個(gè)步驟。第一步,再次對(duì)數(shù)字內(nèi)容進(jìn)行哈希處理,就像在簽名生成過程中一樣。然后在第二步中,將生成的重建哈希值與附加到數(shù)字內(nèi)容和公鑰的簽名一起用作簽名驗(yàn)證算法的輸入。如果算法確定簽名是真實(shí)的,這將證明數(shù)字內(nèi)容與原始數(shù)字內(nèi)容相同(完整性),并且該數(shù)字內(nèi)容的作者確實(shí)是他聲稱的身份(真實(shí)性)(圖 1)。
圖1.數(shù)字簽名的圖表,以及如何應(yīng)用和驗(yàn)證數(shù)字簽名。插圖通過維基共享資源根據(jù)知識(shí)共享署名-相同方式共享3.0授權(quán)。
基于公鑰的數(shù)字簽名方案之所以有效,是因?yàn)樗借€只能由此私鑰的所有者用于對(duì)內(nèi)容進(jìn)行簽名,而不能由其他人使用。因此,私鑰必須在妥善保管下保密。然而,公鑰不一定是機(jī)密的,因?yàn)槿魏稳硕伎梢则?yàn)證數(shù)字內(nèi)容的簽名。公鑰的唯一基本要求是可信度。請(qǐng)注意,這里的公共并不意味著不安全。公鑰可以自由訪問,因?yàn)樗鼪]有指示私鑰;知道公鑰就無法計(jì)算私鑰。此外,公鑰不允許任何人執(zhí)行個(gè)人身份操作,例如對(duì)數(shù)字內(nèi)容進(jìn)行簽名。
但是,由于任何人都可以生成一對(duì)密鑰,因此必須有一種機(jī)制來驗(yàn)證公鑰所有者的身份。假設(shè)公鑰與標(biāo)識(shí)沒有強(qiáng)綁定。然后,如果您使用該公鑰成功驗(yàn)證了數(shù)字內(nèi)容的數(shù)字簽名,您仍然無法信任此數(shù)字內(nèi)容,因?yàn)槟恢勒l實(shí)際簽署了此數(shù)字內(nèi)容。
因此,公鑰的完整性、真實(shí)性和身份都必須得到保證。這可以通過不同的方式完成。
方法一:自我認(rèn)證。數(shù)字內(nèi)容的接收者親自從發(fā)送者那里接收公鑰,或者發(fā)送者以毫無疑問公鑰的合法來源和所有權(quán)的方式傳輸公鑰。然后,只要此公鑰(也稱為根密鑰)存儲(chǔ)在未經(jīng)授權(quán)的人員無法修改它的地方,就可以信任它。
方法 2:分層認(rèn)證。在此方法中,驗(yàn)證程序的層次結(jié)構(gòu)保證了公鑰的來源。公鑰基礎(chǔ)結(jié)構(gòu) (PKI) 提供了此類層次結(jié)構(gòu)的定義。公鑰與密鑰所有者的身份之間的物理關(guān)聯(lián)是證書。證書由 PKI 層次結(jié)構(gòu)的中間實(shí)體(即證書頒發(fā)機(jī)構(gòu))簽名。
因此,在使用公鑰之前,必須首先使用證書頒發(fā)機(jī)構(gòu)的公鑰驗(yàn)證該公鑰證書的有效性。然后,通過使用父簽名機(jī)構(gòu)的公鑰,確保此證書頒發(fā)機(jī)構(gòu)的公鑰證書也有效,依此類推。因此,可以使用連續(xù)證書頒發(fā)機(jī)構(gòu)的公鑰進(jìn)行驗(yàn)證鏈,直到最終將其信任為根密鑰。您可能還記得,根密鑰是受信任的,因?yàn)樗鞘褂梅椒?1 獲取的。
圖2.公鑰和數(shù)字內(nèi)容簽名的驗(yàn)證過程。
使用基于公鑰的簽名驗(yàn)證軟件
當(dāng)應(yīng)用于軟件時(shí),這種公鑰簽名技術(shù)允許您信任可執(zhí)行的二進(jìn)制代碼。現(xiàn)在,您只需將該軟件視為數(shù)字內(nèi)容即可。此數(shù)字內(nèi)容的發(fā)送者是軟件審批者,負(fù)責(zé)接受針對(duì)設(shè)備驗(yàn)證的軟件。接收器是電子設(shè)備。軟件審批者生成一對(duì)密鑰,并在制造過程中將公共驗(yàn)證密鑰加載到電子設(shè)備中一次。私鑰保存在安全的地方,如下所述。軟件審批者使用自己的私鑰對(duì)生成的代碼進(jìn)行簽名,然后再將其加載到電子設(shè)備中。然后在通電時(shí),電子設(shè)備可以使用預(yù)加載的公鑰在運(yùn)行二進(jìn)制代碼之前驗(yàn)證其完整性和真實(shí)性。
有趣的是,您可以轉(zhuǎn)到下面的側(cè)邊欄以閱讀有關(guān)密鑰,其限制以及如何保護(hù)它的信息。
公鑰加密和對(duì)策
公鑰管理
公鑰不需要防止泄露,因此不需要任何旨在禁止訪問密鑰值的對(duì)策。與密鑰不同,公鑰不需要通過刪除/擦除其驗(yàn)證密鑰來對(duì)篡改事件做出反應(yīng)。無需側(cè)信道對(duì)策。唯一必需的保護(hù)機(jī)制必須針對(duì)密鑰替換/修改和修改的軟件行為。所有這些都使設(shè)備設(shè)計(jì)更簡單。所涉及的算法不受出口法規(guī)的約束,因?yàn)樗鼈儾话用埽皇菙?shù)字內(nèi)容摘要(即哈希算法和簽名驗(yàn)證)。最后,請(qǐng)注意,數(shù)字簽名驗(yàn)證算法(圖 1)仍然必須足夠強(qiáng)大,以防止有意或意外的干擾:電源故障、格式不正確的數(shù)字內(nèi)容和數(shù)字簽名。
私鑰管理
如上文介紹的基于公鑰的數(shù)字簽名方案所述,公鑰加密基于密鑰對(duì)。(密鑰對(duì)由公鑰和私鑰組成。私鑰是秘密存儲(chǔ)的,因?yàn)樗试S接收設(shè)備對(duì)內(nèi)容進(jìn)行身份驗(yàn)證——只有密鑰所有者才能對(duì)內(nèi)容進(jìn)行簽名。相反,任何人都可以使用公鑰,因?yàn)槿魏稳硕伎梢则?yàn)證簽名。這既無害又沒有風(fēng)險(xiǎn)。
顯然,正確管理私鑰是基于密鑰的加密的關(guān)鍵要求。任何竊取私鑰的人都可以簽署任意可執(zhí)行代碼,然后電子設(shè)備將成功驗(yàn)證這些代碼。因此,軟件審批者必須將私鑰存儲(chǔ)在受到嚴(yán)格保護(hù)以防止泄露的地方;他們必須確保沒有人可以使用密鑰(即使沒有披露)。某些認(rèn)證(如 PCI PTS 4.0)需要使用硬件安全模塊 (HSM) 來管理密鑰。HSM 是防篡改設(shè)備,能夠安全地生成和使用密鑰對(duì)。雖然可以導(dǎo)出公有密鑰,但關(guān)聯(lián)的私有密鑰仍保留在 HSM 中。在 HSM 中使用私鑰(例如,用于對(duì)數(shù)字內(nèi)容進(jìn)行簽名)需要事先進(jìn)行強(qiáng)多因素身份驗(yàn)證。需要簽署二進(jìn)制可執(zhí)行代碼的人員必須使用智能卡和 PIN 碼來解鎖 HSM 中的私鑰。根據(jù)安全策略,該操作可能需要兩個(gè)或更多人。此外,HSM必須保存在保險(xiǎn)箱中,以便在不使用時(shí)最大限度地提高安全性。此過程可確保只有受信任的人對(duì)二進(jìn)制可執(zhí)行代碼進(jìn)行簽名。
ECC 與 RSA 加密的優(yōu)勢
幾十年來,基于公鑰的密碼學(xué)一直是RSA算法。但在過去幾年中,橢圓曲線密碼學(xué)(ECC)已經(jīng)出現(xiàn)并在整個(gè)安全行業(yè)中傳播。與 RSA 相比,基于橢圓曲線的簽名驗(yàn)證具有相同的數(shù)量級(jí),但使用的計(jì)算資源要少得多。它的密鑰大小要小得多,從而減少了內(nèi)存占用。RSA 的安全應(yīng)用程序現(xiàn)在至少需要 2048 位安全性;RSA 密鑰需要 256 個(gè)字節(jié)。等效橢圓曲線密鑰的長度僅為 224 位7密鑰只有 28 個(gè)字節(jié)。因此,橢圓曲線加密是保護(hù)新設(shè)備的首選。
結(jié)論
ADI公司開發(fā)了一種基于公鑰的安全啟動(dòng)機(jī)制,使生產(chǎn)和密鑰管理變得簡單。此外,在密鑰管理方面,ADI公司滿足嚴(yán)格的PCI PTS 4要求。
公鑰加密消除了制造分包商通常需要的一些安全約束,包括在這些設(shè)備中加載軟件。由于公鑰加密不涉及任何秘密,但加載軟件的真實(shí)性得到保證,因此我們得到了兩全其美。
現(xiàn)在我們回到我們對(duì)物聯(lián)網(wǎng)的開場討論。為了確保物聯(lián)網(wǎng)的完整性,我們不允許電子交易、核電站等關(guān)鍵系統(tǒng)或植入式醫(yī)療設(shè)備的任何安全漏洞。物聯(lián)網(wǎng)必須保護(hù)金融、工業(yè)和醫(yī)療設(shè)備,才能使廣泛的通信蓬勃發(fā)展。最終,物聯(lián)網(wǎng)設(shè)備需要信任,這里討論的安全機(jī)制使這種信任成為可能且易于實(shí)現(xiàn)。
審核編輯:郭婷
-
ADI
+關(guān)注
關(guān)注
146文章
45829瀏覽量
250672 -
物聯(lián)網(wǎng)
+關(guān)注
關(guān)注
2910文章
44778瀏覽量
374712 -
PCI
+關(guān)注
關(guān)注
4文章
670瀏覽量
130343
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論