一、引言
在當今數(shù)字化時代,嵌入式設備廣泛應用于各個領域,從智能家居到工業(yè)控制,從醫(yī)療設備到軍事國防。隨著物聯(lián)網(IoT)的迅猛發(fā)展,嵌入式設備的數(shù)量呈爆炸式增長,它們相互連接,構建起龐大而復雜的智能網絡。然而,這種廣泛的應用和互聯(lián)也帶來了嚴峻的安全挑戰(zhàn)。嵌入式設備往往存儲著敏感信息,如用戶數(shù)據(jù)、設備控制指令等,并且可能在安全防護相對薄弱的環(huán)境中運行,容易成為攻擊者的目標。
傳統(tǒng)的安全機制在面對日益復雜的攻擊手段時,逐漸暴露出其局限性。例如,基于軟件的加密方法依賴于密鑰的存儲和管理,而密鑰一旦被竊取,整個安全體系將面臨崩潰。硬件層面的安全防護也面臨著物理攻擊的威脅,攻擊者可以通過微探針攻擊、冷凍攻擊等手段獲取設備中的敏感信息。在這樣的背景下,物理不可克隆功能(Physical Unclonable Function,PUF)作為一種新興的硬件安全技術,應運而生,為嵌入式設備的安全防護提供了新的思路和解決方案。
PUF 利用芯片制造過程中由于工藝偏差等物理特性產生的不可預測、不可克隆的隨機特征,為每個芯片提供獨一無二的 “指紋”。這些指紋可以用于生成加密密鑰,實現(xiàn)設備的身份認證,有效抵御克隆攻擊和物理攻擊,從而顯著提升嵌入式設備的安全性。本文將深入探討 PUF 技術在嵌入式設備密鑰生成與防克隆攻擊中的應用,詳細介紹其原理、工作機制、優(yōu)勢以及實際應用案例,并對未來發(fā)展趨勢進行展望。
二、物理不可克隆功能(PUF)概述
2.1 PUF 的定義與基本原理
物理不可克隆功能(PUF)是一種依賴于芯片物理特性的硬件函數(shù)實現(xiàn)電路。其核心原理是利用芯片制造過程中不可避免地引入的微小工藝參數(shù)偏差,這些偏差在每一個芯片上都是獨一無二的,且具有隨機性和不可控性。當向 PUF 電路輸入一個激勵信號(Challenge)時,由于芯片內部物理結構的差異,會產生一個唯一且不可預測的響應信號(Response),從而實現(xiàn)激勵信號與響應信號之間唯一對應的函數(shù)功能。
例如,在基于仲裁器的 PUF(Arbiter PUF)中,數(shù)字信號在兩條不同路徑上傳播時,由于制造工藝導致的路徑長度、晶體管參數(shù)等微小差異,使得信號在到達仲裁器時產生不同的延遲。通過比較兩條路徑信號到達仲裁器的先后順序,就可以得到一個與芯片物理特性相關的響應。這種響應是基于芯片的物理結構產生的,即使是在同一批次生產的芯片,其響應也具有很高的差異性,因此幾乎無法被克隆。
2.2 PUF 的分類
PUF 按照實現(xiàn)方法可以分為多種類型,常見的有以下幾類:
2.2.1 數(shù)字電路 PUF:
基于存儲器的 PUF:利用存儲器單元結構的穩(wěn)定狀態(tài)來生成響應。例如,SRAM PUF 利用 SRAM 單元在加電時的初始狀態(tài),由于制造工藝差異,不同的 SRAM 單元在不穩(wěn)定狀態(tài)向穩(wěn)定狀態(tài)轉化時具有明確的偏向,從而產生不同的初始值作為響應。觸發(fā)器 PUF 和蝴蝶 PUF 也屬于這一類,它們基于雙穩(wěn)態(tài)邏輯單元的制造變化差異來工作。
基于傳播時延的 PUF:數(shù)字信號在電路中的傳播會受到多種因素的影響,如 MOSFET 通道長度、寬度和閾值電壓、氧化層厚度、金屬線的形狀等,這些因素導致信號傳播延遲具有部分隨機性;谥俨闷鞯 PUF 就是典型代表,它通過比較兩條信號傳播路徑的延遲差異來產生響應;诃h(huán)形振蕩器的 PUF 則是利用不同環(huán)形振蕩器由于工藝偏差導致的振蕩頻率差異來生成響應,基于毛刺的 PUF 利用電路中產生的毛刺信號特性來實現(xiàn) PUF 功能。
2.2.2 模擬電路 PUF:
模擬電路 PUF 中最具代表性的是涂層 PUF(Coating PUF)。它通過在芯片表面添加一層具有隨機物理特性的涂層,當激勵信號通過與涂層相互作用后,產生與涂層物理特性相關的響應信號。
2.2.3 非電子 PUF:
這類 PUF 不依賴于傳統(tǒng)的電子電路。最具代表性的是光學 PUF,它利用光學元件的物理特性對光信號的調制作用來實現(xiàn) PUF 功能,是安全應用中 PUF 概念的第一個正式描述。此外,還有紙 PUF 和 CD PUF 等,它們分別利用紙張或光盤的物理特性產生唯一的響應。
2.3 PUF 的特性
1. 唯一性:由于每個芯片的制造工藝偏差都是獨一無二的,因此 PUF 產生的響應對于每個芯片來說也是唯一的,就像人類的指紋一樣,可作為芯片的獨特身份標識。
2. 不可克隆性:要精確克隆一個 PUF 的物理結構和特性幾乎是不可能的,因為制造工藝偏差的隨機性和微小性使得即使是在同一生產線上生產的芯片,其 PUF 響應也具有很大差異。這種不可克隆性為設備提供了高度的安全保障,有效防止了克隆攻擊。
3. 不可預測性:PUF 的響應是基于芯片物理特性產生的,在制造之前無法預測其具體值。即使攻擊者知道 PUF 的設計原理和激勵信號,也無法準確預測響應信號,增加了攻擊的難度。
4. 輕量級:PUF 通常不需要復雜的硬件電路或大量的計算資源,與傳統(tǒng)的安全機制相比,具有較低的功耗和硬件開銷,非常適合資源受限的嵌入式設備。
5. 隨機性:PUF 產生的響應具有隨機性,這使得其生成的密鑰具有較高的安全性,難以被破解。
三、PUF 在嵌入式設備密鑰生成中的應用
3.1 傳統(tǒng)密鑰生成方法的局限性
在傳統(tǒng)的嵌入式設備中,密鑰生成和存儲方式存在諸多安全隱患。常見的方法是將密鑰預先存儲在設備的非易失性存儲器(如 EEPROM、Flash 等)中。這種方式容易受到物理攻擊,攻擊者可以通過微探針攻擊、冷凍攻擊等手段直接從存儲器中讀取密鑰。一旦密鑰泄露,設備的安全性將蕩然無存,攻擊者可以輕易地訪問設備中的敏感信息,或者對設備進行惡意控制。
此外,傳統(tǒng)的密鑰生成算法通常依賴于軟件實現(xiàn),容易受到軟件漏洞和惡意軟件的攻擊。軟件算法可能存在被破解或篡改的風險,導致密鑰被竊取或生成不安全的密鑰。而且,對于大量嵌入式設備的密鑰管理也面臨著挑戰(zhàn),如何安全地分配、更新和存儲密鑰成為一個復雜的問題。
3.2 PUF 用于密鑰生成的優(yōu)勢
1. 增強密鑰安全性:PUF 利用芯片的物理特性生成密鑰,密鑰與芯片本身緊密綁定,具有唯一性和不可克隆性。即使攻擊者獲取了設備,也無法通過克隆芯片來獲取相同的密鑰,大大提高了密鑰的安全性。例如,基于 SRAM PUF 生成的密鑰,由于 SRAM 單元的初始狀態(tài)是由芯片制造工藝決定的,無法被人為篡改或預測,使得密鑰具有極高的安全性。
2. 無需密鑰存儲:傳統(tǒng)方法需要將密鑰存儲在設備的存儲器中,而 PUF 只在設備上電或需要時通過集成電路的物理特性衍生出密鑰,不需要將密鑰永久存儲在安全存儲器中,減少了密鑰被竊取的風險。這對于資源受限的嵌入式設備尤為重要,因為它節(jié)省了用于存儲密鑰的存儲器空間,同時也降低了對存儲器安全性的依賴。
3. 天然的防篡改特性:由于 PUF 生成的密鑰與芯片的物理結構緊密相關,任何對芯片的物理篡改都可能導致 PUF 響應發(fā)生變化,從而使得生成的密鑰也發(fā)生改變。這種天然的防篡改特性可以有效檢測到設備是否受到物理攻擊,一旦檢測到攻擊,設備可以采取相應的措施,如鎖定設備或發(fā)出警報。
4. 與 CMOS 技術兼容:大多數(shù) PUF 技術都與現(xiàn)有的 CMOS 制造工藝兼容,這意味著在不改變現(xiàn)有芯片制造流程的基礎上,就可以集成 PUF 功能,便于大規(guī)模生產和應用。這為 PUF 在嵌入式設備中的廣泛應用提供了便利條件,降低了成本和技術門檻。
3.3 PUF 密鑰生成過程
1. 激勵信號輸入:首先,向 PUF 電路輸入一個特定的激勵信號(Challenge)。這個激勵信號可以是數(shù)字信號、模擬信號或其他形式的信號,其具體形式取決于 PUF 的類型。例如,對于基于仲裁器的 PUF,激勵信號可能是一系列的數(shù)字脈沖序列,用于觸發(fā)信號在不同路徑上的傳播。
2. PUF 響應生成:PUF 電路接收到激勵信號后,由于芯片內部物理結構的差異,激勵信號在電路中傳播時會產生不同的響應。例如,在基于 SRAM PUF 中,激勵信號可能是加電操作,SRAM 單元在加電后會根據(jù)其自身的物理特性進入不同的初始狀態(tài),這些初始狀態(tài)就構成了 PUF 的響應。
3. 密鑰提。簭 PUF 的響應信號中提取出用于加密或認證的密鑰。通常需要對 PUF 的響應進行后處理,以提高密鑰的質量和安全性。例如,采用糾錯編碼技術來糾正由于環(huán)境噪聲等因素導致的 PUF 響應中的錯誤比特,采用哈希函數(shù)對 PUF 響應進行處理,以生成固定長度且具有良好隨機性的密鑰。在一些應用中,還會結合其他安全算法,如對稱加密算法,對提取的密鑰進行進一步的加密和保護。
以下是一個簡單的基于 Python 的代碼示例,展示如何對 PUF 響應進行哈希處理以生成密鑰(實際應用中會更為復雜且在硬件層面實現(xiàn))
3.4 PUF 密鑰生成的實際案例
中國移動旗下芯昇科技有限公司推出的高安全 mcu 芯片 ——cm32sxx 系列,通過使用南京帕孚信息科技有限公司 softpuf 開發(fā)工具包,在芯片中集成了物理不可克隆功能(PUF)。利用 PUF 技術提取出獨一無二的 “芯片指紋”,并將其用于生成安全密鑰。這些密鑰為設備提供了強大的安全保障,使得 cm32sxx 系列芯片具備防克隆、防篡改、抗物理攻擊以及側信道攻擊的能力,能夠為物聯(lián)網場景下的終端設備提供高級別的安全防護。
在實際應用中,cm32sxx 系列芯片可以用于智能家居設備的控制模塊。設備上電后,通過 PUF 生成唯一的密鑰,用于與智能家居系統(tǒng)中的其他設備進行安全通信和認證。由于密鑰是基于芯片的物理特性生成的,即使攻擊者試圖克隆設備,也無法獲取相同的密鑰,從而保證了智能家居系統(tǒng)的安全性。
四、PUF 在嵌入式設備防克隆攻擊中的應用
4.1 克隆攻擊對嵌入式設備的威脅
克隆攻擊是嵌入式設備面臨的嚴重安全威脅之一。攻擊者通過復制設備的硬件和軟件,制造出與原始設備外觀和功能相似的克隆設備,然后利用這些克隆設備進行惡意活動,如竊取用戶數(shù)據(jù)、干擾設備正常運行、進行非法的控制操作等。在一些關鍵領域,如醫(yī)療設備、工業(yè)控制系統(tǒng)、金融支付終端等,克隆攻擊可能會造成嚴重的后果,危及人們的生命安全、導致工業(yè)生產事故或造成重大的經濟損失。
例如,在醫(yī)療領域,克隆的醫(yī)療設備可能會給出錯誤的診斷結果或執(zhí)行錯誤的治療操作,對患者的健康造成極大危害。在工業(yè)控制系統(tǒng)中,克隆設備可能被用于干擾生產流程,破壞工業(yè)設施,影響企業(yè)的正常生產運營。而且,隨著嵌入式設備的廣泛應用和供應鏈的復雜性增加,克隆攻擊變得越來越容易實施,給設備制造商和用戶帶來了巨大的安全風險。
4.2 PUF 抵御克隆攻擊的原理
PUF 的唯一性和不可克隆性是其抵御克隆攻擊的核心。每個嵌入式設備的 PUF 都具有獨一無二的物理特征,基于這些特征生成的設備指紋和密鑰也是唯一的。當設備進行身份認證時,服務器會存儲每個合法設備的 PUF 響應信息?寺≡O備由于其物理結構與原始設備不同,即使在外觀和功能上進行了模仿,其 PUF 響應也會與原始設備存在顯著差異。
在認證過程中,設備向服務器發(fā)送 PUF 響應,服務器將接收到的響應與預先存儲的合法設備響應進行比對。如果響應不匹配,服務器就可以判斷該設備為克隆設備,從而拒絕其訪問或采取其他安全措施。例如,在一個基于物聯(lián)網的智能門鎖系統(tǒng)中,每個門鎖設備都集成了 PUF。用戶在使用手機 APP 解鎖門鎖時,門鎖設備會將其 PUF 響應發(fā)送給云端服務器進行認證。克隆的門鎖設備由于其 PUF 響應與合法設備不同,無法通過認證,從而有效防止了非法解鎖行為。
以下是一個簡單的設備認證代碼示例(基于 Python 和假設的服務器與設備通信模型):
4.3 PUF 在設備認證中的應用
4.3.1 基于 PUF 的認證流程
設備注冊:在設備出廠前或首次接入系統(tǒng)時,設備將其 PUF 響應信息發(fā)送給服務器進行注冊。服務器對設備的 PUF 響應進行存儲和管理,并為設備分配一個唯一的標識。
認證請求:當設備需要與系統(tǒng)中的其他設備或服務器進行通信時,會向對方發(fā)送認證請求,同時附上自己的 PUF 響應。
響應比對:接收方(服務器或其他設備)將接收到的 PUF 響應與預先存儲的該設備的 PUF 響應進行比對。如果比對結果一致,則認證通過,允許設備進行后續(xù)操作;如果比對結果不一致,則認證失敗,拒絕設備的請求,并可能采取相應的安全措施,如記錄攻擊日志、發(fā)出警報等。
4.3.2 強 PUF 在設備認證中的優(yōu)勢:
強 PUF 對設備認證使用經典的激勵 - 響應模式,無需復雜的多輪非線性運算,直接通過電路產生響應,然后與服務器預先存儲的響應進行比較,從而對設備進行合法性認證。相比傳統(tǒng)的用于認證的加解密技術,強 PUF 速度更快、功耗更小,特別適用于輕量級認證場景。在物聯(lián)網環(huán)境中,大量的嵌入式設備需要頻繁進行認證,使用強 PUF 可以大大提高認證效率,降低設備功耗,同時保證認證的安全性。
4.4 實際案例分析:PUF 成功抵御克隆攻擊
某工業(yè)自動化企業(yè)在其生產的工業(yè)控制器中采用了基于 PUF 的安全認證機制。該工業(yè)控制器用于控制生產線上的各種設備,對安全性要求極高。在使用過程中,企業(yè)發(fā)現(xiàn)有不法分子試圖通過克隆工業(yè)控制器來干擾生產流程。由于工業(yè)控制器集成了 PUF,克隆設備在接入系統(tǒng)進行認證時,其 PUF 響應與合法設備的響應存在明顯差異,系統(tǒng)立即檢測到了克隆設備的存在,并及時采取了措施,如切斷克隆設備的網絡連接、通知安全管理人員等,成功阻止了克隆攻擊,保障了生產線的正常運行。
通過對該案例的分析可以看出,PUF 在實際應用中能夠有效地抵御克隆攻擊,為嵌入式設備提供可靠的安全防護。隨著 PUF 技術的不斷發(fā)展和完善,越來越多的企業(yè)開始將其應用于關鍵設備的安全防護中,以應對日益嚴峻的克隆攻擊威脅。
五、PUF 技術面臨的挑戰(zhàn)與解決方案
5.1 環(huán)境因素對 PUF 的影響
PUF 的響應會受到環(huán)境因素的影響,如溫度、電壓、電磁干擾等。在不同的溫度和電壓條件下,芯片的物理特性可能會發(fā)生變化,從而導致 PUF 的響應產生漂移,出現(xiàn)誤碼。例如,溫度的升高可能會使芯片內部晶體管的參數(shù)發(fā)生變化,影響信號的傳播延遲,導致基于傳播時延的 PUF 響應發(fā)生改變。這種環(huán)境因素引起的響應變化可能會導致在設備認證或密鑰生成過程中出現(xiàn)錯誤,降低 PUF 的可靠性和安全性。
為了解決這一問題,研究人員提出了多種解決方案。一種常用的方法是采用糾錯編碼技術,如 BCH 糾錯編碼。在 PUF 響應生成后,對其進行糾錯編碼處理,當 PUF 響應受到環(huán)境因素影響出現(xiàn)誤碼時,通過糾錯編碼可以糾正錯誤比特,恢復正確的響應。另一種方法是采用溫度補償和電壓補償技術,通過監(jiān)測環(huán)境溫度