您的FPGA設計方案 夠安全嗎?

        本文作者:admin       點擊: 2003-09-01 00:00
        前言:
        在投入數月之久的設計工作后,最令人害怕的莫過于辛辛苦苦的設計成果失竊。只要您運用Xilinx提供的解決方案,今后就不再需要「locks」、「fuses」、「antifuses」等防護設計,安心高枕無憂。

        在全球各界愈來愈注重安全與恐怖攻擊之際,我們不由得擔心起設計與產品的安全。您的IC防護夠安全嗎?別人是否能竊取您芯片設計內容?有沒有會被別人復制的可能?逆向工程(Reverse engineering)會不會偷取你的創意?

        以Xilinx為例,目前所有Xilinx組件(包括FPGA與CPLD)都已經搭載了健全的安全機制,因此竊取設計內容幾乎是不可能的事。Xilinx的Virtex-II Pro™ Platform FPGA中內嵌先進的Triple DES (Data Encryption Standard)安全技術,此項安全技術,并不是牙簽就能打開的祖母級大鎖能夠相提并論的,Triple DES運算法使用的安全技術正是全球金融機構每天用來交易數兆美元的保密科技。以下文章便是以Xilinx為例,示范如何保護您寶貴的專利設計,與您分享設計安全的細節。

        設計的安全

        若以設計竊賊的立場來看,世界上沒有絕對的安全。若給予足夠的時間與資源,有決心的竊賊能突破任何障礙。

        因此,我們的目標是讓破解障礙的難度提升至最高。讓防護措施提升至最周密的等級。對于絕大多數的竊賊而言,突破Xilinx的防護網幾乎是不可能的任務。為幫助您了解我們是如何辦到的,首先,我們先來看看攻擊的三種層級。

        攻擊的類型

        IBM™ 于1991年發表的一份文件中定義出三種攻擊的類型。雖然這份文件有點過時,但其內容仍具有極高的參考價值。(Abraham, D., G. Dolan, G. Double, and J. Stevens, 1991. Transaction Security System. IBM Systems Journal 30(2): 206-229.). 


        1. 第1類:擁有極少資源的外界人士或好奇份子所進行的攻擊。大多數的駭客屬于這類,他們對系統的私密內容沒有興趣,僅是希望能夠將資源占為已用。這類攻擊看似無害,但此類攻擊若將不當取得的信息在因特網上公開,就可能會造成嚴重的全球性安全威脅。

        2. 第2類:來自于能存取部份資源的知識人員。例如像大學學生以及習慣在網絡上搜尋的企業員工。但這些由不當散布的信息通常較為深奧,只對特定人士才有用處。

        3. 第3類:這類攻擊者是組織性的專業團隊,能公開破解任何防護技術。如美國的FBI、CIA、NSA、及大型商業活動或政府機構,它們擁有龐大資金進行大規模的逆向工程活動(Reverse engineering)。

        綜合這三類攻擊來看,第1類與第2類的攻擊可加以防范,一套防護完備的IC就能協助設計業者達到這項目標。不過Xilinx Virtex-II Pro FPGA還多了一套的重要架構,在防御第1類與第2類外,還能成功阻擋大多數第3類攻擊。

        可編程組件的安全性

        竊取設計內容的行為可分成兩大類—復制(cloning)與逆向工程(Reverse engineering)。復制是完全不改地重制設計內容。逆向工程是過程較復雜的偷竊,先擷取出建置在組件內的設計內容后,再進行改良、修改及掩飾的手續,讓它看起來不像是原本所竊取的內容。
        ASIC與建置固定功能的ASSP容易遭受攻擊,因為每組通孔/連結都代表真實的邏輯。入侵者可藉由打開芯片的封裝,觀察通孔并破解設計內容。有時業者會加入偽裝的邏輯來混淆攻擊者,但芯片仍舊面臨被破解的風險。一般而言,IC的內容愈固定,被破解的風險就愈高。此外,在固定內容的IC中,若您懷疑某套芯片可能被破解的風險,其它所有芯片亦可能被破解。但是可編程IC不同,若某款芯片被破解,其它芯片仍可重新程序化。

        可編程組件(FPGA與CPLD)有兩種類型:其一為非揮發組件,如反镕絲/快閃 (antifuse/flash) 組件;其二為揮發性組件,如SRAM組件。兩者有許多差異,各自有其獨特的優點。

        在安全的討論上,我們僅探討可編程及配置位的安全性。非揮發組件能維持組態位,故每次啟動時不須從外部PROM加載位數據。以往外部PROM經常造成安全上的漏洞,讓非揮發性組件占盡上風。但在2000年業界第一套安全SRAM FPGA – 支持Triple DES加密技術的Xilinx Virtex™-II Platform FPGA問市后,非揮發性組件的優勢已不復存在。

        非揮發(Nonvolatile)可編程組件

        現今廠商推出的非揮發性可編程組件(PLD),包括了FPGA與CPLD。這些組件提供測試模式,能用來觀察內部維護,藉此提升效能,并提供讀回模式,供顧客用來檢視可編程位。

        然而,在這兩種模式下的組件都有可能會被攻擊。為了預防這些攻擊,固定的安全位會透過反熔絲或快閃閘極以避免組件在生產后再被外界進行讀寫的動作。但這樣的防護措施還是有其缺點,若竊賊在一組有保護、另一組則沒有保護的兩組相同的組件中建置一個簡單的電路,再以感熱照片(如圖1所示)比較兩組組件,則可利用安全位固定的位置研判出安全位,再以高密度光源解除芯片上的安全位,讓芯片允許讀回作業。如此一來竊賊就能動用組件中所有的電路。

        隨著可編程組件體積變大,組態比特流的容量亦逐漸增加。當金鑰(key size)體積亦隨組件尺吋的改變而增加,安全位會隨之形成一種固定的模式。因此,若其中一種組件被破解的話,所有密度的組件就會被破解,這并不是危言聳聽,事實上的確如此。

        Xilinx CoolRunner™-II CPLD運用快閃技術,但卻與其它非揮發組件不同。由于CoolRunner-II CPLD的讀/寫保護位被多重金屬層層包覆,并混在編程位里面,所以被竊難度大大提高。
        安全位經過特別設計,須透過一組特定序列的訊號才能設定與清除。此外,組件加入四或五層的金屬(如圖2所示),避免上層芯片在雷射/電子刨削處理后曝露出電路內容。

        CoolRunner-II CPLD的兩項重要技術:DualEDGE及DataGATE,此兩種技術能運用雙重數據運作、及鎖定內部巨單元(macrocell)控制的輸入訊號等方式混淆竊賊視聽。此外,CoolRunner-II CPLD著名的超低功耗也讓竊賊難以在感熱照片中找到任何蛛絲馬跡。(有關CoolRunner-IIB的詳細安全信息,請參考網址www.xilinx.com/ publications/whitepapers/wp_pdf/wp170.pdf.的白皮書:CoolRunner-II CPLDs in Secure Applications)

        揮發性(Volatile)可編程組件

        在揮發性SRAM FPGA關閉電源后,組態位就會清除,故需透過外部內存儲存位數據。因此,將一顆外部PROM放置在FPGA旁邊變成一種很典型的設計。不過,就安全上來說,PROM與FPGA之間的位傳輸就變成另一個需要考量的重點。
        為解決這些問題,Xilinx在三年前將Triple DES加密技術嵌入至Virtex-II FPGA中。如今最新的Virtex-II Pro FPGA更嵌入第二代的新技術。透過這項機制,PROM儲存加密后的位數據,傳至FPGA后才會進行解密,而且系統也不允許讀回(read-back)作業。任何對FPGA竊取的動作都會讓設計內容完全清除,竊賊最多只能截取PROM與FPGA之間的傳輸內容,但得到的全都是已經Triple DES加密后的資料。

        值得信賴的安全

        極富盛名的加密機制—Triple DES,保護全球金融機構每天數百萬筆、總額高達數兆美元的交易。

        這套標準亦應用在Xilinx FPGA中,用來保護您的設計。雖然舊版DES曾被破解,但Triple DES至今仍尚未被破解。

        Triple DES是美國標準與技術研究院 (National Institute of Standards and Technology)與美國標準協會(American National Standards Institute) X9.52所規范的標準。AES (Advanced Encryption Standard)則是下一代的加密技術,預備在Triple DES被破解后成為新的加密標準。加密技術的專家研發未來新版的AES,都是為了防范全球所有駭客的攻擊。在數兆美元、數百萬筆金融交易的吸引下,Triple DES每天面對數千位駭客各式各樣的攻擊,至今仍維持嚴守防線、堅若盤石。因此Xilinx在其旗艦Virtex-II Pro 系列產品上應用Triple DES加密技術。

        Triple DES是一種對稱式加密算法,其加密與解密的金鑰(keys)是相同的。數據的安全完全依賴金鑰,和RSA或PGP依賴公開金鑰(public key)方式不同。Triple DES使用三組金鑰,并對三組金鑰重復進行加密演算以提高安全性。每組金鑰為56位,每次加密64位的數據區塊。有關Triple DES標準的詳細信息請參考網址www.itl.nist.gov/. 

        Virtex-II Pro FPGA采用Triple DES 安全機制

        Virtex-II Pro 組件在芯片中內建加密機制,負責保護組態位數據以及FPGA。您可利用一組金鑰在Xilinx軟件中對位進行加密,之后Virtex-II Pro 組件會使用同一組金鑰將流入的位數據進行解密(如圖3所示)。
        為將金鑰編寫至組件中,組件須切換至金鑰存取模式,在這個模式下系統會自動清除FPGA中的數據,包括舊金鑰以及實際的位數據。這種作法亦能防范攻擊。

        在組件根據金鑰進行加密后,即可配合加密后位進行設定。當加密后位被編寫至FPGA后,就不能進行重新設定、部份重設、或有意或無意的讀回修改等動作,連窺視也同樣不被許可。在遭竊時,FPGA的設計內容會被自動刪除(注:非加密的位數據在編寫入FPGA后,可利用金鑰進行測試與除錯)。

        金鑰置于組件角落中某個Triple DES區域里。當機板關閉電源后,系統會運用一組外部電池來儲存金鑰。任何1至4伏特的標準電池都可使用,并能維持長達15年的使用壽命。

        非揮發PLD安全位能取消組件的讀/寫能力,而Virtex-II Pro的Triple DES則透過加密標準提供真正的安全。即使Virtex-II Pro FPGA中儲存Triple DES區塊的位置被泄漏出去,就算芯片的內容沒有完全刪除,竊賊還是不能窺探金鑰,。

        對可能的竊賊來說,九層的金屬保護構成另一個防護網。若竊賊想以感熱相片找出Virtex-II Pro FPGA中的安全位則必定失敗,因為這種技術不是用硬件線路來儲存安全位。

        每套Virtex-II Pro組件皆提供六組不同的金鑰,這讓系統能支持兩組Triple DES金鑰。您可同時使用兩組金鑰進行編程。這種作法甚至能防范前述第三類的攻擊。舉例來說,若第一組金鑰已被破解,您仍可利用第二組金鑰傳送一組位,從遠程處對組件重新編程。

        此外,我們許多顧客運用這項技術發展新的經營策略與定價模式,用一組金鑰傳送位數據,以啟動低價位/低功能的服務,并利用另一組金鑰啟動高價位/多功能的服務。

        輸出之考量

        美國商業部嚴格管制各種加密的標準。由于芯片中的解密器僅能對流入的位數據進行解密,且不能作為獨立的設計區域,故Virtex-II Pro FPGA被歸類為現場可重編程邏輯組件(3A001.a.7),與所有其它FPGA相同。軟件則被歸類于ECCN# 5D002項目,除了被美國商業部禁止的國家之外,可輸出至全球各國。如此您系統中Virtex-II Pro FPGA的輸出狀態在日后皆不須修改。

        結論 

        Xilinx FPGA與CPLD為您的設計提供無與倫比的安全,協助您達成設計目標,并維持最高的設計安全性。致力保護客戶的設計,是Xilinx成為全球最大可編程邏輯組件廠商的原因之一。Xilinx公司致力提供效能最高、成本最低的解決方案,并擁有最佳的設計安全保護,讓顧客高枕無憂。

        主站蜘蛛池模板: 亚洲中文久久精品无码1 | 99久久99久久精品免费看蜜桃| 免费一级大黄特色大片| 亚洲a视频在线观看| 99国产精品永久免费视频| 亚洲成a人片在线观看中文!!!| 97精品免费视频| 亚洲人成网站日本片| 成年女人毛片免费观看97| 亚洲 欧洲 视频 伦小说| 免费黄色毛片视频| 国产亚洲综合久久| 亚洲福利中文字幕在线网址| 一级A毛片免费观看久久精品| 中文字幕亚洲无线码| 久久精品成人免费看| 亚洲精品亚洲人成在线观看麻豆| ww在线观视频免费观看| 亚洲色精品VR一区区三区| 国产在线a不卡免费视频| 国产精品玖玖美女张开腿让男人桶爽免费看 | 久久国产免费直播| 亚洲一区二区影院| 无码视频免费一区二三区| 四虎成人免费大片在线| 国产亚洲精品影视在线产品| 青青操视频在线免费观看| 777亚洲精品乱码久久久久久| 久久久久久久免费视频| 成年大片免费视频播放一级| 亚洲精品无码乱码成人| 日韩免费一区二区三区在线| 青青青视频免费观看| 亚洲网址在线观看你懂的| 日本久久久免费高清| a毛片免费全部播放完整成| 天天爽亚洲中文字幕| 亚洲高清无码专区视频| 最近免费中文在线视频| 国产亚洲精品美女久久久久久下载| 亚洲精品无码久久一线|