- 相關(guān)推薦
用單片機(jī)實(shí)現(xiàn)SRAM工藝FPGA的加密應(yīng)用
摘要:首先對(duì)采用SRAM工藝的FPGA的保密性和加密方法進(jìn)行原理分析,然后提出一種實(shí)用的采用單片機(jī)產(chǎn)生長(zhǎng)偽隨機(jī)碼實(shí)現(xiàn)加密的方法,并詳細(xì)介紹具體的電路和程序。關(guān)鍵詞:靜態(tài)隨機(jī)存儲(chǔ)器(SRAM) 現(xiàn)場(chǎng)可編程門陣列(FPGA) 加密
在現(xiàn)代電子系統(tǒng)設(shè)計(jì)中,由于可編程邏輯器件的卓越性能、靈活方便的可升級(jí)特性,而得到了廣泛的應(yīng)用。由于大規(guī)模高密度可編程邏輯器件多采用SRAM工藝,要求每次上電,對(duì)FPGA器件進(jìn)行重配置,這就使得可以通過(guò)監(jiān)視配置的位數(shù)據(jù)流,進(jìn)行克隆設(shè)計(jì)。因此,在關(guān)鍵、核心設(shè)備中,必須采用加密技術(shù)保護(hù)設(shè)計(jì)者的知識(shí)產(chǎn)權(quán)。
1 基于SRAM工藝FPGA的保密性問(wèn)題
通常,采用SRAM工藝的FPGA芯片的的配置方法主要有三種:由計(jì)算機(jī)通過(guò)下載電纜配置、用專用配置芯片(如Altera公司的EPCX系列芯片)配置、采用存儲(chǔ)器加微控制器的方法配置。第一種方法適合調(diào)試設(shè)計(jì)時(shí)要用,第二種和第三種在實(shí)際產(chǎn)品中使用較多。第二種方法的優(yōu)點(diǎn)在于外圍電路非常簡(jiǎn)單,體積較小,適用于不需要頻繁升級(jí)的產(chǎn)品;第三種方法的優(yōu)點(diǎn)在于成本較低,升級(jí)性能好。
以上幾種方法在系統(tǒng)加電時(shí),都需要將配置的比特流數(shù)據(jù)按照確定的時(shí)序?qū)懭隨RAM工藝的FPGA。因此,采用一定的電路對(duì)配置FPGA的數(shù)據(jù)引腳進(jìn)行采樣,即可得到配置數(shù)據(jù)流信息。利用記錄下來(lái)的配置數(shù)據(jù)可對(duì)另一塊FPGA芯片進(jìn)行配置,就實(shí)現(xiàn)了對(duì)FPGA內(nèi)部設(shè)計(jì)電路的克隆。典型的克隆方法見(jiàn)圖1。
2 對(duì)SRAM工藝FPGA進(jìn)行有效加密的方法
由于SRAM工藝的FPGA上電時(shí)的配置數(shù)據(jù)是可以被復(fù)制的,因此單獨(dú)的一塊FPGA芯片是無(wú)法實(shí)現(xiàn)有效加密的。FPGA芯片供應(yīng)商對(duì)位數(shù)據(jù)流的定義是不公開的,因此無(wú)法通過(guò)外部的配置數(shù)據(jù)流信息推測(cè)內(nèi)部電路。也就是說(shuō),通過(guò)對(duì)FPGA配置引腳的數(shù)據(jù)進(jìn)行采樣可得到配置信息。但也不能知道內(nèi)部電路結(jié)構(gòu)。如果在配置完成后使FPGA處于非工作狀態(tài),利用另外一塊保密性較強(qiáng)的CPU產(chǎn)生密碼驗(yàn)證信息與FPGA進(jìn)行通信,僅在驗(yàn)證成功的情況下使能FPGA正常工作,則能有效地對(duì)設(shè)計(jì)進(jìn)行加密。具體電路結(jié)構(gòu)見(jiàn)圖2。
系統(tǒng)加電時(shí),由單片機(jī)對(duì)SRAM工藝的FPGA進(jìn)行配置。配置完成時(shí),F(xiàn)PGA內(nèi)部功能塊的使能端為低,不能正常工作。此時(shí),單片機(jī)判斷到配置完成后,將ASET信號(hào)置為高電平,使能FPGA內(nèi)的偽碼發(fā)生電路工作;同時(shí),單片機(jī)產(chǎn)生一個(gè)偽碼驗(yàn)證信息,在FPGA中將兩路偽碼進(jìn)行比較,兩者完全匹配時(shí),F(xiàn)PGA內(nèi)部電路正常工作,否則不能正常工作。加密電路主要利用了配置完成后處于空閑狀態(tài)的單片機(jī)和FPGA內(nèi)部分邏輯單元,沒(méi)有增加硬件成本。
[1] [2] [3] [4] [5]
【用單片機(jī)實(shí)現(xiàn)SRAM工藝FPGA的加密應(yīng)用】相關(guān)文章:
星用SRAM型FPGA加固設(shè)計(jì)方法研究04-29
SRAM型FPGA的抗SEU方法研究04-29
基于FPGA的α-β濾波器的實(shí)現(xiàn)05-02
基于FPGA的TSoverlP的設(shè)計(jì)和實(shí)現(xiàn)論文04-29
Galileo系統(tǒng)偽隨機(jī)序列生成及其FPGA實(shí)現(xiàn)05-02
基帶內(nèi)插脈沖成形濾波器的FPGA實(shí)現(xiàn)04-27
改進(jìn)裝置工藝實(shí)現(xiàn)清潔生產(chǎn)04-27
利用FPGA實(shí)現(xiàn)MMC2107與SDRAM接口設(shè)計(jì)論文12-02