專利名稱:一種電子簽名和高速流加密二合一的芯片的制作方法
技術(shù)領(lǐng)域:
本實用新型涉及SOC集成電路設(shè)計領(lǐng)域,尤其是一種電子簽名和高速流加密二合一的芯片。
背景技術(shù):
現(xiàn)在的用于安全方面的加密芯片,如USB Key,包含常用的加密算法如RSA,AES,DES以及國密算法SM1,SM2,SSF33,SMS4等,和其它設(shè)備通信的接口包括USB、I2C、SPI、UART。一般都是通過USB接口和PC連接,但僅限于和PC交互,如果做為其他芯片的協(xié)處理器,由于接口速度限制和加密速度限制,只能達(dá)到500Kbytes/S,很難達(dá)到應(yīng)用要求。而專門的協(xié)處理器芯片,加解密速度比較快,但是不帶簽名算法,因此在某些要求簽名算法的場合沒法應(yīng)用。鑒于目前對于高速加密協(xié)處理器的要求,本方案在帶電子簽名算法芯片的基礎(chǔ)上集成高速FIFO,通過并口方式和外設(shè)交互,可以實現(xiàn)高速加密,對稱加密速度達(dá)到15Mbytes/S,遠(yuǎn)遠(yuǎn)滿足應(yīng)用要求。
實用新型內(nèi)容本實用新型的目的正是要解決上述技術(shù)存在的不足,而提供一種用于安全領(lǐng)域數(shù)據(jù)高速加密的電子簽名和高速流加密二合一的芯片。本實用新型解決其技術(shù)問題采用的技術(shù)方案這種電子簽名和高速流加密二合一的芯片,該系統(tǒng)由控制單元、高速FIFO、并口、真隨機(jī)數(shù)發(fā)生器及加解密模塊組成,并口通過高速FIFO與控制單元相連接,真隨機(jī)數(shù)發(fā)生器及加解密模塊分別與控制單元相連接。所述控制單元為該系統(tǒng)的控制中心,控制整個流程的執(zhí)行??刂聘咚貴IFO接收流數(shù)據(jù),調(diào)用真隨機(jī)數(shù)發(fā)生器獲得隨機(jī)數(shù),啟動加解密模塊進(jìn)行加解密運(yùn)算,控制高速FIFO發(fā)送加解密流數(shù)據(jù)。在具體實現(xiàn)中,該模塊一般通過軟件實現(xiàn)。所述高速FIFO是一個異步并口從控制器,內(nèi)嵌FIFO緩沖區(qū),F(xiàn)IFO大小根據(jù)速度要求可以設(shè)置,用于對并口和控制單元數(shù)據(jù)交互的緩沖,通過此緩沖區(qū),可以大大提高數(shù)據(jù)的傳輸速度。所述并口為與外設(shè)交互單元,為異步并口的主接口,并口實現(xiàn)和開發(fā)比較簡單、通用,設(shè)備兼容性好,同時并口的速度比較快。數(shù)據(jù)線寬度可以設(shè)置8到32位。所述真隨機(jī)數(shù)發(fā)生器用于產(chǎn)生隨機(jī)的數(shù)據(jù),供加解密模塊產(chǎn)生對稱加密密鑰,也用于產(chǎn)生電子簽名用到的RSA、ECC等非對稱加密算法的密鑰。所述的加解密模塊是一個用通常方法設(shè)計的用于實現(xiàn)一種或多種加解密算法的模塊,支持對稱加密和非對稱加密,對稱加密包括并不僅限于DES、AES、SMU SSF33、SMS4、SM6,非對稱加密包括并不僅限于RSA、ECC、SM2。所述的高速FIFO和并口的接口采用標(biāo)準(zhǔn)的并口總線,并用中斷標(biāo)志來判斷內(nèi)部FIFO的空滿狀態(tài)。[0013]具體實現(xiàn)方法I、系統(tǒng)開始運(yùn)行,并口通過通用并口總線向高速FIFO發(fā)送寫FIFO總線命令(CS=0,WE = O, OE = I),并口判斷高速FIFO回發(fā)的接收FIF0(RX_FIF0)滿中斷標(biāo)志(RX_INT),決定是否繼續(xù)發(fā)送寫FIFO命令;2、控制單元讀取高速FIFO中接收FIFO的數(shù)據(jù),作為加解密的源操作數(shù)。3、根據(jù)命令調(diào)用加解密模塊來執(zhí)行加解密操作,如果命令要求隨機(jī)數(shù)參與,則還會調(diào)用真隨機(jī)數(shù)發(fā)生器來產(chǎn)生要求的隨機(jī)數(shù)。4、加解密完成后,將加解密的結(jié)果寫入到高速FIFO的發(fā)送FIFO,控制單元接收高速FIFO回發(fā)的發(fā)送FIF0(TX_FIF0)滿中斷標(biāo)志(TX_INT),決定是否繼續(xù)寫發(fā)送FIFO ;5、并口向高速FIFO發(fā)送讀FIFO總線命令(CS = O, WE = I, OE = 0),讀取高速FIFO中發(fā)送FIFO(TX_FIF0)的數(shù)據(jù),該數(shù)據(jù)即為加解密的結(jié)果?!0019]6、重復(fù)步驟I至步驟5,直至加解密模塊完成所有數(shù)據(jù)的加解密運(yùn)算。本實用新型有益的效果是實現(xiàn)高速流加密,實現(xiàn)電子簽名功能,并且二者統(tǒng)一到一起。l.USB Key方式和協(xié)處理器方式二合一的芯片;2.通過高速FIFO加并口的方式實現(xiàn)高速協(xié)處理器方式。3.支持并不僅限于RSA、ECC、SM2等非對稱算法。4.支持并不僅限于DES、AES、SM1、SSF33、SMS4、SM6等對稱加密算法;5.對稱加密算法采用加速器實現(xiàn),可以達(dá)到高速執(zhí)行。
圖I為系統(tǒng)結(jié)構(gòu)框圖;圖2為高速FIFO和并口的接口示意圖;圖3為SoC系統(tǒng)結(jié)構(gòu)示意圖;圖4為典型的USB Key的實現(xiàn)框圖。
具體實施方式
以下結(jié)合附圖和實施例對本實用新型作進(jìn)一步說明系統(tǒng)結(jié)構(gòu)如圖I所示,本發(fā)明所述系統(tǒng)由控制單元I、高速FIF02、并口 3、真隨機(jī)數(shù)發(fā)生器4及加解密模塊5組成,并口 3通過高速FIF02與控制單元I相連接,真隨機(jī)數(shù)發(fā)生器4及加解密模塊5分別與控制單元I相連接;其中控制單元I用于控制高速FIF02接收流數(shù)據(jù),調(diào)用真隨機(jī)數(shù)發(fā)生器4獲得隨機(jī)數(shù),啟動加解密模塊5進(jìn)行加解密運(yùn)算,控制高速FIF02發(fā)送加解密流數(shù)據(jù);真隨機(jī)數(shù)發(fā)生器4用于產(chǎn)生隨機(jī)的數(shù)據(jù),供加解密模塊I產(chǎn)生對稱加密密鑰,也用于產(chǎn)生電子簽名用到的RSA、ECC等非對稱加密算法的密鑰。所述高速FIF02是一個異步并口從控制器,內(nèi)嵌FIFO緩沖區(qū),F(xiàn)IFO大小根據(jù)速度要求可以設(shè)置,用于對并口和控制單元數(shù)據(jù)交互的緩沖,通過此緩沖區(qū),可以大大提高數(shù)據(jù)的傳輸速度。所述并口 3為與外設(shè)交互單元,為異步并口的主接口,并口實現(xiàn)和開發(fā)比較簡單、通用,設(shè)備兼容性好,同時并口的速度比較快。數(shù)據(jù)線寬度可以設(shè)置8到32位。所述的加解密模塊是一個用通常方法設(shè)計的用于實現(xiàn)一種或多種加解密算法的模塊,支持對稱加密和非對稱加密,對稱加密包括并不僅限于DES、AES、SMI、SSF33、SMS4、SM6,非對稱加密包括并不僅限于RSA、ECC、SM2。[0027]如圖3所示的一個具體的SoC系統(tǒng)該系統(tǒng)包含了一個32位的RISC處理器⑴,該處理器內(nèi)部包括JTAG、定時器電路及中斷控制單元,通過指令通道和數(shù)據(jù)通道同其它模塊通信。內(nèi)部資源包括10KBR0M(2)、12KBRAM(3),并且通過BVCI總線仲裁(4)連接外設(shè)。該SoC系統(tǒng)內(nèi)部包含128KBFlash(6)和256B OTP (7),F(xiàn)lash通過帶MPU功能EFC (19)進(jìn)行訪問。其它外設(shè)包括 UARTO (8),SPIO (9),I2C0 (10),USB (11),SQI (14),系統(tǒng)控制模塊 SCM (15)包括LD0,晶振,PLL和FD頻率探測模塊。加解密引擎包括對稱加解密引擎(17)和非對稱加解密引擎(18),真隨機(jī)數(shù)發(fā)生器(16)用于產(chǎn)生密鑰和對通信鏈路進(jìn)行加密。為了支持協(xié)處理器模式,提供高速FIFO (12)接口和并口(13).在該圖所示的SoC系統(tǒng)中,每個模塊都有中斷信號與處理器模塊(I)相連;處理器模塊可以調(diào)用任意的資源,通過高速FIFO和并口可以高速和外部設(shè)備進(jìn)行數(shù)據(jù)交互,并口采用8位數(shù)據(jù)線,系統(tǒng)跑在96MHZ的情況下,數(shù)據(jù)吞吐可以達(dá)到48MBytes。對稱加解密引擎支持AES,DES, SMI, SSF33等加密算法,通過硬件加速,模塊加解密速度可以達(dá)到15MBytes以上。非對稱加解密引擎支持RSA、SM2、ECC等,并都通過硬件加速。COS存放在帶MPU保護(hù)功能的內(nèi)部Flash上,通過FD頻率檢測,抗SPA,DPA攻擊等手段保護(hù)內(nèi)部程序和數(shù)據(jù)的安全。所述的高速FIFO和并口的接口采用標(biāo)準(zhǔn)的并口總線,并用中斷標(biāo)志來判斷內(nèi)部FIFO的空滿狀態(tài)。為了減小封裝,在速度滿足要求的情況下,高速FIFO和并口設(shè)計了 8位數(shù)據(jù)線。數(shù)據(jù)吞吐可以達(dá)到48MBytes。此SOC可以作為普通的USB Key芯片進(jìn)行使用,也可以通過高速FIFO作為協(xié)處理器使用。作為USB Key使用時,一個典型的USB Key的實現(xiàn)框圖如圖4所示此USB需要實現(xiàn)一套COS系統(tǒng),COS系統(tǒng)包括如下模塊數(shù)據(jù)通信(I)實現(xiàn)數(shù)據(jù)的發(fā)送接收,封包和解包的過程。任務(wù)解析⑵根據(jù)收到的命令和數(shù)據(jù),分解任務(wù)并調(diào)用相應(yīng)的模塊來處理。加解密模塊(3)調(diào)用加解密算法執(zhí)行對應(yīng)的加解密操作。安全模塊(4)用于對一些攻擊行為的防御處理,包括防頻率探測,抗SPA\DPA攻擊
坐寸ο權(quán)限控制模塊(5)對一些命令的操作進(jìn)行權(quán)限分析,只有符合對應(yīng)權(quán)限的操作才被允許。文件系統(tǒng)模塊(6)主要對數(shù)據(jù)的存放按特定的組織形式進(jìn)行存儲。USB (7)復(fù)雜和PC端進(jìn)行通信交互等。當(dāng)作為些處理器工作時,具體的實施步驟如下I、系統(tǒng)開始運(yùn)行,并口(13)通過通用8位并口總線向高速FIFO(12)發(fā)送寫FIFO總線命令(CS = 0,WE = 0,OE = 1),并口 (13)判斷高速FIFO(12)回發(fā)的接收FIFO(RX_FIFO)滿中斷標(biāo)志(RX_INT),決定是否繼續(xù)發(fā)送寫FIFO命令;2、內(nèi)核(I)讀取高速FIF0(12)中接收FIFO的數(shù)據(jù),作為加解密的源操作數(shù)。3、根據(jù)命令調(diào)用對應(yīng)的對稱加密引擎(17)和非對稱加密引擎(18)來執(zhí)行加解密操作,如果命令要求隨機(jī)數(shù)參與,則還會調(diào)用真隨機(jī)數(shù)發(fā)生器(16)來產(chǎn)生要求的隨機(jī)數(shù)。4、加解密完成后,將加解密的結(jié)果寫入到高速FIF0(12)的發(fā)送FIFO,內(nèi)核(I)接收高速FIF0(12)回發(fā)的發(fā)送FIF0(TX_FIF0)滿中斷標(biāo)志(TX_INT),決定是否繼續(xù)寫發(fā)送FIFO ;5、并口 (13)向高速 FIF0(12)發(fā)送讀 FIFO 總線命令(CS = O, WE = 1,OE = O),讀取高速FIF0(12)中發(fā)送FIFO(TX_FIF0)的數(shù)據(jù),該數(shù)據(jù)即為加解密的結(jié)果。6、重復(fù)步驟I至步驟5,直至協(xié)處理器完成所有數(shù)據(jù)的加解密運(yùn)算。術(shù)語解釋COS :片上操作系統(tǒng)FD :頻率探測MPU :存儲保護(hù)單元。除上述實施例外,本實用新型還可以有其他實施方式。凡采用等同替換或等效變·換形成的技術(shù)方案,均落在本實用新型要求的保護(hù)范圍。
權(quán)利要求1.一種電子簽名和高速流加密二合一的芯片,其特征在于該系統(tǒng)由控制單元(I)、高速FIFO (2)、并口(3)、真隨機(jī)數(shù)發(fā)生器(4)及加解密模塊(5)組成,并口(3)通過高速FIFO(2)與控制單元(I)相連接,真隨機(jī)數(shù)發(fā)生器(4)及加解密模塊(5)分別與控制單元(I)相連接;其中控制單元(I)用于控制高速FIFO (2)接收流數(shù)據(jù),調(diào)用真隨機(jī)數(shù)發(fā)生器(4)獲得隨機(jī)數(shù),啟動加解密模塊(5)進(jìn)行加解密運(yùn)算,控制高速FIFO (2)發(fā)送加解密流數(shù)據(jù);真隨機(jī)數(shù)發(fā)生器(4)用于產(chǎn)生隨機(jī)的數(shù)據(jù),供加解密模塊(I)產(chǎn)生對稱加密密鑰。
2.根據(jù)權(quán)利要求I所述的電子簽名和高速流加密二合一的芯片,其特征在于所述高速FIFO (2)是一個異步并口從控制器,內(nèi)嵌FIFO緩沖區(qū),用于對并口和控制單元數(shù)據(jù)交互的緩沖。
3.根據(jù)權(quán)利要求I所述的電子簽名和高速流加密二合一的芯片,其特征在于所述并口(3)為與外設(shè)交互單元,為異步并口的主接口。
4.根據(jù)權(quán)利要求I所述的電子簽名和高速流加密二合一的芯片,其特征在于所述的高速FIFO (2)和并口(3)的接口采用標(biāo)準(zhǔn)的并口總線。
專利摘要本實用新型涉及一種電子簽名和高速流加密二合一的芯片,該系統(tǒng)由控制單元、高速FIFO、并口、真隨機(jī)數(shù)發(fā)生器及加解密模塊組成,并口通過高速FIFO與控制單元相連接,真隨機(jī)數(shù)發(fā)生器及加解密模塊分別與控制單元相連接;其中控制單元用于控制高速FIFO接收流數(shù)據(jù),調(diào)用真隨機(jī)數(shù)發(fā)生器獲得隨機(jī)數(shù),啟動加解密模塊進(jìn)行加解密運(yùn)算,控制高速FIFO發(fā)送加解密流數(shù)據(jù);真隨機(jī)數(shù)發(fā)生器用于產(chǎn)生隨機(jī)的數(shù)據(jù),供加解密模塊產(chǎn)生對稱加密密鑰。本實用新型有益的效果是實現(xiàn)高速流加密,實現(xiàn)電子簽名功能,并且二者統(tǒng)一到一起。
文檔編號G06F21/72GK202711262SQ201120519659
公開日2013年1月30日 申請日期2011年12月13日 優(yōu)先權(quán)日2011年12月13日
發(fā)明者賀曉明, 徐功益, 馬震偉, 邱柏云 申請人:杭州晟元芯片技術(shù)有限公司