什么是物理不可克隆(PUF)?為何是解決芯片安全的絕佳方法?
2021-07-20 12:19:40 EETOP在一個嚴重依賴電子產品的日益互聯的世界中,安全性至關重要。現代電子產品幾乎一致地依賴密碼學作為保護電子數據的主要方法。然而,新興的硬件安全研究領域已經證明,我們所知道的密碼學并不是那么安全。
為此,物理不可克隆功能 (PUF) 已成為一種硬件安全技術,可提供從改進的密碼術到 IC 防偽的所有功能。在本文中,我們將介紹 PUF 的概念、它們的工作原理以及它們如何保護數據。
物理不可克隆功能 (PUF) 是一種硬件安全技術,它利用固有的設備變化來對給定的輸入產生不可克隆的唯一設備響應。
在更高的層面上,PUF 可以被認為類似于人類的生物識別——它們是每一塊硅的固有和唯一標識符。
由于硅加工技術的不完善,所生產的每一塊IC在物理上都是不同的。在不同的集成電路之間,這些工藝變化表現為不同的路徑延遲、晶體管閾值電壓、電壓增益和無數其他的方式。 重要的是,雖然這些變化在不同的集成電路之間可能是隨機的,但一旦知道,它們是確定的和可重復的。PUF利用IC行為的這種內在差異,為每個IC生成一個唯一的加密密鑰。
與使用單個存儲密鑰的傳統加密方法不同,PUF 通過實現質詢-響應身份驗證來工作。對于一個給定的PUF,一個特定的輸入,被稱為 "質詢",將產生一個輸出響應,(質詢應答認證challenge-response)該響應對特定的PUF是唯一的,因此是不可克隆的。
在制造時,PUF 將接受一系列不同的“質詢”并記錄其響應。通過此練習,設計人員了解每個 PUF 對給定質詢的獨特響應,并可以使用此信息來防止偽造、創建和存儲加密密鑰以及許多其他安全功能。
為了更好地說明PUF的工作原理,我們來看看DRAM PUF--一個利用DRAM工藝變化來生成加密密鑰并提供設備認證的PUF。
一個標準的DRAM單元的工作原理是用一個單一的電容來保持作為二進制狀態的存儲電荷,以及一個控制電荷進出電容的通斷晶體管。由于器件的非理想性,如晶體管的亞閾值泄漏,電容器上的電荷往往會隨著時間的推移而泄漏,從而導致單元失去狀態。這意味著,代表 "1 "位值的完全充電的DRAM單元會隨著時間的推移不希望地放電為 "0 "位值。
對于 PUF 而言,重要的是,每個單獨的 DRAM 單元泄漏率都受到單元制造過程變化的高度影響。
為了應對這種情況,所有的DRAM單元都會執行定期刷新命令,重新施加電荷以 "刷新 "存儲電容。另一方面,DRAM PUF 的工作原理是將刷新暫停一段比平常更長的指定時間間隔,并查看單元如何因泄漏而改變狀態。
由于不同的單元以不同的速度泄漏電荷,我們可以看到一些單元在一個時間間隔內完全放電并改變狀態,而其他的單元可能根本沒有放電到足以切換狀態。
在這種情況下,“質詢”是對 DRAM 單元陣列斷言的原始二進制值,而響應是該陣列在給定時間間隔后的值。這項技術可用于生成真正的隨機數,以用于加密密鑰的生成,也可用于設備識別,以進行防偽保護。在后一種應用中,認證器可以存儲一個challenge-response對的數據庫,并利用該知識來識別假冒設備與真實設備。
使用PUF的優勢是巨大的,這就是為什么該技術在硬件安全方面越來越受歡迎。
首先,PUF的一個最好的特點是,它是一種固有的非易失性技術,但它并不實際存儲任何密鑰。在非易失性存儲器中存儲密鑰通常會使集成電路受到硬件攻擊,使對手能夠讀取存儲器內容。
相反,PUF根本不存儲密鑰。它根據需要生成密鑰,作為對質詢的響應,之后密鑰會被瞬間抹去。總是有一把鑰匙,但你永遠無法看到它。即使你試圖 "發現它",試圖探測PUF也會大大影響其對質詢的響應。總而言之,這使得鑰匙的 "存儲 "非常安全,不會受到攻擊。
除此之外,PUF還得益于它是一個真正的硬件解決方案。就像真隨機數發生器可以創造真正不可預測的比特序列一樣,PUF可以通過利用自然界的真隨機性來創造真正不可預測的IC標識符或加密密鑰。這增加了安全性,因為鑰匙不能根據一些確定的或準確定的過程來預測。
由于其多功能性,PUF 是硬件安全方面的絕佳選擇——可用于隨機密鑰生成和存儲、設備身份驗證、隨機數生成、防偽等等。