一种电子签名和高速流加密二合一的芯片的制作方法

文档序号:6453187阅读:407来源:国知局
专利名称:一种电子签名和高速流加密二合一的芯片的制作方法
技术领域
本实用新型涉及SOC集成电路设计领域,尤其是一种电子签名和高速流加密二合一的芯片。
背景技术
现在的用于安全方面的加密芯片,如USB Key,包含常用的加密算法如RSA,AES,DES以及国密算法SM1,SM2,SSF33,SMS4等,和其它设备通信的接口包括USB、I2C、SPI、UART。一般都是通过USB接口和PC连接,但仅限于和PC交互,如果做为其他芯片的协处理器,由于接口速度限制和加密速度限制,只能达到500Kbytes/S,很难达到应用要求。而专门的协处理器芯片,加解密速度比较快,但是不带签名算法,因此在某些要求签名算法的场合没法应用。鉴于目前对于高速加密协处理器的要求,本方案在带电子签名算法芯片的基础上集成高速FIFO,通过并口方式和外设交互,可以实现高速加密,对称加密速度达到15Mbytes/S,远远满足应用要求。

实用新型内容本实用新型的目的正是要解决上述技术存在的不足,而提供一种用于安全领域数据高速加密的电子签名和高速流加密二合一的芯片。本实用新型解决其技术问题采用的技术方案这种电子签名和高速流加密二合一的芯片,该系统由控制单元、高速FIFO、并口、真随机数发生器及加解密模块组成,并口通过高速FIFO与控制单元相连接,真随机数发生器及加解密模块分别与控制单元相连接。所述控制单元为该系统的控制中心,控制整个流程的执行。控制高速FIFO接收流数据,调用真随机数发生器获得随机数,启动加解密模块进行加解密运算,控制高速FIFO发送加解密流数据。在具体实现中,该模块一般通过软件实现。所述高速FIFO是一个异步并口从控制器,内嵌FIFO缓冲区,FIFO大小根据速度要求可以设置,用于对并口和控制单元数据交互的缓冲,通过此缓冲区,可以大大提高数据的传输速度。所述并口为与外设交互单元,为异步并口的主接口,并口实现和开发比较简单、通用,设备兼容性好,同时并口的速度比较快。数据线宽度可以设置8到32位。所述真随机数发生器用于产生随机的数据,供加解密模块产生对称加密密钥,也用于产生电子签名用到的RSA、ECC等非对称加密算法的密钥。所述的加解密模块是一个用通常方法设计的用于实现一种或多种加解密算法的模块,支持对称加密和非对称加密,对称加密包括并不仅限于DES、AES、SMU SSF33、SMS4、SM6,非对称加密包括并不仅限于RSA、ECC、SM2。所述的高速FIFO和并口的接口采用标准的并口总线,并用中断标志来判断内部FIFO的空满状态。[0013]具体实现方法I、系统开始运行,并口通过通用并口总线向高速FIFO发送写FIFO总线命令(CS=0,WE = O, OE = I),并口判断高速FIFO回发的接收FIF0(RX_FIF0)满中断标志(RX_INT),决定是否继续发送写FIFO命令;2、控制单元读取高速FIFO中接收FIFO的数据,作为加解密的源操作数。3、根据命令调用加解密模块来执行加解密操作,如果命令要求随机数参与,则还会调用真随机数发生器来产生要求的随机数。4、加解密完成后,将加解密的结果写入到高速FIFO的发送FIFO,控制单元接收高速FIFO回发的发送FIF0(TX_FIF0)满中断标志(TX_INT),决定是否继续写发送FIFO ;5、并口向高速FIFO发送读FIFO总线命令(CS = O, WE = I, OE = 0),读取高速FIFO中发送FIFO(TX_FIF0)的数据,该数据即为加解密的结果。·[0019]6、重复步骤I至步骤5,直至加解密模块完成所有数据的加解密运算。本实用新型有益的效果是实现高速流加密,实现电子签名功能,并且二者统一到一起。l.USB Key方式和协处理器方式二合一的芯片;2.通过高速FIFO加并口的方式实现高速协处理器方式。3.支持并不仅限于RSA、ECC、SM2等非对称算法。4.支持并不仅限于DES、AES、SM1、SSF33、SMS4、SM6等对称加密算法;5.对称加密算法采用加速器实现,可以达到高速执行。

