SRAM PUF 和量子衍生的半導(dǎo)體 PUF 技術(shù)對(duì)比
本文探討了 SRAM PUF 和量子衍生的半導(dǎo)體 PUF 技術(shù)在物聯(lián)網(wǎng)安全方面的相對(duì)性能。
目前,有數(shù)百億臺(tái)物理物聯(lián)網(wǎng)設(shè)備通過(guò)本地網(wǎng)絡(luò)連接到互聯(lián)網(wǎng)。傳感器的數(shù)據(jù)橫跨這些網(wǎng)絡(luò)。執(zhí)行器根據(jù)數(shù)據(jù)進(jìn)行啟動(dòng)。同時(shí),應(yīng)用程序分析數(shù)據(jù)以促進(jìn)人機(jī)響應(yīng)。
但是,如果您不知道哪個(gè)傳感器正在發(fā)送數(shù)據(jù),或者已啟動(dòng)響應(yīng)但發(fā)送給了錯(cuò)誤的執(zhí)行器,該怎么辦?這不僅僅是消費(fèi)者的智能手機(jī)出現(xiàn)令人惱火的故障。在工業(yè)應(yīng)用中,這可能是生產(chǎn)線關(guān)閉、醫(yī)院的診斷設(shè)備報(bào)告錯(cuò)誤信息,或者路口的所有交通信號(hào)燈同時(shí)變綠?;靵y的可能性顯而易見(jiàn)。為了避免此類災(zāi)難,一個(gè)基本要求是能夠絕對(duì)確定地識(shí)別網(wǎng)絡(luò)上的每個(gè)物聯(lián)網(wǎng)設(shè)備。
幾乎無(wú)一例外,微控制器 (MCU) 或其他半導(dǎo)體集成電路 (IC) 是每個(gè) IoT 設(shè)備的核心。因此,如果您可以為每個(gè)硅片創(chuàng)建唯一的身份,那么您就擁有了每個(gè) IoT 設(shè)備的唯一身份。這種身份有時(shí)被稱為設(shè)備“指紋”,但它們本質(zhì)上只是一系列隨機(jī)數(shù)。從 IoT 安全角度來(lái)看,這并不是全部,因?yàn)槿绻诳凸艟W(wǎng)絡(luò)(這是一個(gè)越來(lái)越常見(jiàn)的問(wèn)題),他們必須無(wú)法竊取設(shè)備身份或復(fù)制它們。如果他們能做到這一點(diǎn),那么距離冒充網(wǎng)絡(luò)上的設(shè)備甚至控制它們所連接的系統(tǒng)就只有一小步了。這可能是一輛汽車、一座工廠或您的家。
如果像分析師所說(shuō)的那樣,物聯(lián)網(wǎng)很快就會(huì)覆蓋 500 億臺(tái)設(shè)備,那么挑戰(zhàn)就在于找到一種切實(shí)可行的方法來(lái)創(chuàng)建數(shù)百億個(gè)獨(dú)特的、可保護(hù)的身份。
如今,大多數(shù)公司都會(huì)將身份和密鑰“注入”到物聯(lián)網(wǎng)設(shè)備中,也就是將隨機(jī)數(shù)加載到設(shè)備中。這個(gè)過(guò)程相對(duì)昂貴——我們估計(jì)每臺(tái)設(shè)備的成本在 50 美分到 2 美元之間——有時(shí)還意味著讓第三方參與物聯(lián)網(wǎng)供應(yīng)鏈,這可能會(huì)增加風(fēng)險(xiǎn)。還需要考慮另外兩個(gè)風(fēng)險(xiǎn)因素。首先,密鑰可能不像它們應(yīng)該的那樣隨機(jī)。它們可能只是從計(jì)算機(jī)的時(shí)鐘芯片中派生出來(lái)的。其次,注入的密鑰需要存儲(chǔ)在芯片的內(nèi)存中,這使得它們?nèi)菀妆恍孤痘虮槐I。
什么是 PUF?
物理(或物理上)不可克隆函數(shù)(PUF)提供了替代方法。PUF 是一種體現(xiàn)隨機(jī)性的物理結(jié)構(gòu),可用于創(chuàng)建隨機(jī)輸出函數(shù)。
隨機(jī)性是生成安全身份和加密密鑰的核心。數(shù)字越隨機(jī),惡意者就越難發(fā)現(xiàn)它們,網(wǎng)絡(luò)通信就越安全。系統(tǒng)表現(xiàn)出隨機(jī)性的程度稱為其“熵”。熵越高,隨機(jī)性越大。隨機(jī)性越大,系統(tǒng)就越安全。
半導(dǎo)體中的 PUF
PUF 可利用半導(dǎo)體芯片制造過(guò)程中硅晶圓結(jié)構(gòu)中固有的隨機(jī)物理特性來(lái)創(chuàng)建。例如,晶圓具有氧化物介電層,由于制造不一致,其厚度會(huì)存在微小差異,甚至在一個(gè)微觀晶體管和與其相鄰的晶體管之間也是如此。還會(huì)發(fā)生其他微觀變化,例如電路走線寬度變化和它們之間的空間不一致。所有這些變化都是隨機(jī)的,因此可以為生成隨機(jī)數(shù)提供基礎(chǔ),無(wú)論是從芯片的現(xiàn)有部分(例如 SRAM)生成,還是通過(guò)添加專用 IP 塊生成。
SRAM – 第一代 PUF
在 MCU 標(biāo)準(zhǔn)制造工藝 CMOS 中,最先獲得關(guān)注的是靜態(tài)隨機(jī)存取存儲(chǔ)器 (SRAM) PUF。SRAM 單元每個(gè)包含四個(gè)表現(xiàn)出上述物理變化的晶體管,在通電時(shí)具有首選狀態(tài) 0 或 1,該狀態(tài)取決于各個(gè)晶體管的物理特性。因此,SRAM PUF 在通電時(shí)會(huì)產(chǎn)生獨(dú)特的 0 和 1 隨機(jī)模式。大多數(shù) MCU 中都有 SRAM,因此該模式可以成為芯片的身份 - 指紋 - 也可以從中創(chuàng)建加密密鑰。
Microsemi 和 Xilinx 在其現(xiàn)場(chǎng)可編程門陣列 (FPGA) 中使用 SRAM PUF 技術(shù),而 NXP 已將其應(yīng)用于專為物聯(lián)網(wǎng)應(yīng)用而設(shè)計(jì)的 MCU。在 NXP 芯片中,SRAM PUF 會(huì)生成一個(gè)不可克隆的 256 位“種子”或身份,從中還可以派生出加密密鑰對(duì)。
SRAM PUF 的優(yōu)點(diǎn):
1. 他們創(chuàng)造了獨(dú)特的、不可克隆的芯片身份。
2. 硅制造過(guò)程的熵被用來(lái)產(chǎn)生隨機(jī)數(shù)。
3. 身份無(wú)需注入芯片。
4. 身份不會(huì)被存儲(chǔ),這使得黑客更難入侵。
5. 大多數(shù) MCU 中已經(jīng)存在 SRAM。
SRAM PUF 的局限性:
1. 由于生成每個(gè)隨機(jī)數(shù)所需的原始數(shù)據(jù)量很大,SRAM PUF 通常從相同的原始種子產(chǎn)生多個(gè)加密密鑰,這使得它們?cè)跀?shù)學(xué)上具有相關(guān)性,并且安全性不如每個(gè)密鑰都是從獨(dú)立產(chǎn)生的隨機(jī)數(shù)生成的。
2. SRAM PUF 讀數(shù)并不完全可靠,錯(cuò)誤率較高——可能高達(dá) 30%,具體取決于內(nèi)存制造商。這需要復(fù)雜的算法來(lái)糾正錯(cuò)誤,但這種算法對(duì)于資源有限的 MCU(例如物聯(lián)網(wǎng)設(shè)備中常用的 MCU)來(lái)說(shuō),會(huì)帶來(lái)很大的處理開(kāi)銷。
3. 熵,即隨機(jī)性的度量,可能并不好。如果內(nèi)存中的所有單元在加電時(shí)都有 90% 的幾率是 1,該怎么辦?這就是糟糕的熵,糟糕的隨機(jī)性,讓黑客更容易確定芯片的身份。由于這將取決于內(nèi)存技術(shù),因此 PUF 提供商幾乎無(wú)法控制最終的熵。
4. 有人質(zhì)疑這種芯片是否容易受到惡意攻擊者的旁道攻擊。旁道攻擊利用密鑰相關(guān)變量來(lái)猜測(cè)位值。例如,一個(gè)單元在穩(wěn)定在 1 狀態(tài)時(shí)消耗的電量可能比穩(wěn)定在 0 狀態(tài)時(shí)略多。測(cè)量這些差異可以揭示芯片內(nèi)的秘密。當(dāng)然,可以指定安全內(nèi)存,但這些內(nèi)存可能非常昂貴。
總之,SRAM PUF 使用的硅是為其他用途(易失性存儲(chǔ)器)而設(shè)計(jì)的。但 SRAM 單元并非設(shè)計(jì)為隨機(jī)數(shù)生成器或用于加密,因此在將其用于加密安全時(shí),必須認(rèn)識(shí)到該技術(shù)的局限性,尤其是可以為給定的內(nèi)存區(qū)域生成的種子數(shù)量較少。
還需要注意的是,在實(shí)踐中,即使使用 SRAM PUF 創(chuàng)建身份,公司通常也會(huì)使用密鑰注入來(lái)生成加密密鑰,即使此過(guò)程涉及所有安全隱患并增加成本。
第二代量子驅(qū)動(dòng) PUF
第二代半導(dǎo)體 PUF 現(xiàn)已作為專用 IP 塊提供,而不是使用 SRAM。它們采用標(biāo)準(zhǔn) CMOS 工藝。通常,64 x 64 單元陣列(每個(gè)單元包含兩個(gè)晶體管)占用最小的硅面積并利用量子隧穿來(lái)生成隨機(jī)數(shù)。
如前所述,芯片上的氧化層厚度隨機(jī)變化。在量子隧穿中,電子通過(guò)氧化層傳播的程度不同,具體取決于氧化層的厚度和特定點(diǎn)的原子結(jié)構(gòu)。所涉及的電流很小,約為飛安(10 -15安培),只有幾十個(gè)電子。但現(xiàn)在已經(jīng)開(kāi)發(fā)出可以精確測(cè)量這些電子流的技術(shù),并根據(jù)相鄰單元的讀數(shù)生成 1 或 0。
錯(cuò)誤確實(shí)會(huì)發(fā)生,并且與 SRAM PUF 一樣,模糊提取器算法可用于糾正錯(cuò)誤。但是,錯(cuò)誤率比第一代 PUF 低得多,通常低于 5%,因此糾錯(cuò)所需的處理器開(kāi)銷要少得多。
這些 PUF 僅在生成密鑰時(shí)消耗幾分之一秒的電量。它們?cè)谄渌麜r(shí)間不消耗任何電量,因此非常節(jié)能。這一點(diǎn)很重要,特別是對(duì)于電池供電的物聯(lián)網(wǎng)應(yīng)用而言。
量子驅(qū)動(dòng)的第二代 PUF 帶來(lái)了進(jìn)一步的優(yōu)勢(shì)。
1. 大量原材料可用于按需生成多個(gè)隨機(jī)數(shù)或種子,以適應(yīng)不同的服務(wù)。
2. 這些種子可用于按需生成多個(gè)加密密鑰。由于密鑰來(lái)自不同的種子,因此它們?cè)跀?shù)學(xué)上不相關(guān),因此更安全。
3. 由于第 1 點(diǎn)和第 2 點(diǎn),密鑰注入的需要以及其所有相關(guān)成本和風(fēng)險(xiǎn)被完全消除。
4. 身份和密鑰不需要像使用密鑰注入時(shí)那樣被存儲(chǔ),這使得芯片更加安全。
5. PUF 的硅占用空間很小,可最大程度降低成本,并且易于測(cè)試。
6. 只有量子驅(qū)動(dòng)的第二代 PUF 才能緩解未來(lái)量子計(jì)算機(jī)可能帶來(lái)的攻擊(當(dāng)這些計(jì)算機(jī)實(shí)現(xiàn)商業(yè)化時(shí))。
PUF、微控制器和物聯(lián)網(wǎng)安全
全球最大的 MCU 公司和一些較小的半導(dǎo)體公司目前正在評(píng)估第二代 PUF。該技術(shù)已在 55nm 的測(cè)試芯片中得到驗(yàn)證,目前正在向更小的幾何尺寸遷移。幾家 MCU 公司預(yù)計(jì)將在今年晚些時(shí)候和 2022 年推出采用這些 PUF 的芯片。確保 MCU 安全是確保物聯(lián)網(wǎng)設(shè)備安全的最基本步驟。隨著數(shù)十億個(gè)物聯(lián)網(wǎng)端點(diǎn)的部署和全球范圍內(nèi)制定的加強(qiáng)物聯(lián)網(wǎng)網(wǎng)絡(luò)安全的法律法規(guī),第二代 PUF 的出現(xiàn)可謂恰逢其時(shí)。