嵌入式設(shè)計(jì)中的安全性多年來一直是一個(gè)熱門話題,但對(duì)于不同的人和組織來說,安全性意味著不同的東西。根據(jù)經(jīng)驗(yàn),一個(gè)人認(rèn)為安全的設(shè)計(jì)要求可能與其他人截然不同。
盡管人們對(duì)嵌入式系統(tǒng)需要更高級(jí)別的安全性進(jìn)行了廣泛的認(rèn)識(shí)和討論,但如今很少有系統(tǒng)具有強(qiáng)制性的安全規(guī)范。不幸的是,對(duì)于大多數(shù)設(shè)計(jì)規(guī)范來說,安全性是事后的想法。許多工程師和架構(gòu)師認(rèn)為軟件將保護(hù)系統(tǒng),因此他們只需要關(guān)注保護(hù)進(jìn)入其處理器或系統(tǒng)的IP。然而,事實(shí)遠(yuǎn)非如此。
設(shè)計(jì)工程師和架構(gòu)師不僅需要在軟件中實(shí)現(xiàn)安全功能,還需要在硬件中實(shí)現(xiàn)安全功能。硬件安全性可以:
防止產(chǎn)品被克隆或過度構(gòu)建
保護(hù)知識(shí)產(chǎn)權(quán),使公司能夠保持差異化
保護(hù)數(shù)據(jù)通信以防止欺詐并防止公司品牌受到玷污
如果您不了解如何實(shí)現(xiàn)這些功能,那么您并不孤單。幸運(yùn)的是,有一些中檔密度FPGA形式的選項(xiàng)可以滿足現(xiàn)代安全要求。
下面介紹了使設(shè)計(jì)更加安全所需的關(guān)鍵功能。
分解安全要求
第一步是將設(shè)計(jì)的安全要求分為兩大類:設(shè)計(jì)安全性和數(shù)據(jù)安全性。
設(shè)計(jì)安全性意味著采取措施防止從硅中提取IP,這轉(zhuǎn)化為對(duì)差分功率分析(DPA)對(duì)策的要求。
數(shù)據(jù)安全涉及保護(hù)云和/或機(jī)器對(duì)機(jī)器(M2M)通信,利用安全存儲(chǔ)進(jìn)行物理上不可克隆的基于功能(基于PUF)的密鑰生成和抗DPA加密引擎。
讓我們更詳細(xì)地看一下每個(gè)類別,并提供中端FPGA架構(gòu)如何滿足其要求的應(yīng)用示例。
設(shè)計(jì)安全性
大多數(shù)工程師都知道,保護(hù)FPGA的比特流不被提取非常重要。通常的方法是使用密鑰加密比特流。盡管密鑰是黑客攻擊的障礙,但它們不足以滿足當(dāng)今的需求。為什么?因?yàn)橐环N叫做DPA的技術(shù)。
當(dāng)設(shè)備執(zhí)行讀取密鑰或基于密鑰解密文件等操作時(shí),它會(huì)發(fā)出磁信號(hào)。這些信號(hào)可以通過廉價(jià)的電磁探頭檢測(cè)到。在最近進(jìn)行的一次遠(yuǎn)離設(shè)計(jì)的測(cè)試中,DPA技術(shù)被證明能夠確定何時(shí)讀取或訪問密鑰。從那里,探頭和PC或邏輯分析儀只需幾分鐘即可找到信號(hào)中的模式并確定密鑰是什么。獲得密鑰后,您可以解密 FPGA 的比特流。
讓我重復(fù)一遍:您只需使用帶有廉價(jià)探頭和PC的DPA即可解密加密的比特流。
幸運(yùn)的是,有一種方法可以消除DPA現(xiàn)象。設(shè)計(jì)人員需要尋找內(nèi)置DPA對(duì)策的FPGA。
迄今為止,只有少數(shù)FPGA內(nèi)置了此功能,其中許多設(shè)備都是高端且昂貴的?,F(xiàn)在,成本優(yōu)化的中端密度 FPGA(如微塞米的 PolarFire 系列)集成了 DPA 對(duì)策,可用于各種應(yīng)用。極地火災(zāi) FPGA 集成了解決 DPA 泄漏問題的設(shè)計(jì)特性,可防止 DPA 攻擊損害比特流。
數(shù)據(jù)安全
越來越多的設(shè)備連接到其他設(shè)備或云,這會(huì)使系統(tǒng)的數(shù)據(jù)安全面臨風(fēng)險(xiǎn)。硬件架構(gòu)師需要負(fù)責(zé)解決這個(gè)問題,因?yàn)閮H靠軟件解決方案是不夠的。
為了確保數(shù)據(jù)通信的安全,必須使用特定的算法和密鑰在接收端對(duì)發(fā)送的信息進(jìn)行加密和解密。有許多常見的算法(包括 AES-256、SHA 和 ECC),它們必須基于要使用的密鑰。
要連接到云,需要稱為公鑰基礎(chǔ)結(jié)構(gòu) (PKI) 的雙密鑰策略。PKI 基于公鑰和私鑰。網(wǎng)絡(luò)上的每個(gè)節(jié)點(diǎn)都有一個(gè)經(jīng)過認(rèn)證的公鑰,該公鑰已由受信任的第三方批準(zhǔn)(或簽名)。網(wǎng)絡(luò)上的每個(gè)節(jié)點(diǎn)也有自己的私鑰,只有該節(jié)點(diǎn)知道。
發(fā)送安全通信時(shí),您可以使用要向其發(fā)送數(shù)據(jù)的節(jié)點(diǎn)的認(rèn)證公鑰以及您自己的私鑰來加密數(shù)據(jù)。只有具有正確公鑰和相應(yīng)私鑰的節(jié)點(diǎn)才能解密數(shù)據(jù)。這是對(duì)如何保護(hù)云中數(shù)據(jù)的基本描述。
但有兩個(gè)重要問題需要硬件工程師來解決。
首先是 DPA:加密引擎(FPGA 邏輯或加密處理器)是否內(nèi)置了 DPA 對(duì)策?如果沒有,則可以確定私鑰,從而使您的數(shù)據(jù)通信面臨風(fēng)險(xiǎn)。
第二個(gè)是:私鑰是如何保護(hù)的?有許多硬件組件可以保護(hù)密鑰,但最安全的系統(tǒng)是在FPGA器件中設(shè)計(jì)PUF的系統(tǒng)。這利用了每個(gè)芯片的獨(dú)特屬性作為設(shè)備的一種生物識(shí)別標(biāo)識(shí)符。
通過使用 PUF 和非易失性存儲(chǔ)器 (NVM),密鑰可以通過最高級(jí)別的加密進(jìn)行存儲(chǔ)。當(dāng)設(shè)計(jì)具有必須保護(hù)的數(shù)據(jù)通信時(shí),請(qǐng)參考FPGA,該FPGA包含用于結(jié)構(gòu)和院系的DPA對(duì)策,以實(shí)現(xiàn)安全的密鑰生成和存儲(chǔ)。
PolarFire FPGA 旨在保護(hù)私鑰并執(zhí)行完全安全的數(shù)據(jù)通信(圖 1)。所有密鑰構(gòu)建模塊都包含在芯片上,包括 DPA 安全加密處理器、PUF、密鑰存儲(chǔ)和 RNG。設(shè)計(jì)人員只需對(duì)處理器進(jìn)行編程,以使用RNG和特定的加密協(xié)議(如AES 256)生成密鑰,然后板載PUF提供安全密鑰存儲(chǔ),加密處理器實(shí)現(xiàn)安全通信!用于實(shí)現(xiàn)安全通信的 FPGA 架構(gòu)資源非常少。
圖 1.此處顯示的是中檔密度 PolarFire FPGA 的功能框圖,該 FPGA 由數(shù)據(jù)安全處理器、物理不可克隆函數(shù) (PUF)、隨機(jī)數(shù)生成器 (RNG) 和安全非易失性存儲(chǔ)器 (NVM) 組成。
設(shè)計(jì)和數(shù)據(jù)安全:沒有任何借口
隨著保護(hù)設(shè)備變得越來越具有挑戰(zhàn)性,設(shè)計(jì)人員需要能夠使其系統(tǒng)本質(zhì)上安全的技術(shù)構(gòu)建模塊?,F(xiàn)在,中端密度 FPGA 可解決嵌入式工程師面臨的新興安全挑戰(zhàn),包括通過 DPA 對(duì)策實(shí)現(xiàn)設(shè)計(jì)安全性,以及使用加密處理器實(shí)現(xiàn)數(shù)據(jù)安全性。這些安全解決方案還以更小的外形尺寸提供更低的功耗。
審核編輯:郭婷
-
FPGA
+關(guān)注
關(guān)注
1645文章
22049瀏覽量
618407 -
M2M
+關(guān)注
關(guān)注
10文章
210瀏覽量
83164
發(fā)布評(píng)論請(qǐng)先 登錄
注塑機(jī)數(shù)據(jù)采集網(wǎng)關(guān)和數(shù)據(jù)中臺(tái)有哪些聯(lián)系特點(diǎn)

當(dāng)我問DeepSeek AI爆發(fā)時(shí)代的FPGA是否重要?答案是......
Jtti.cc如何確保海外服務(wù)器租用過程中的數(shù)據(jù)安全?
現(xiàn)代中端FPGA的主要亮點(diǎn)
采用FPGA驅(qū)動(dòng)ADS1294,采集數(shù)據(jù)不管差分輸入端都接地輸入還是輸入大的直流信號(hào),數(shù)據(jù)噪聲都很大,怎么解決?
EE-132:使用VisualDSP將C代碼和數(shù)據(jù)模塊放入SHARC存儲(chǔ)器中

評(píng)論