图I为系统结构框图;图2为高速FIFO和并口的接口示意图;图3为SoC系统结构示意图;图4为典型的USB Key的实现框图。
具体实施方式
以下结合附图和实施例对本实用新型作进一步说明系统结构如图I所示,本发明所述系统由控制单元I、高速FIF02、并口 3、真随机数发生器4及加解密模块5组成,并口 3通过高速FIF02与控制单元I相连接,真随机数发生器4及加解密模块5分别与控制单元I相连接;其中控制单元I用于控制高速FIF02接收流数据,调用真随机数发生器4获得随机数,启动加解密模块5进行加解密运算,控制高速FIF02发送加解密流数据;真随机数发生器4用于产生随机的数据,供加解密模块I产生对称加密密钥,也用于产生电子签名用到的RSA、ECC等非对称加密算法的密钥。所述高速FIF02是一个异步并口从控制器,内嵌FIFO缓冲区,FIFO大小根据速度要求可以设置,用于对并口和控制单元数据交互的缓冲,通过此缓冲区,可以大大提高数据的传输速度。所述并口 3为与外设交互单元,为异步并口的主接口,并口实现和开发比较简单、通用,设备兼容性好,同时并口的速度比较快。数据线宽度可以设置8到32位。所述的加解密模块是一个用通常方法设计的用于实现一种或多种加解密算法的模块,支持对称加密和非对称加密,对称加密包括并不仅限于DES、AES、SMI、SSF33、SMS4、SM6,非对称加密包括并不仅限于RSA、ECC、SM2。[0027]如图3所示的一个具体的SoC系统该系统包含了一个32位的RISC处理器⑴,该处理器内部包括JTAG、定时器电路及中断控制单元,通过指令通道和数据通道同其它模块通信。内部资源包括10KBR0M(2)、12KBRAM(3),并且通过BVCI总线仲裁(4)连接外设。该SoC系统内部包含128KBFlash(6)和256B OTP (7),Flash通过带MPU功能EFC (19)进行访问。其它外设包括 UARTO (8),SPIO (9),I2C0 (10),USB (11),SQI (14),系统控制模块 SCM (15)包括LD0,晶振,PLL和FD频率探测模块。加解密引擎包括对称加解密引擎(17)和非对称加解密引擎(18),真随机数发生器(16)用于产生密钥和对通信链路进行加密。为了支持协处理器模式,提供高速FIFO (12)接口和并口(13).在该图所示的SoC系统中,每个模块都有中断信号与处理器模块(I)相连;处理器模块可以调用任意的资源,通过高速FIFO和并口可以高速和外部设备进行数据交互,并口采用8位数据线,系统跑在96MHZ的情况下,数据吞吐可以达到48MBytes。对称加解密引擎支持AES,DES, SMI, SSF33等加密算法,通过硬件加速,模块加解密速度可以达到15MBytes以上。非对称加解密引擎支持RSA、SM2、ECC等,并都通过硬件加速。COS存放在带MPU保护功能的内部Flash上,通过FD频率检测,抗SPA,DPA攻击等手段保护内部程序和数据的安全。所述的高速FIFO和并口的接口采用标准的并口总线,并用中断标志来判断内部FIFO的空满状态。为了减小封装,在速度满足要求的情况下,高速FIFO和并口设计了 8位数据线。数据吞吐可以达到48MBytes。此SOC可以作为普通的USB Key芯片进行使用,也可以通过高速FIFO作为协处理器使用。作为USB Key使用时,一个典型的USB Key的实现框图如图4所示此USB需要实现一套COS系统,COS系统包括如下模块数据通信(I)实现数据的发送接收,封包和解包的过程。任务解析⑵根据收到的命令和数据,分解任务并调用相应的模块来处理。加解密模块(3)调用加解密算法执行对应的加解密操作。安全模块(4)用于对一些攻击行为的防御处理,包括防频率探测,抗SPA\DPA攻击
坐寸ο权限控制模块(5)对一些命令的操作进行权限分析,只有符合对应权限的操作才被允许。文件系统模块(6)主要对数据的存放按特定的组织形式进行存储。USB (7)复杂和PC端进行通信交互等。当作为些处理器工作时,具体的实施步骤如下I、系统开始运行,并口(13)通过通用8位并口总线向高速FIFO(12)发送写FIFO总线命令(CS = 0,WE = 0,OE = 1),并口 (13)判断高速FIFO(12)回发的接收FIFO(RX_FIFO)满中断标志(RX_INT),决定是否继续发送写FIFO命令;2、内核(I)读取高速FIF0(12)中接收FIFO的数据,作为加解密的源操作数。3、根据命令调用对应的对称加密引擎(17)和非对称加密引擎(18)来执行加解密操作,如果命令要求随机数参与,则还会调用真随机数发生器(16)来产生要求的随机数。4、加解密完成后,将加解密的结果写入到高速FIF0(12)的发送FIFO,内核(I)接收高速FIF0(12)回发的发送FIF0(TX_FIF0)满中断标志(TX_INT),决定是否继续写发送FIFO ;5、并口 (13)向高速 FIF0(12)发送读 FIFO 总线命令(CS = O, WE = 1,OE = O),读取高速FIF0(12)中发送FIFO(TX_FIF0)的数据,该数据即为加解密的结果。6、重复步骤I至步骤5,直至协处理器完成所有数据的加解密运算。术语解释COS :片上操作系统FD :频率探测MPU :存储保护单元。除上述实施例外,本实用新型还可以有其他实施方式。凡采用等同替换或等效变·换形成的技术方案,均落在本实用新型要求的保护范围。
权利要求1.一种电子签名和高速流加密二合一的芯片,其特征在于该系统由控制单元(I)、高速FIFO (2)、并口(3)、真随机数发生器(4)及加解密模块(5)组成,并口(3)通过高速FIFO(2)与控制单元(I)相连接,真随机数发生器(4)及加解密模块(5)分别与控制单元(I)相连接;其中控制单元(I)用于控制高速FIFO (2)接收流数据,调用真随机数发生器(4)获得随机数,启动加解密模块(5)进行加解密运算,控制高速FIFO (2)发送加解密流数据;真随机数发生器(4)用于产生随机的数据,供加解密模块(I)产生对称加密密钥。
2.根据权利要求I所述的电子签名和高速流加密二合一的芯片,其特征在于所述高速FIFO (2)是一个异步并口从控制器,内嵌FIFO缓冲区,用于对并口和控制单元数据交互的缓冲。
3.根据权利要求I所述的电子签名和高速流加密二合一的芯片,其特征在于所述并口(3)为与外设交互单元,为异步并口的主接口。
4.根据权利要求I所述的电子签名和高速流加密二合一的芯片,其特征在于所述的高速FIFO (2)和并口(3)的接口采用标准的并口总线。
专利摘要本实用新型涉及一种电子签名和高速流加密二合一的芯片,该系统由控制单元、高速FIFO、并口、真随机数发生器及加解密模块组成,并口通过高速FIFO与控制单元相连接,真随机数发生器及加解密模块分别与控制单元相连接;其中控制单元用于控制高速FIFO接收流数据,调用真随机数发生器获得随机数,启动加解密模块进行加解密运算,控制高速FIFO发送加解密流数据;真随机数发生器用于产生随机的数据,供加解密模块产生对称加密密钥。本实用新型有益的效果是实现高速流加密,实现电子签名功能,并且二者统一到一起。
文档编号G06F21/72GK202711262SQ201120519659
公开日2013年1月30日 申请日期2011年12月13日 优先权日2011年12月13日
发明者贺晓明, 徐功益, 马震伟, 邱柏云 申请人:杭州晟元芯片技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1