當(dāng)你的項目終于做完了,到了發(fā)布的關(guān)鍵節(jié)點,為了防止自己的心血被別人利用,最好對產(chǎn)品進行bit加密。首先咱們來了解一下加密的優(yōu)點,xilinx的V6和7全系列FPGA支持AES256加密,加密的好處: 1. 可以防止別人回讀或者對你的程序進行逆向; 2. 防止更改燒寫的bit文件。 如果僅僅是防止回讀,可以簡單設(shè)置BITSTREAM.READBACK.SECURITY,其中LEVEL1是禁止回讀,LEVEL2禁止回讀和重新燒寫FPGA。 但如果對手的逆向能力很強,比如說在FPGA上電加載bit的時候用邏輯分析儀把用bit文件“讀”出來,這個簡單的設(shè)置肯定就不行了。這時候可以使用AES256加密。AES算法簡介:AES即高級加密標(biāo)準(zhǔn),是一種區(qū)塊加密,當(dāng)然也是對稱加密。區(qū)塊固定為128bit,秘鑰為128,192或256bit。AES有5種加密模式,xliinx采用的是CBC模式。有一個128bit初始向量IV(startCBC),先利用初始向量IV與第一組數(shù)據(jù)進行異或后再進行加密運算生成C1。將C1作為初始向量與第二組數(shù)據(jù)進行異或后再進行加密運算生成C2。以此類推,當(dāng)最后一組數(shù)據(jù)加密完畢后,將加密結(jié)果拼接為最終結(jié)果,C = C1C2C3……Cn。 所以采用CBC模式的256AES需要兩個東西,128bit-startCBC和256bit-AES key。 到這里還沒完,完成了bit加密還沒有認證,萬一別人把燒進去bit文件篡改了怎么辦?(重新燒了新的bit文件)。所以xilinx又提供了HMAC的認證,這個就跟校驗差不多了,檢查消息的完整性。所以還需要提供256bit-HMAC,加上128bit-startCBC和256bit-AES key,一共是三個。這三個key可以自己生成,也可以指定空的 .nky文件,由軟件隨機生成好。 for example ··· Device xc7a35t; Key 0 0f2ec1178ae0d04c8c1431afe8266d08e799b01c5c486c2567f3621f47319aaf; Key StartCBC a6262d508c338eeab815340a7832436d; Key HMAC d82e72733a7bd7904c802d13db37187b8ad20b972ac163470c5a4d239bce6308; ··· 加密的AES key可以存到FPGA內(nèi)部易失性的BBR或只能燒寫一次(OTP)的eFUSE中。 BBR需要電池供電,可以多次編程。eFUSE不需要電池,但只能燒寫一次。這里使用eFUSE. eFUSE寄存器 首先來看一下eFUSE寄存器:
要打開edit device properties,先要打開sythesized design 或者implement design,然后在generate bitstream右鍵設(shè)置
-
FPGA
+關(guān)注
關(guān)注
1635文章
21837瀏覽量
608347 -
加密
+關(guān)注
關(guān)注
0文章
306瀏覽量
24086 -
加載
+關(guān)注
關(guān)注
0文章
8瀏覽量
11074
原文標(biāo)題:xilinx FPGA bit 文件加密
文章出處:【微信號:FPGAer_Club,微信公眾號:FPGAer俱樂部】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
相關(guān)推薦
使用xilinx的k7160t對ads5271的數(shù)字信號進行采集,外部輸入電壓時,FPGA采集到的值比實際的值大,怎么解決?
基于Xilinx ZYNQ7000 FPGA嵌入式開發(fā)實戰(zhàn)指南
ADC3583怎么用Xilinx的ISERDESE2采集信號?
采用Xilinx FPGA的AFE79xx SPI啟動指南

【米爾-Xilinx XC7A100T FPGA開發(fā)板試用】+02.PCIE接口測試(zmj)
Xilinx 7系列FPGA PCIe Gen3的應(yīng)用接口及特性

如何在ModelSim中添加Xilinx仿真庫
基于FPGA的AES256光纖加密設(shè)計
FPGA | Xilinx ISE14.7 LVDS應(yīng)用
基于 FPGA 的光纖混沌加密系統(tǒng)
基于FPGA的光纖通信加密系統(tǒng)

Xilinx 7系列FPGA功能特性介紹

適用于 Xilinx? MPSoC 和 FPGA的可配置多軌PMU TPS650864數(shù)據(jù)表

評論