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