《電子技術應用》
您所在的位置:首頁 > 可編程邏輯 > 解決方案 > Xilinx Zynq-7000如何保護客戶的知識產權

Xilinx Zynq-7000如何保護客戶的知識產權

2013-07-11
關鍵詞: FPGA Zynq-7000 知識產權

摘要:本文描述了Xilinx Zynq-7000如何通過芯片內嵌的AES-256解密引擎和HMAC (Keyed-hashed message authentication code)認證引擎來保護客戶的知識產權,防止拷貝、抄板等損害客戶知識產權事件的發生。

 

基本原理:

Xilinx Zynq-7000內含AES-256解密引擎和HMAC認證引擎,并支持Secure Boot啟動方式,用于保護客戶的設計(包括軟件的二進制可執行代碼,數據以及FPGA的bitstream編程文件)不被竊取和使用。

 

客戶在完成設計后,可以使用Xilinx ISE軟件為設計添加用于認證的256-bit的校驗碼,然后再用256-bit密鑰AES算法進行加密。

 

256-bit AES密鑰由客戶生成,保存在FPGA內部,不能被外部讀取。

 

啟動時,Zynq-7000首先執行芯片內部ROM中的代碼。BOOTROM代碼首先通過AES-256解密引擎對對被保護的設計進行解密,然后通過HMAC引擎認證完整性,只有通過認證的設計才能被加載并執行。

 

對于試圖通過“抄板”竊取知識產權的行為,因為缺少和FLASH內容相對應的AES密鑰,FLASH中內容將不會被加載并執行。256-bit AES密鑰對應的組合達到1.15×1077種,可以充分保證客戶知識產權的安全。

 

Xilinx Zynq-7000內含的硬件安全引擎的特點:

 

1. HMAC硬件認證引擎

  • 在內層保護客戶設計不被非法篡改,保證客戶設計的完整性。
  • 使用美國國家標準技術研究所的SHA256 FIPS PUB-182-2算法和HMAC FIPS PUB-198 算法,這些算法由美國國家標準技術研究所(National Institute of Standards and Technology, NIST)提供

http://csrc.nist.gov/publications/fips/fips180-2/fips180-2withchangenotice.pdf

http://csrc.nist.gov/publications/fips/fips198-1/FIPS-198-1_final.pdf

  • HMAC簽名保存在Boot Image中。

 

