CN104202161B - 一种SoC密码芯片 - Google Patents

一种SoC密码芯片 Download PDF

Info

Publication number
CN104202161B
CN104202161B CN201410384614.4A CN201410384614A CN104202161B CN 104202161 B CN104202161 B CN 104202161B CN 201410384614 A CN201410384614 A CN 201410384614A CN 104202161 B CN104202161 B CN 104202161B
Authority
CN
China
Prior art keywords
unit
crypto
instruction
soc
data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201410384614.4A
Other languages
English (en)
Other versions
CN104202161A (zh
Inventor
梁智强
胡朝辉
江泽鑫
陈炯聪
黄曙
余南华
林丹生
李闯
伍晓泉
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Electric Power Research Institute of Guangdong Power Grid Co Ltd
Original Assignee
Electric Power Research Institute of Guangdong Power Grid Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Electric Power Research Institute of Guangdong Power Grid Co Ltd filed Critical Electric Power Research Institute of Guangdong Power Grid Co Ltd
Priority to CN201410384614.4A priority Critical patent/CN104202161B/zh
Publication of CN104202161A publication Critical patent/CN104202161A/zh
Application granted granted Critical
Publication of CN104202161B publication Critical patent/CN104202161B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Storage Device Security (AREA)

Abstract

本发明公开了一种SoC密码芯片,包括:CPU核、接口、非易失存储器、片内存储器、定时器、功耗管理模块、时钟复位模块、通信总线、随机数发生器和加解密模块;其中,所述随机数发生器,用于产生随机数;所述加解密模块,用于对所述SoC密码芯片接收到的目标数据根据所述随机数发生器产生的随机数进行加解密运算;本发明提供的SoC密码芯片从最底层保证了数据的安全性,不但满足了高性能、高集成度、小型化的需求,还具备对数据传输安全保护的功能,从而提高了工业控制系统的安全性。

Description

一种SoC密码芯片
技术领域
本发明适用于信息安全技术领域,涉及一种SoC密码芯片。
背景技术
片上系统(System on Chip,SoC)芯片是在单个芯片上实现数据的采集、转换、存储、处理和输入输出等多种功能,可以减小系统级产品的尺寸、降低系统级产品的成本和复杂性。随着应用领域对于集成系统产品的高性能、高集成度、小型化的需求,SoC芯片技术也在不断发展,在航空航天、移动通信、消费类电子、汽车电子、医疗电子设备等领域都得到广泛应用。此外,SoC芯片在工业控制领域也已经成为不可或缺的一部分。
但是,工业控制系统产品大多采用通用协议、通用硬件、通用软件,并且以各种方式与互联网等公共网络连接,在公共网络中容易受到病毒、木马、操作系统漏洞等网络攻击和安全威胁;另一方面,传统的工业控制系统产品几乎没有隔离功能,在实现系统开放性的同时,也降低了系统的安全性,如果工业控制系统的任一方面受到网络攻击,都极有可能造成巨大的损失。SoC芯片,为工业控制系统产品提供最底层的核心硬件支持,因此,基于芯片级的硬件解决方案成为保证信息安全最可靠的途径,然而,现有的SoC芯片的结构包括:CPU核、接口、非易失存储器、片内存储器、定时器、功耗管理模块、时钟复位模块和通信总线等模块,虽然满足了高性能、高集成度、小型化的需求,但是还不具备对数据传输安全保护的功能。
因此,目前需要本领域技术人员迫切解决的一个技术问题就是:研制出一种具有加解密功能并且满足工业级应用的SoC密码芯片,来实现对数据传输的安全保护。
发明内容
鉴于上述问题,提出了本发明以便提供一种克服上述问题或者至少部分地解决上述问题的SoC密码芯片。
依据本发明的一个方面,提供了一种SoC密码芯片,包括:
CPU核、接口、非易失存储器、片内存储器、定时器、功耗管理模块、时钟复位模块和通信总线,其特征在于,所述SoC密码芯片还包括:
随机数发生器,用于产生随机数;
加解密模块,用于对所述SoC密码芯片接收到的目标数据根据所述随机数发生器产生的随机数进行加解密运算。
在本发明提供的SoC密码芯片中,所述SoC密码芯片的加解密模块为接收到的目标数据提供身份认证、数据完整性、数据加密等安全性验证;并且所述SoC密码芯片自带随机数发生器,可以根据系统的需求产生高质量的随机数,以供芯片安全设计使用;以此SoC密码芯片研制出的工业控制系统产品从最底层保证了数据的安全性,不但满足了高性能、高集成度、小型化的需求,还具备对数据传输安全保护的功能,从而提高了工业控制系统的安全性。
上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。
附图说明
通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
图1a示出了根据本发明实施例一的一种SoC密码芯片的结构框图;
图1b示出了根据本发明实施例一的一种安全防护模块的结构框图;
图2示出了根据本发明实施例二的一种对称加解密引擎的结构框图;
图3示出了根据本发明实施例三的一种非对称加解密引擎的结构框图。
具体实施方式
为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。
实施例一
参照图1a,给出了根据本发明实施例一的一种SoC密码芯片的结构框图。
所述SoC密码芯片包括CPU核101、加解密模块102、随机数发生器103、接口105、非易失存储器106、片内存储器107、定时器108、功耗管理模块109、时钟复位模块110和通信总线111。
其中,所述CPU核101,用于对所述SoC密码芯片进行初始化和资源管理,控制和调度所述SoC密码芯片内的其它模块,用于对输入数据的协议进行解析,对各种算法中密码协议的集成、密码算法的配置与调度,以及对所述SoC密码芯片内各寄存器的设置。
本实施例中,优选的,所述CPU核具体为CK-Core处理器硬核,CK-Core是面向嵌入式系统和SoC芯片应用领域的32位高性能低功耗嵌入式CPU核,具有可扩展指令、易于集成等特点。也可选用其它型号的CPU核,本发明对此不作具体限制。
所述加解密模块102,用于对所述SoC密码芯片接收到的目标数据进行加解密运算。
所述加解密模块的加解密算法可以采用对称密码算法、非对称密码算法或哈希(Hash)密码算法等多种密码算法,所述加解密模块不但可以实现所述SoC密码芯片的加解密功能,还可以实现签名、验证功能。
所述随机数发生器103,用于为所述SoC密码芯片中的加解密运算提供随机数据。知识产权核(Intellectual Property core,IP核),是那些己验证的、可重利用的、具有某种确定功能的芯片模块。所述随机数发生器103采用IP硬核,带有随机性检测逻辑,为密码运算提供随机数据。所述IP硬核,是指完成了综合的功能块,已有固定的拓扑布局和具体工艺,并经过工艺验证,性能可保证的IP核。
所述接口105,用于与外部系统之间交换数据、指令及地址信息。本发明实施例中,所述接口采用通用异步收发传输器(Universal Asynchronous Receiver/Transmitter,UART),UART是一种通用串行数据总线,用于异步通信。UART还包括以下功能:支持直接存储器访问(Direct Memory Access,DMA)接口控制功能;支持字符可编程;支持RS232异步通信模式;兼容16750的请求发送(Request To Send,RTS)和清除发送(Clear To Send,CTS)串行通信模式。
所述非易失存储器106,用于存储程序指令、地址等数据,在断电之后,所存储的数据不会丢失,常用的非易失存储器有带电可擦写可编程只读存储器(ElectricallyErasable Programmable Read-Only Memory,EEPROM)和闪存(Flash Memory,FLASH),本发明实施例,优选的,采用FLASH非易失存储器。
所述片内存储器107,用于所述SoC密码芯片中高速数据的缓存;所述片内存储器具体为静态随机存储器(Static Random Access Memory,SRAM)。
所述定时器108,用于定时以及产生定时中断。
所述功耗管理模块109,用于管理所述SoC密码芯片中系统的功耗和系统的复位;系统在进行功耗控制时,功耗管理模块控制所述SoC密码芯片在不同工作模式之间的切换:SLOW、NORMAL、IDLE和SLEEP。这些工作模式可以让用户根据芯片不同的应用,动态地管理芯片内部各子模块的时钟源供给和系统的工作频率,从而降低芯片的整体功耗。另外功耗管理模块还包含了所述SoC密码芯片中各个单元的时钟控制电路,可以集中控制、关闭不必要打开的模块从而达到低功耗的目的。
所述时钟复位模块110,为所述SoC密码芯片内部各个模块提供时钟与复位信号,以及在所述SoC密码芯片出现异常情况下对所述SoC密码芯片进行复位控制。
所述通信总线111,用于所述SoC密码芯片中数据的传输和控制,以及上述模块均通过通信总线111相互连接;所述通信总线具体为高级微控制器总线架构(AdvancedMicrocontroller Bus Architecture,AMBA),包含总线仲裁器、总线译码器、多路选择器、高级高性能总线(Advanced High performance Bus,AHB)、AHB/APB桥和高级外围总线(Advanced Peripheral Bus,APB)。本发明实施例中,将总线系统配置成标准的AHB总线。
在本实施例提供的基于IP复用的SoC密码芯片中,所述SoC密码芯片的加解密模块为接收到的目标数据提供身份认证、数据完整性、数据加密等安全性验证;并且所述SoC密码芯片自带随机数发生器,可以根据系统的需求产生高质量的随机数,以供芯片安全设计使用;以此SoC密码芯片研制出的工业控制系统产品从最底层保证了数据的安全性,不但满足了高性能、高集成度、小型化的需求,还具备对数据传输安全保护的功能,从而提高了工业控制系统的安全性。
在本发明的另一优选实施例中,所述SoC密码芯片还包括:安全防护模块104,用于获取所述SoC密码芯片的实时环境数据,并对所述SoC密码芯片进行安全控制;
所述安全防护模块用于高低频率检测、高低电压检测、防止攻击。将当前状态通知CPU并可产生保护性复位。参见图1b给出的安全防护模块结构框图,所述安全防护模块,具体包括:环境检测单元120和检测控制单元130;其中,检测控制单元具体包括:控制电路子单元131、环境检测接口电路子单元132和通信总线接口电路子单元133。
所述环境检测单元120:用于对所述SoC密码芯片的内核工作频率和/或通信总线工作频率和/或加解密引擎工作频率和/或SoC密码芯片工作温度和/或SoC密码芯片内核工作电压进行实时检测,以及生成相应的实时环境数据。
所述控制电路子单元131:用于根据所述环境检测单元检测到的的实时环境数据生成对应的控制信号。
环境检测接口电路子单元132:用于完成环境检测单元与检测控制单元之间控制信号的交互。
通信总线接口电路子单元133:用于完成通信总线与检测控制单元之间控制信号的交互。
本实施例中提供的SoC密码芯片增加了安全防护模块,为芯片提供完善安全防护功能,一旦检测出环境数据超出设置的阈值,就会发出中断复位信号对芯片实施保护,当SoC密码芯片的内核工作频率和/或通信总线工作频率和/或加解密引擎工作频率和/或SoC密码芯片工作温度和/或SoC密码芯片内核工作电压出现异常时,安全防护模块就会采取相应的措施来保护SoC密码芯片,例如发出复位请求信号等,进而提高SoC密码芯片的抗攻击、防破解能力。
实施例二
参照图2,本实施例提供了一种SoC密码芯片。
所述SoC密码芯片包括CPU核、对称加解密引擎、随机数发生器、安全防护模块、接口、非易失存储器、片内存储器、定时器、功耗管理模块、时钟复位模块和通信总线。
在本发明实施例中,优选的,所述加解密模块采用对称加解密引擎,所述对称加解密引擎采用哈佛结构,所述哈佛结构,是一种将程序指令存储和数据存储分开的存储器结构;也可以采用冯·诺伊曼结构,将程序指令和数据存储在共同的存储器中,本发明对此不作限制。
本发明实施例中,对称加解密引擎将基本密码函数定义为专用的指令,因此可以编程实现加解密算法,这些专用的指令序列构成整个加解密算法。所述指令序列简单,执行时间短,性能高,具有可升级能力。
参见图2所给出的对称加解密引擎的结构框图,所述对称加解密引擎,具体包括:程序存储单元210、程序指针单元220、通用寄存器组单元230、数据存储单元240、指令译码单元250和密码运算单元260;
所述程序存储单元210,用于存储密码运算程序的指令;所述程序存储单元采用非易失性的Flash存储器,程序在掉电情况下可以继续保存。
所述程序指针单元220,用于记录当前要执行的指令在所述程序存储单元中的地址。所述对称密码算法引擎采用顺序寻址的指令寻址方式,指令在程序存储单元中按顺序存储,程序计数器(Program Counter,PC)记录当前要执行的指令地址,每执行一条指令,PC自动加1。当程序出现转移指令时,则下一条指令的地址为转移目标地址。
所述通用寄存器组单元230,用于预先导入加解密运算的目标数据。通用寄存器组单元的大小可以根据需要进行设置,本发明实施例中,优选的,所述通用寄存器组单元由32个寄存器组成,每个寄存器128bit。加解密算法运算过程中用到的目标数据需要预先导入到通用寄存器组单元,所有的中间结果和算法最终结果也保存在通用寄存器组单元。
所述数据存储单元240,用于保存加解密运算的目标数据。与通用寄存器组单元不同的是,数据存储单元中的数据不能被密码运算单元直接处理,如果要对数据存储单元中的数据进行密码运算操作,需要将数据先导入到通用寄存器组单元中,由密码运算单元进行处理,再将处理结果导出到数据存储单元中,也就是说,对数据存储单元的操作只有导入(Load)和保存(Store)两种。另外,数据存储单元还负责和对称加解密引擎中的其它模块进行数据交互,待处理目标数据的输入和运算结果的输出。
所述指令译码单元250,用于根据所述程序指针单元所指的位置从所述程序存储单元中取出当前指令,并对当前指令进行译码,得到密码运算指令;所述指令译码单元采用硬件布线逻辑实现,将从程序存储单元中取出的指令进行译码,得到密码运算单元、通用寄存器组单元和数据存储单元的运算指令,进而选择密码运算单元中对应的基本函数功能、通用寄存器组单元的读写操作和数据存储单元的读写操作。
所述密码运算单元260,用于根据随机数发生器产生的随机数和指令译码单元得到的密码运算指令,对所述通用寄存器组单元中的目标数据进行密码运算。所述密码运算单元由基本密码函数所组成,通过指令译码单元得到的密码运算指令,可以实现异或运算、S盒变换、移位运算、置换运算、模加运算、模减运算、模加逆运算、模乘运算、模乘逆运算、逻辑与、逻辑或、逻辑非、指数运算、对数运算等基本密码函数功能。除了提供上述基本密码函数,还提供可重构单元,用于扩展指令集。
本实施例中SoC密码芯片中的CPU核、随机数发生器、安全防护模块、接口、非易失存储器、片内存储器、定时器、功耗管理模块、时钟复位模块和通信总线模块的功能和所述实施例一中的相同。
本实施例中,加解密模块采用对称加解密引擎,并且采用哈佛结构,将程序指令和数据分开存储,由于存取指令和存取数据分别通过不同的存储空间和不同的总线,使得各条指令可以重叠执行,这样,克服了数据流传输的瓶颈,提高了运算速度;另外,密码运算单元为加解密算法提供了大量的基本密码函数,以及可扩展指令集,使得加解密运算指令序列简单,执行时间短,性能高,具有可升级能力,并且满足对国密SM1算法的支持;因此,本发明的SoC密码芯片能够满足工业级环境的使用,芯片自身具备完善的安全防护能力,具备SM1密码算法,提供随机数功能。满足对工业系统的数据进行加密、认证等安全保护的需要。
实施例三
参照图3,本实施例提供了一种SoC密码芯片。
所述SoC密码芯片包括CPU核、非对称加解密引擎、随机数发生器、安全防护模块、接口、非易失存储器、片内存储器、定时器、功耗管理模块、时钟复位模块和通信总线。
在本发明实施例中,所述加解密模块采用非对称加解密引擎,优选的,具体采用SM2公钥密码算法,参见图3所给出的非对称加解密引擎的结构框图,所述非对称加解密引擎具体包括:输入输出单元301、输入数据缓冲单元302、第一算法程序存储单元303、第二算法程序存储单元304、程序选择控制单元305、指令翻译控制单元306、算术逻辑单元307、运算存储单元308、输出数据缓冲单元309。
所述输入输出单元301,用于和所述非对称加解密引擎内各单元间的数据交互,以及输入密码运算的目标数据和输出密码运算的结果。
所述输入数据缓冲单元302,用于对所述输入输出单元301输入的目标数据进行缓存。
所述第一算法程序存储单元303,用于存储用户编制的SM2公钥密码算法程序。
所述第二算法程序存储单元304,用于存储所述芯片内置的SM2公钥密码算法程序,包括签名、验证、加密和解密等算法。
所述程序选择控制单元305,用于接收输入输出单元301发送的密码运算命令,根据所述密码运算命令,从所述第一算法程序存储单元303和/或第二算法程序存储单元304中选择相应密码算法,以及将所述密码算法中包含的用户指令发送至指令翻译控制单元306。同时根据密码算法程序运行的状态,控制数据在输入数据缓冲单元302、运算存储单元308、输出数据缓冲单元309之间的传递。
所述指令翻译控制单元306,用于接收程序选择控制单元305发送的用户指令,以及将所述用户指令翻译成运算指令发送至算术逻辑单元307;以及接收算术逻辑单元308发送的运算状态信号,根据这些信号控制用户指令的翻译,以及将这些运算状态信号传输到程序选择控制单元305。
所述算术逻辑单元307,用于根据所述指令翻译控制单元发送的运算指令进行基本密码函数运算。
所述运算存储单元308,用于存储所述算术逻辑单元进行基本密码函数运算产生的结果。
所述输出数据缓冲区309,用于对所述运算存储单元中存储的基本密码函数运算的结果进行缓存。
本实施例中SoC密码芯片中的CPU核、随机数发生器、安全防护模块、接口、非易失存储器、片内存储器、定时器、功耗管理模块、时钟复位模块和通信总线模块的功能和实施例一中的相同。
本实施例中,加解密模块采用非对称加解密引擎,具体采用SM2公钥密码算法的签名验证、数据加解密来实现身份认证,能够满足工业级环境的使用,芯片自身具备完善的安全防护能力,具备SM2密码算法,提供随机数功能。基于该芯片可以快速、经济的设计出满足工业环境使用的安全防护装置,满足对工业系统的数据进行加密、认证等安全保护的需要。
在此提供的算法和显示不与任何特定计算机、虚拟系统或者其它设备固有相关。各种通用系统也可以与基于在此的示教一起使用。根据上面的描述,构造这类系统所要求的结构是显而易见的。此外,本发明也不针对任何特定编程语言。应当明白,可以利用各种编程语言实现在此描述的本发明的内容,并且上面对特定语言所做的描述是为了披露本发明的最佳实施方式。
在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本发明的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。
类似地,应当理解,为了精简本公开并帮助理解各个发明方面中的一个或多个,在上面对本发明的示例性实施例的描述中,本发明的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释成反映如下意图:即所要求保护的本发明要求比在每个权利要求中所明确记载的特征更多的特征。更确切地说,如下面的权利要求书所反映的那样,发明方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本发明的单独实施例。
本领域那些技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个设备中。可以把实施例中的模块或单元或组件组合成一个模块或单元或组件,以及此外可以把它们分成多个子模块或子单元或子组件。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。
此外,本领域的技术人员能够理解,尽管在此所述的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。例如,在下面的权利要求书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。
本发明的各个部件实施例可以以硬件实现,或者以在一个或者多个处理器上运行的软件模块实现,或者以它们的组合实现。本领域的技术人员应当理解,可以在实践中使用微处理器或者数字信号处理器(DSP)来实现根据本发明实施例的SoC密码芯片中的一些或者全部部件的一些或者全部功能。本发明还可以实现为用于执行这里所描述的方法的一部分或者全部的设备或者装置程序(例如,计算机程序和计算机程序产品)。这样的实现本发明的程序可以存储在计算机可读介质上,或者可以具有一个或者多个信号的形式。这样的信号可以从因特网网站上下载得到,或者在载体信号上提供,或者以任何其他形式提供。
应该注意的是上述实施例对本发明进行说明而不是对本发明进行限制,并且本领域技术人员在不脱离所附权利要求的范围的情况下可设计出替换实施例。在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词“包含”不排除存在未列在权利要求中的元件或步骤。位于元件之前的单词“一”或“一个”不排除存在多个这样的元件。本发明可以借助于包括有若干不同元件的硬件以及借助于适当编程的计算机来实现。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。单词第一、第二、以及第三等的使用不表示任何顺序。可将这些单词解释为名称。

Claims (2)

1.一种用于工业控制系统产品的SoC密码芯片,包括:CPU核、接口、非易失存储器、片内存储器、定时器、功耗管理模块、时钟复位模块和通信总线,其特征在于,所述SoC密码芯片还包括随机数发生器、加解密模块和安全防护模块:
所述随机数发生器,用于产生随机数;
所述加解密模块,用于对所述SoC密码芯片接收到的目标数据根据所述随机数发生器产生的随机数进行加解密运算;
所述安全防护模块,用于获取所述SoC密码芯片的实时环境数据,并对所述SoC密码芯片进行安全控制;
所述安全防护模块,具体包括:环境检测单元和检测控制单元;
所述环境检测单元:用于对所述SoC密码芯片的内核工作频率、通信总线工作频率、加解密引擎工作频率、SoC密码芯片工作温度和SoC密码芯片内核工作电压进行实时检测,以及生成相应的实时环境数据;
所述检测控制单元,用于根据所述环境检测单元检测到的实时环境数据生成对应的控制信号;
所述加解密模块包括:对称加解密引擎和非对称加解密引擎;
所述对称加解密引擎,具体包括:程序存储单元、程序指针单元、通用寄存器组单元、数据存储单元、密码运算单元和指令译码单元;
其中,
所述程序存储单元,用于存储密码运算的指令;
所述程序指针单元,用于记录当前指令在所述程序存储单元中的地址;
所述通用寄存器组单元,用于预先导入密码运算的目标数据;
所述数据存储单元,用于保存密码运算的目标数据;
所述指令译码单元,用于根据所述程序指针单元所指的位置从所述程序存储单元中取出当前指令,并对当前指令进行译码,得到密码运算指令;
所述密码运算单元,用于对所述通用寄存器组单元中的目标数据根据指令译码单元得到的密码运算指令进行密码运算;
所述非对称加解密引擎,具体包括:输入输出单元、输入数据缓冲单元、第一算法程序存储单元、第二算法程序存储单元、程序选择控制单元、指令翻译控制单元、算术逻辑单元、运算存储单元、输出数据缓冲单元;
其中,
所述输入输出单元,用于和所述非对称加解密引擎内各单元间的数据交互,以及输入密码运算的目标数据和输出密码运算的结果;
所述输入数据缓冲单元,用于对所述输入输出单元输入的目标数据进行缓存;
所述第一算法程序存储单元,用于存储用户编制的SM2公钥密码算法程序;
所述第二算法程序存储单元,用于存储所述SoC密码芯片内置的SM2公钥密码算法程序;
所述程序选择控制单元,用于接收输入输出单元发送的密码运算命令,根据所述密码运算命令,从所述第一算法程序存储单元和/或第二算法程序存储单元中选择相应密码算法,以及将所述密码算法中包含的用户指令发送至指令翻译控制单元;
所述指令翻译控制单元,用于接收程序选择控制单元发送的用户指令,以及将所述用户指令翻译成运算指令发送至算术逻辑单元;
所述算术逻辑单元,用于根据所述指令翻译控制单元发送的运算指令进行基本密码函数运算;
所述运算存储单元,用于存储所述算术逻辑单元进行基本密码函数运算产生的结果;
所述输出数据缓冲单元,用于对所述运算存储单元中存储的基本密码函数运算的结果进行缓存。
2.如权利要求1所述的用于工业控制系统产品的SoC密码芯片,其特征在于,
所述检测控制单元具体包括:控制电路子单元、环境检测接口电路子单元和通信总线接口电路子单元;
其中,
所述控制电路子单元:用于根据所述环境检测单元检测到的实时环境数据生成对应的控制信号;
所述环境检测接口电路子单元:用于完成环境检测单元与检测控制单元之间控制信号的交互;
所述通信总线接口电路子单元:用于完成通信总线与检测控制单元之间控制信号的交互。
CN201410384614.4A 2014-08-06 2014-08-06 一种SoC密码芯片 Active CN104202161B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201410384614.4A CN104202161B (zh) 2014-08-06 2014-08-06 一种SoC密码芯片

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410384614.4A CN104202161B (zh) 2014-08-06 2014-08-06 一种SoC密码芯片

Publications (2)

Publication Number Publication Date
CN104202161A CN104202161A (zh) 2014-12-10
CN104202161B true CN104202161B (zh) 2018-05-04

Family

ID=52087391

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410384614.4A Active CN104202161B (zh) 2014-08-06 2014-08-06 一种SoC密码芯片

Country Status (1)

Country Link
CN (1) CN104202161B (zh)

Families Citing this family (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10726162B2 (en) * 2014-12-19 2020-07-28 Intel Corporation Security plugin for a system-on-a-chip platform
US9779262B2 (en) * 2015-04-20 2017-10-03 Qualcomm Incorporated Apparatus and method to decrypt file segments in parallel
CN106682535A (zh) * 2017-03-16 2017-05-17 周清睿 系统级芯片
CN108933651B (zh) * 2017-05-27 2021-09-28 佛山芯珠微电子有限公司 基于soc的保密通信系统及保密通信的方法
IT201700115266A1 (it) * 2017-10-12 2019-04-12 St Microelectronics Rousset Dispositivo elettronico comprendente un modulo digitale per accedere a dati cifrati in una memoria e corrispondente metodo per accedere a dati cifrati in una memoria
CN108322308B (zh) * 2017-12-14 2021-01-12 天津津航计算技术研究所 一种用于身份认证的数字签名算法的硬件实现系统
CN108536642A (zh) * 2018-06-13 2018-09-14 北京比特大陆科技有限公司 大数据运算加速系统和芯片
CN109145613A (zh) * 2018-07-10 2019-01-04 杨俊佳 安全加密芯片及含有该芯片的电子设备
CN110069271B (zh) * 2019-04-24 2024-03-22 江苏镭创高科光电科技有限公司 芯片的升级方法、主控芯片及芯片
CN110188537B (zh) * 2019-04-26 2021-07-20 奇安信科技集团股份有限公司 数据的分离存储方法及装置、存储介质、电子装置
CN111159097A (zh) * 2019-12-09 2020-05-15 中山大学 一种片上访存保护系统及方法
TWI743692B (zh) * 2020-02-27 2021-10-21 威鋒電子股份有限公司 硬體木馬抑制裝置及其操作方法
CN111428232A (zh) * 2020-03-17 2020-07-17 德施曼机电(中国)有限公司 一种加密输入的密码处理方法、加密处理装置、智能锁
CN111737773A (zh) * 2020-06-10 2020-10-02 深圳欣迪军融科技有限公司 具有se安全模块功能的嵌入式安全存储器
CN112597099A (zh) * 2021-01-15 2021-04-02 西安超越申泰信息科技有限公司 基于SoC芯片的SD安全模块及设计方法
CN114968908A (zh) * 2022-05-20 2022-08-30 珠海微度芯创科技有限责任公司 一种毫米波soc芯片
CN116186793B (zh) * 2022-10-12 2023-07-14 三未信安科技股份有限公司 一种基于risc-v的安全芯片架构及其工作方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1716841A (zh) * 2004-06-14 2006-01-04 上海安创信息科技有限公司 高性能密码算法SoC芯片
CN1878055A (zh) * 2005-06-07 2006-12-13 北京握奇数据系统有限公司 一种分离式大数据量加/解密设备及实现方法
CN102882856A (zh) * 2012-09-10 2013-01-16 广东电网公司电力科学研究院 一种基于SoC的终端密码装置
CN202711262U (zh) * 2011-12-13 2013-01-30 杭州晟元芯片技术有限公司 一种电子签名和高速流加密二合一的芯片

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007013433A (ja) * 2005-06-29 2007-01-18 Fujitsu Ltd 暗号化データを送受信する方法及び情報処理システム

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1716841A (zh) * 2004-06-14 2006-01-04 上海安创信息科技有限公司 高性能密码算法SoC芯片
CN1878055A (zh) * 2005-06-07 2006-12-13 北京握奇数据系统有限公司 一种分离式大数据量加/解密设备及实现方法
CN202711262U (zh) * 2011-12-13 2013-01-30 杭州晟元芯片技术有限公司 一种电子签名和高速流加密二合一的芯片
CN102882856A (zh) * 2012-09-10 2013-01-16 广东电网公司电力科学研究院 一种基于SoC的终端密码装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
一种高性能低功耗的密码SoC平台;程建雷等;《计算机工程》;20111031;第37卷(第20期);第133-135页 *

Also Published As

Publication number Publication date
CN104202161A (zh) 2014-12-10

Similar Documents

Publication Publication Date Title
CN104202161B (zh) 一种SoC密码芯片
US11088846B2 (en) Key rotating trees with split counters for efficient hardware replay protection
CN105027136B (zh) 用于集成电路的安全密钥推导和密码逻辑
EP3326107B1 (en) Supporting configurable security levels for memory address ranges
US10877806B2 (en) Method and apparatus for securely binding a first processor to a second processor
CN105095772B (zh) 用于安全地保存并恢复计算平台状态的方法和装置
EP3690661B1 (en) Flexible counter system for memory protection
US9742563B2 (en) Secure provisioning of secret keys during integrated circuit manufacturing
CN105046163B (zh) 保护嵌入式管理程序系统中的重要数据结构
CN107924448A (zh) 硬件实施的单向密码术
US9264048B2 (en) Secret operations using reconfigurable logics
US10204532B2 (en) Multiple input cryptographic engine
CN104620254A (zh) 用于低开销的存储器重播保护的并行化的计数器攀树
CN108075882A (zh) 密码卡及其加解密方法
CN107346401A (zh) 用于安全地执行程序的信息保障系统
CN110472444A (zh) 防止对加密存储器的未授权访问
US10270598B2 (en) Secure elliptic curve cryptography instructions
US20170286320A1 (en) Avoiding redundant memory encryption in a cryptographic protection system
CN108027864A (zh) 经双仿射映射的s-盒硬件加速器
EP3799346A1 (en) Processor with private pipeline
WO2017052811A2 (en) Secure modular exponentiation processors, methods, systems, and instructions
CN107924440A (zh) 安全计算环境
TWI842912B (zh) 處理系統,系統單晶片及用於履行算術運算之方法
Fang Privacy preserving computations accelerated using FPGA overlays
CN101872297B (zh) 微处理器及限制存取的方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
CP01 Change in the name or title of a patent holder
CP01 Change in the name or title of a patent holder

Address after: 510080 Dongfeng East Road, Dongfeng, Guangdong, Guangzhou, Zhejiang Province, No. 8

Patentee after: ELECTRIC POWER RESEARCH INSTITUTE, GUANGDONG POWER GRID CO., LTD.

Address before: 510080 Dongfeng East Road, Dongfeng, Guangdong, Guangzhou, Zhejiang Province, No. 8

Patentee before: Electrical Power Research Institute of Guangdong Power Grid Corporation