D NA是個(gè)非常有意思的東西——它將我們與地球上的其他人類聯(lián)系在一起,同時(shí)又使我們每個(gè)人獨(dú)一無二。世界上沒有任何一個(gè)人的DNA與您的相同,一個(gè)也沒有。
近年來,我們已經(jīng)知道如何利用這種獨(dú)特性作為一種絕對(duì)身份識(shí)別的手段。有些被錯(cuò)誤定罪的人得益于DNA證據(jù)而擺脫罪名,有些人則因?yàn)镈NA提供了犯罪證據(jù)而受到應(yīng)有懲罰??梢哉f,我們每個(gè)人身體中的每個(gè)細(xì)胞都攜帶有個(gè)人身份的絕對(duì)證明。
這與技術(shù)世界形成了鮮明的對(duì)比。在這個(gè)世界中,每種設(shè)備的個(gè)體之間必須完全相同,哪怕是一個(gè)微米、微伏或字節(jié)。每部設(shè)備都必須擁有相同的外觀及功能。大多數(shù)情況下,這是一件好事——作為現(xiàn)代技術(shù)的創(chuàng)造者,您必須提供一致的用戶體驗(yàn)。但同時(shí),這種千篇一律也可能對(duì)安全性帶來徹底的摧毀。
如何確保真實(shí)性?由于各個(gè)設(shè)備都完全相同,難以知道聲稱來自于某臺(tái)設(shè)備的消息是否真的源自于該設(shè)備。這些消息可能來自于另一臺(tái)假冒設(shè)備。例如,某個(gè)房門執(zhí)行器從門禁鍵盤上接收到一條消息,且輸入的密碼正確,那么該門就應(yīng)打開。但該執(zhí)行器如何知道消息是真實(shí)可信的呢?
在面對(duì)面溝通中,這從來都不是問題。我們之所以認(rèn)識(shí)正在交談的人,是因?yàn)槲覀兪煜て湎掳托螤?、耳朵大小以及說話的聲音——也就是說,我們知道其DNA物理特征的表示形式,正是這點(diǎn)使我們每個(gè)人獨(dú)一無二。如果每臺(tái)設(shè)備也都具有這樣的獨(dú)特性就好了。
這正是Maxim研發(fā)ChipDNA?技術(shù)的原因。采用ChipDNA技術(shù)的設(shè)備包含使其獨(dú)一無二的元素,即使各個(gè)設(shè)備的功能都完全相同。配備有ChipDNA的設(shè)備內(nèi)部是測(cè)量芯片本身特定物理特征的電路元件?,F(xiàn)在,這些物理特征在時(shí)間上是穩(wěn)定的,但在各個(gè)設(shè)備之間卻又是不同的。ChipDNA邏輯利用這些器件相關(guān)的變化計(jì)算一個(gè)值,該值在每次計(jì)算時(shí)保持相同,但該值對(duì)于每個(gè)具體設(shè)備都是獨(dú)一無二的。該值能夠唯一地確認(rèn)設(shè)備,就像您的DNA能夠唯一地確認(rèn)您的身份一樣。
為了更好的理解確保發(fā)送方身份和消息完整性的重要性,我們以一個(gè)簡(jiǎn)單的場(chǎng)景為例。假如您在遠(yuǎn)端位置有一個(gè)傳感器,傳感器發(fā)送消息說存在某項(xiàng)問題。您如何相信該消息是真實(shí)的?您有幾種選擇:
選擇一:共享密鑰您在部署傳感器之前就應(yīng)設(shè)置一個(gè)密鑰——可能是密碼。然后,當(dāng)傳感器發(fā)送消息時(shí),以一定的方式將密鑰合并到消息中。您接收到消息時(shí),檢查發(fā)送的密碼是否正確;如果密碼正確,則接受該消息。
問題是,如果所有此類場(chǎng)景下的密碼都相同,那么對(duì)手就可能對(duì)設(shè)備執(zhí)行反向工程,并盜取密碼。然后對(duì)手就能夠假冒來自于任何類型、任何設(shè)備的消息。更為糟糕的是,如果密碼在發(fā)送時(shí)未經(jīng)加密,對(duì)手根本就無需接觸設(shè)備——只需監(jiān)聽會(huì)話即可獲得密碼。這就意味著能夠假冒部署范圍內(nèi)任何地點(diǎn)的任何傳感器。所以,共享密鑰不是解決問題的方法。
選擇二:公鑰加密如果您在設(shè)備中設(shè)置私鑰,設(shè)備即可利用私鑰對(duì)消息進(jìn)行數(shù)字簽名,并可利用對(duì)應(yīng)的公鑰進(jìn)行驗(yàn)證。采用這種方式簽名的消息近乎可以實(shí)現(xiàn)安全認(rèn)證。經(jīng)過簽名的消息是幾乎不可能更改或偽造的,所謂“幾乎不可能”是指在沒有簽名方私鑰的情況下,沒有已知方法能夠在合理時(shí)間內(nèi)模仿簽名。
問題是,密鑰、私鑰必須存在于目標(biāo)設(shè)備存儲(chǔ)空間中的某處。如果攻擊者能夠置入惡意軟件,惡意軟件就很容易泄露私鑰。在開發(fā)出惡意軟件之后,即可利用固件升級(jí)方法傳播惡意軟件,很快就會(huì)有大量受影響設(shè)備受到威脅。這種方法比簡(jiǎn)單的共享密鑰方法好,但仍然不是最佳選擇。
選擇三:ChipDNA技術(shù)ChipDNA技術(shù)克服了傳統(tǒng)公鑰-私鑰系統(tǒng)存在的問題,其私鑰永遠(yuǎn)無法泄露,甚至無法泄露給自己。實(shí)際上,在實(shí)際需要私鑰之前,設(shè)備中根本就不存在私鑰。只有在準(zhǔn)備對(duì)消息進(jìn)行簽名時(shí),才在硬件中產(chǎn)生ChipDNA邏輯計(jì)算的值,并且立即銷毀。計(jì)算值從不會(huì)出現(xiàn)在微控制器的存儲(chǔ)器映射中。以下是您可能使用ChipDNA技術(shù)的方式:
設(shè)備制造商在部署物聯(lián)網(wǎng)(IoT)設(shè)備之前,使ChipDNA硬件計(jì)算一個(gè)與ChipDNA值(私鑰)對(duì)應(yīng)的公鑰,而實(shí)際的ChipDNA值絕不會(huì)泄露。設(shè)備制造商然后利用其企業(yè)私鑰對(duì)公鑰進(jìn)行簽名,產(chǎn)生一個(gè)證書,然后將其寫入到設(shè)備。該證書隨后可證明設(shè)備提供的公鑰與工廠計(jì)算的公鑰相同,因?yàn)闆]有人能夠在無企業(yè)公鑰的情況下生成有效的證書。
完成部署之后,如果IoT設(shè)備想要發(fā)送消息,則重新計(jì)算ChipDNA值并將其作為私鑰,然后對(duì)消息進(jìn)行簽名。如果消息的接收方擁有該設(shè)備的公鑰,則能夠以非常高的可信度確認(rèn)消息是真實(shí)的、未經(jīng)篡改以及來自于特定的設(shè)備。
但是,自然環(huán)境下有數(shù)以百萬計(jì)的IoT設(shè)備,每臺(tái)IoT設(shè)備都配備一個(gè)公鑰,由誰來管理這個(gè)龐大的公鑰數(shù)據(jù)庫呢?接收到某臺(tái)IoT設(shè)備消息的所有接收方不可能都擁有特定設(shè)備的公鑰。但是接收方可向設(shè)備本身發(fā)送請(qǐng)求,詢問設(shè)備的公鑰證書。當(dāng)設(shè)備發(fā)送證書時(shí),接收方可通過兩步來驗(yàn)證證書的有效性:首先,接收方使用簽名方的公鑰驗(yàn)證證書的簽名。驗(yàn)證證書的合法性之后,接收方可繼續(xù)第二步:使用證書中包含的公鑰,測(cè)試設(shè)備消息的有效性。盡管看起來像是一套非常復(fù)雜的系統(tǒng),但整個(gè)過程所需時(shí)間卻不到1秒鐘。
防止IoT遭受侵入式攻擊問題來了,該系統(tǒng)到底有多安全?考慮一下以下場(chǎng)景:在測(cè)量芯片的物理屬性之前,私鑰甚至根本不存在,并且在使用完私鑰后立即將其銷毀。由于私鑰僅存在于安全、完全隔離的硬件中,從來不會(huì)出現(xiàn)在微控制器的實(shí)際存儲(chǔ)空間內(nèi),所以不能利用流氓固件發(fā)現(xiàn)私鑰。即使攻擊方試圖探測(cè)芯片本身,探測(cè)器件的行為將改變器件的特性,而器件特性決定了ChipDNA值,因此將摧毀恢復(fù)私鑰的任何企圖。
我們以上討論了如何利用ChipDNA來絕對(duì)保證某臺(tái)IoT設(shè)備消息的真實(shí)性且未經(jīng)篡改,但ChipDNA也可用于從驗(yàn)證固件映像到管理設(shè)備合法使用的其他諸多過程。對(duì)于任何需要絕對(duì)保證相關(guān)設(shè)備身份的事務(wù),ChipDNA都能大顯身手—— 擁有無窮無盡的可能性。
因此,在您考慮下一產(chǎn)品的安全需求時(shí),不要將就,一定要采用最嚴(yán)格、最強(qiáng)大的保護(hù)—ChipDNA技術(shù)。因?yàn)椋銦o法盜取一個(gè)并不存在的密鑰!
-
嵌入式
+關(guān)注
關(guān)注
5150文章
19660瀏覽量
317402 -
Maxim
+關(guān)注
關(guān)注
8文章
861瀏覽量
88614 -
物聯(lián)網(wǎng)
+關(guān)注
關(guān)注
2930文章
46221瀏覽量
392248
原文標(biāo)題:Maxim博客 | 你無法盜取一個(gè)并不存在的密鑰!
文章出處:【微信號(hào):Maxim_Integrated,微信公眾號(hào):美信半導(dǎo)體】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
評(píng)論