2. AES-256硬件解密引擎

  • 在外層保護客戶設計不被反向工程,不被分析破解,不被拷貝。
  • 密鑰保存在片上的eFuse或者BBRAM(battery-backed RAM),不能被JTAG或者FPGA邏輯讀取。eFuse僅支持一次可編程,掉電內容不丟失。BBRAM可支持反復編程,但是掉電內容丟失,因此需要外接電池。
  • AES算法是美國國家標準技術研究所(National Institute of Standards and Technology, NIST)和美國商務部的正式標準(http://csrc.nist.gov/publications/fips/fips197/fips-197.pdf )。Xilinx支持最高安全等級的256-bit密鑰加解密方式。

 

通過Xilinx ISE保護客戶設計

Xilinx SDK用于生成Boot Image的工具支持SHA-256算法校驗碼生成和AES-256算法加密:

1. 啟動Xilinx SDK

2. 點擊Xilinx Tools->Create Boot Image,SDK彈出如下窗口

 

1.png

 

3. 在Tab Basic里面配置好輸入的文件位置和生成的image的位置后,在Tab Advanced里面可以配置是否加密、密鑰的存放位置以及密鑰等內容:

 

2.png

 

在生成的Boot Image里面,偏移量0x28位置的內容決定了Boot Image是否加密:

 

Boot Image Header 0x028位置的內容

描述

0xA5C3C5A3

密鑰保存在eFuse中

0x3A5C3C5A

密鑰保存在BBRAM中

其他值

Boot Image未加密

 

Boot Image的文件頭和分區頭不參與加密,被加密的只有各個分區的數據。Boot Image的格式如下圖所示:

 

3.png

 

注意:

如果選擇加密Boot Image,將對所有分區(Partition)的數據進行加密。

Zynq-7000的啟動過程

Zynq-7000上電后首先執行芯片內部BootRom中的代碼。BootRom中的代碼由Xilinx開發并保證安全;代碼保存在只讀存儲器中,用戶無法修改。

 

BootRom支持三種啟動模式:

  • Secure, encrypted image, master mode
  • Non-secure master mode
  • Non-secure slave mode via JTAG

 

BootRom通過Boot Image文件頭0x28位置的內容判斷Boot Image是否加密,代碼執行流程如下:

 

4.png

 

注意:

在Secure Boot Mode下,Boot Rom不會使能JTAG接口,這時無法通過JTAG讀取Zynq-7000內部的信息,無論是軟件二進制可執行代碼,AES密鑰,還是FPGA的配置信息。

 

Boot Image只有在認證了FSBL(First Stage Boot Loader)的完整性后,才會認為它是安全的,并將控制權移交給FSBL代碼。 FSBL需要加載的Second Stage Boot Loader, 操作系統和應用可以是明文的,也可以是加密的。 一般不建議客戶使用明文的PS (Processing System) Image。如果必須要這樣做,需要充分考慮系統級別的安全性。如果這些內容是加密的,系統不允許切換AES密鑰。

 

Secure Boot Mode僅限于NOR, NAND, SDIO, 和Quad-SPI flash,不支持JTAG或任何其他對外接口。

 

密鑰的管理

256-bit AES密鑰可以由用戶指定,用Xilinx BitGen工具生成加密的bitstream,也可以由工具生成隨機密鑰。

 

AES密鑰由Xilinx iMPACT軟件通過JTAG寫入Zynq-7000芯片中。

 

寫入AES密鑰時,所有FPGA中的存儲器(密鑰存儲器和配置存儲器)都會被清空。密鑰寫入后,沒有任何辦法可以重新讀出寫入的密鑰,也不可能在不清空全部存儲器的情況下改寫密鑰。

 

當采用BBRAM保存密鑰時,需要在VCCBATT上外接電池,確保系統掉電的情況下BBRAM中的內容不會丟失。系統正常工作時,由VCCAUX對BBRAM供電,而不會使用VCCBATT上的電池供電。當系統掉電時,VCCBATT需要的電流很小(nA級別),一塊手表紐扣電池可以使用很長時間。

其他Zynq-7000的安全要點

除了上面的內容,Xilinx還充分考慮了其他各種復雜情況下的如何保證用戶知識產權的安全。

 

BootROM檢測到Boot Image未加密后,進入非安全狀態。AES解密引擎和HMAC認證引擎被關閉,只有上電復位才能使能它們。沒有任何機制可以從非安全狀態轉換到安全狀態(除了上電復位)。如果在加載未加密數據后試圖加載加密數據,將導致系統鎖定,只有重新上電后才能復位。

 

當PS或者PL檢測到以下非法狀態時,將清空OCM,系統緩存,復位PL,然后PS進入鎖定狀態。只有重新上電復位才能清楚系統鎖定狀態:

  • Non-secure boot and eFuse secure boot set
  • PS DAP enabled and JTAG chain disable eFuse set
  • SEU error tracking has been enabled in the PS and the PL reports an SEU error
  • A discrepancy in the redundant AES enable logic
  • Software sets the FORCE_RST bit of the Device Configuration Control register

 

Xilinx Zynq-7000 BootRom支持fall-back功能:在當前的Boot Image不可用的情況下,會搜索并運行golden image。在這種情況下,系統要求golden image的加密狀態和FSBL的加密狀態是一致的,即:如果FSBL是加密的,golden image必須也是加密的;如果FSBL未加密,golden image必須也是不加密的。

 

在secure boot模式下,PS DAP和PL TAP控制器被關閉,這樣排除了通過JTAG訪問芯片內部的可能。

 

PS的DAP控制器可以通過eFuse的JTAG CHAIN DISABLE永久關閉。在生成PL bitstream時,可以配置DISABLE_JTAG選項(see UG628, Command Line Tools User Guide for more information)

,禁止通過JTAG訪問PL。

 

 

小結

通過以上的分析,我們可以看到Xilinx Zynq-7000提供了充分的安全措施,來保證客戶的知識產權和設計的安全性,是客戶設計的重要選擇。

 

 

參考文獻:

UG585, Zynq-7000 EPP Technical Reference Manual

UG470, 7 Series FPGAs Configuration User Guide

 

本站內容除特別聲明的原創文章之外,轉載內容只為傳遞更多信息,并不代表本網站贊同其觀點。轉載的所有的文章、圖片、音/視頻文件等資料的版權歸版權所有權人所有。本站采用的非本站原創文章及圖片等內容無法一一聯系確認版權者。如涉及作品內容、版權和其它問題,請及時通過電子郵件或電話通知我們,以便迅速采取適當措施,避免給雙方造成不必要的經濟損失。聯系電話:010-82306118;郵箱:aet@chinaaet.com。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
亚洲最新视频在线播放| 久久婷婷亚洲| 亚洲国产精品www| 午夜精品久久久99热福利| 中国av一区| 99在线|亚洲一区二区| 亚洲国产精品尤物yw在线观看| 国语对白精品一区二区| 国产精自产拍久久久久久| 国产精品麻豆成人av电影艾秋| 欧美日韩另类视频| 欧美另类综合| 欧美精品999| 欧美日韩精品一区视频| 欧美三级欧美一级| 国产精品r级在线| 国产精品乱看| 国产日产亚洲精品| 国产一区二区三区免费不卡| 国产在线观看精品一区二区三区| 国产午夜精品全部视频播放| 国产亚洲精品一区二555| 国模套图日韩精品一区二区| 一区精品在线| 最新成人av在线| 亚洲美女视频在线观看| 一区二区精品在线观看| 亚洲视频在线视频| 欧美一区综合| 亚洲天堂av高清| 亚洲午夜在线| 欧美一区2区视频在线观看 | 欧美三日本三级少妇三99| 欧美丝袜一区二区| 国产精品视频精品视频| 欧美性jizz18性欧美| 国产麻豆成人精品| 精品91久久久久| 亚洲黄色在线| 一本色道久久88综合日韩精品| 亚洲少妇最新在线视频| 欧美一级视频一区二区| 亚洲日本va午夜在线影院| 国产精品99久久久久久www| 亚洲一区二区在线观看视频| 性伦欧美刺激片在线观看| 久久久最新网址| 美女999久久久精品视频| 欧美日韩精品高清| 国产精品大片wwwwww| 国模精品一区二区三区色天香| 1000精品久久久久久久久| 亚洲靠逼com| 欧美一区二区黄色| av成人国产| 久久国产精品久久久久久| 欧美大色视频| 国产精品嫩草影院av蜜臀| 激情文学综合丁香| 一本大道久久精品懂色aⅴ| 欧美影院视频| 一区二区三区视频在线播放| 久久精品成人一区二区三区| 欧美激情在线播放| 国产视频久久网| 亚洲精品久久久蜜桃| 欧美一区二区高清在线观看| 一本色道久久88综合日韩精品| 久久精品欧美日韩| 在线日韩中文字幕| 亚洲午夜电影网| 亚洲人成网站色ww在线| 午夜精品网站| 欧美精品观看| 国内精品久久久| 一区二区三区免费观看| 久久精品一区四区| 99国产精品国产精品久久| 亚洲与欧洲av电影| 久久国产主播精品| 欧美日韩国产成人在线免费| 韩日视频一区| 亚洲视频网站在线观看| 欧美日韩一区二区三区四区在线观看| 国产精品久久久久久久久久直播| 国产一二三精品| 亚洲午夜精品一区二区| 亚洲精品一区中文| 久久激情视频| 欧美久久婷婷综合色| 黄色一区二区在线| 香蕉久久夜色精品国产使用方法 | 欧美大胆成人| 国产自产高清不卡| 亚洲手机在线| 一本色道久久综合一区| 欧美成人官网二区| 国产主播一区二区| 午夜精品福利电影| 午夜免费日韩视频| 国产精品99一区二区| 亚洲免费福利视频| 亚洲蜜桃精久久久久久久| 久热精品视频在线免费观看| 国产亚洲激情| 亚洲综合清纯丝袜自拍| 亚洲欧美日韩成人| 国产精品久久国产精品99gif | 欧美视频一区二区三区四区| 亚洲日本成人网| 亚洲日本va午夜在线电影| 每日更新成人在线视频| 激情久久久久| 欧美一区二区三区免费观看视频 | 一本色道**综合亚洲精品蜜桃冫 | 日韩视频一区二区三区在线播放| 亚洲精品在线看| 欧美韩日一区二区三区| 亚洲国产美女精品久久久久∴| 亚洲黑丝一区二区| 欧美91福利在线观看| 在线观看国产欧美| 亚洲欧洲一区二区三区| 欧美高清视频一二三区| 最新国产成人av网站网址麻豆| 亚洲精选久久| 欧美日韩国产首页在线观看| 亚洲精品永久免费精品| 一本久久青青| 国产精品草莓在线免费观看| 亚洲图片欧美一区| 午夜精品久久久久久久久久久| 国产精品一二| 欧美一区二区三区的| 巨乳诱惑日韩免费av| 亚洲国产mv| 一区二区高清在线| 国产精品日韩欧美一区| 香蕉久久a毛片| 麻豆精品网站| 亚洲人成人一区二区三区| 中国女人久久久| 国产精品久久久久av| 亚洲免费在线观看| 久久视频国产精品免费视频在线| 永久免费毛片在线播放不卡| 日韩午夜高潮| 国产精品乱码人人做人人爱| 欧美一区二区精品久久911| 嫩草成人www欧美| 亚洲免费观看| 欧美一区二区三区的| 韩国一区二区三区美女美女秀| 亚洲欧洲另类国产综合| 欧美天天视频| 亚洲成人自拍视频| 欧美日韩国产三级| 午夜精品亚洲一区二区三区嫩草| 免费成人黄色av| 一区二区精品在线观看| 久久精品国产精品亚洲| 亚洲激精日韩激精欧美精品| 亚洲一区二区在线免费观看视频| 国产精品在线看| 亚洲精选91| 国产欧美一区二区精品秋霞影院 | 国产精品毛片在线| 久久精品免费电影| 欧美三级不卡| 亚洲第一区中文99精品| 欧美特黄视频| 亚洲高清在线视频| 国产精品久久久久久久久免费| 欧美中文字幕视频| 欧美婷婷在线| 亚洲国产视频a| 国产精品黄色| 亚洲激情另类| 国产免费亚洲高清| 999在线观看精品免费不卡网站| 国产精品毛片大码女人| 亚洲肉体裸体xxxx137| 国产伦精品一区二区三区高清版| 亚洲成人在线视频播放 | 亚洲欧洲一区二区三区在线观看 | 国产精品网站一区| 亚洲精品一线二线三线无人区| 欧美三级视频| 91久久线看在观草草青青| 国产乱肥老妇国产一区二 | 久久先锋影音| 亚洲视频axxx| 欧美成人一品| 欧美在线观看你懂的| 欧美午夜视频网站| 亚洲精品乱码久久久久久蜜桃麻豆| 国产女人精品视频| 中日韩美女免费视频网址在线观看 | 久久精品麻豆| 国产女人18毛片水18精品|