CN212724006U - 内置协处理器的安全微处理器及安全芯片 - Google Patents
内置协处理器的安全微处理器及安全芯片 Download PDFInfo
- Publication number
- CN212724006U CN212724006U CN202021049429.7U CN202021049429U CN212724006U CN 212724006 U CN212724006 U CN 212724006U CN 202021049429 U CN202021049429 U CN 202021049429U CN 212724006 U CN212724006 U CN 212724006U
- Authority
- CN
- China
- Prior art keywords
- coprocessor
- interface
- microprocessor
- security
- built
- 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
Links
Images
Landscapes
- Advance Control (AREA)
Abstract
本实用新型提供一种内置协处理器的安全微处理器,属于安全芯片设计领域。所述微处理器包括:主处理器,配置有第一协处理器接口;协处理器,包括第二协处理器接口及密码学算法硬件引擎;所述主处理器与所述协处理器之间通过所述第一协处理器接口和所述第二协处理器接口进行通信;以及安全防护模块,用于对所述主处理器与所述协处理器之间的通信进行安全防护。本实用新型通过第一协处理器接口与第二协处理器接口直接通信实现主处理器与协处理器之间的安全通信,主处理与协处理器之间的通信不经过安全芯片的系统总线,而是在安全芯片的微处理器内部实现密码学算法安全性,降低安全芯片的设计难度。
Description
技术领域
本实用新型涉及安全芯片设计领域,具体地涉及一种内置协处理器的安全微处理器以及一种安全芯片。
背景技术
安全芯片被广泛用于物联网、智能家居、移动互联、移动金融等领域。安全芯片分为智能卡、PSAM卡等形式,是一种能够提供密码学算法支持的 SOC(System On a Chip)芯片,其基本结构由嵌入式微处理器、总线、存储器和外设组成。在SOC芯片中实现密码学算法功能,主要有两种方式:一种是采用软件运算,可以使用通用指令进行,也可以调用专用指令。例如Intel 的台式机CPU和服务器CPU中添加了AES-NI指令集,可以实现AES算法的运算;ARM的V8A架构高性能处理器也提供了专用AES指令。但是,通常的嵌入式微处理器不提供AES专用指令集,不能通过软件实现密码学算法功能。软件实现密码学算法的缺点在于安全防护性低,无论是使用通用指令或者专用算法指令进行计算,抗侧信道攻击效果均有限,因为利用微处理器计算产生的功耗波形就可以轻易破解密码学算法。另一种是调用系统中的硬件加密引擎实现密码学算法,微处理器可以通过系统总线访问硬件加密引擎,可以在硬件加密引擎内部保证算法的安全,但是微处理器与硬件加密引擎之间通过系统总线访问数据,数据在系统总线上明文传输存在安全漏洞,利用侧信道攻击可以将其破解。
随着可信计算的发展,密码学硬件加密引擎也需要进行安全控制,避免不可信的程序访问硬件加速引擎导致安全问题,因此需要在硬件引擎外配置安全管理模块。一种现有的安全芯片架构如图1所示,在安全芯片的系统总线上增加安全模块,微处理器与硬件加密引擎之间的数据传输通过系统总线上的安全模块进行安全控制。然而,要实现系统总线安全、算法软件安全、可信计算等功能,大大增加了安全芯片的开发难度。目前,亟需一种便捷的密码学算法实现方式,在保证密码学算法安全性的同时,降低安全芯片设计的难度。
实用新型内容
本实用新型的目的是提供一种内置协处理器的安全微处理器,在微处理器内部实现密码学算法安全性,降低安全芯片的设计难度。
为了实现上述目的,本实用新型一方面提供一种内置协处理器的安全微处理器,应用于安全芯片中,包括:
主处理器,配置有第一协处理器接口;
协处理器,包括第二协处理器接口及密码学算法硬件引擎;
所述主处理器与所述协处理器之间通过所述第一协处理器接口和所述第二协处理器接口进行通信;以及
安全防护模块,用于对所述主处理器与所述协处理器之间的通信进行安全防护。
进一步地,所述安全防护模块用于产生所述第一协处理器接口与所述第二协处理器接口之间通信的第一数据掩码,通过所述第一数据掩码实现对所述主处理器与所述协处理器之间通信信道的安全防护。
进一步地,所述密码学算法硬件引擎包括寄存器和加密运算单元,所述主处理器通过所述第一协处理器接口将控制信号和密码学数据传送到所述第二协处理器接口,通过所述第二协处理器接口将所述密码学数据写入所述寄存器并启动所述加密运算单元进行加密/解密运算。
进一步地,所述寄存器包括密钥寄存器、明文寄存器、密文寄存器、状态寄存器以及控制寄存器。
进一步地,所述密码学算法硬件引擎还包括安全管理单元;
所述安全防护模块还用于产生所述安全管理单元所需的第二数据掩码,所述安全管理单元通过所述第二数据掩码实现对所述密码学算法硬件引擎的安全防护。
进一步地,所述协处理器的密码学算法硬件引擎配置有多个所述加密运算单元,每个所述加密运算单元预置的密码学算法均不相同。
进一步地,所述微处理器包括多个所述协处理器,每个所述协处理器的加密运算单元预置的密码学算法均不相同。
进一步地,所述第一协处理器接口和所述第二协处理器接口用于传送或接收地址信号、数据信号、控制信号以及时钟信号。
本实用新型另一方面提供一种安全芯片,包括上述的内置协处理器的安全微处理器。
本实用新型在微处理器内部设计协处理器作为硬件加密引擎,利用主处理器的协处理器扩展端口作为第一协处理器接口,将协处理器的总线接口作为第二协处理器接口,通过第一协处理器接口与第二协处理器接口直接通信实现主处理器与协处理器之间的安全通信,主处理与协处理器之间的通信不经过安全芯片的系统总线,不需要在系统总线上进行安全防护(即系统总线上不需要设置安全模块),而是在安全芯片的微处理器内部实现密码学算法安全性,降低安全芯片的设计难度。
本实用新型提供的内置协处理器的安全微处理器,与软件实现密码学算法的处理器相比,通过硬件引擎实现更高的安全防护等级;与扩展密码学指令的处理器相比,通过硬件引擎实现更高安全防护等级并更便于进行功能扩展,可以实现更多的密码学算法;与外挂在安全芯片的系统总线上的硬件密码学算法引擎相比,通信安全防护不需要经过系统总线,减少因总线造成的安全设计难度,对可信执行环境无需进行额外的安全隔离设计,降低安全芯片设计难度,缩短安全芯片开发周期。
本实用新型实施方式的其它特征和优点将在随后的具体实施方式部分予以详细说明。
附图说明
附图是用来提供对本实用新型实施方式的进一步理解,并且构成说明书的一部分,与下面的具体实施方式一起用于解释本实用新型实施方式,但并不构成对本实用新型实施方式的限制。在附图中:
图1是现有的一种安全芯片架构;
图2是本实用新型一种实施方式提供的内置协处理器的安全微处理器的结构框图;
图3是本实用新型另一种实施方式提供的内置协处理器的安全微处理器的结构框图。
具体实施方式
以下结合附图对本实用新型的具体实施方式进行详细说明。应当理解的是,此处所描述的具体实施方式仅用于说明和解释本实用新型,并不用于限制本实用新型。本文所述的“第一”、“第二”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
图2是本实用新型一种实施方式提供的内置协处理器的安全微处理器的结构框图。如图2所示,本实用新型实施方式提供一种内置协处理器的安全微处理器,应用于安全芯片中,所述微处理器包括:主处理器、协处理器以及安全防护模块。所述主处理器配置有第一协处理器接口,本实施方式中采用内置有协处理器扩展端口的处理器作为主处理器,即主处理器可选用自带协处理器接口的成品处理器。所述协处理器包括第二协处理器接口及密码学算法硬件引擎。所述主处理器与所述协处理器之间通过所述第一协处理器接口和所述第二协处理器接口进行通信。所述安全防护模块用于对所述主处理器与所述协处理器之间的通信进行安全防护。在微处理器内部设计协处理器作为硬件加密引擎,利用主处理器的协处理器扩展端口作为第一协处理器接口,将协处理器的总线接口作为第二协处理器接口,通过第一协处理器接口与第二协处理器接口直接通信实现主处理器与协处理器之间的安全通信,主处理与协处理器之间的通信不经过安全芯片的系统总线,不需要在系统总线上进行安全防护(即系统总线上不需要设置安全模块),而是在安全芯片的微处理器内部实现密码学算法安全性,降低安全芯片的设计难度。
本实施方式中,所述安全防护模块用于产生所述第一协处理器接口与所述第二协处理器接口之间通信的第一数据掩码,通过所述第一数据掩码实现对所述主处理器与所述协处理器之间通信信道的安全防护。而且,所述安全防护模块还用于对所述密码学算法硬件引擎进行安全防护。
如图2所示,本实用新型一种实施方式中,所述协处理器的密码学算法硬件引擎包括寄存器、加密运算单元及安全管理单元,所述主处理器通过所述第一协处理器接口将控制信号和密码学数据传送到所述第二协处理器接口,通过所述第二协处理器接口将所述密码学数据写入所述寄存器并启动所述加密运算单元进行加密/解密运算。所述寄存器包括密钥寄存器、明文寄存器、密文寄存器、状态寄存器以及控制寄存器。所述加密运算单元预置有密码学算法,所述密码学算法包括但不限于对称算法、非对称算法、哈希算法中的任意一种。所述安全防护模块用于产生所述第一协处理器接口与所述第二协处理器接口之间通信的第一数据掩码以及产生所述安全管理单元所需的第二数据掩码,通过所述第一数据掩码实现对所述主处理器与所述协处理器之间通信信道的安全防护,所述安全管理单元通过所述第二数据掩码实现对所述密码学算法硬件引擎的安全防护,例如对侧信道攻击的防护。
所述第一协处理器接口和所述第二协处理器接口用于传送或接收地址信号、数据信号、控制信号以及时钟信号。例如,典型的协处理器接口包括以下信号:
信号 | 方向(以协处理器为参照) | 功能 |
CLK | 输入 | 时钟 |
RST | 输入 | 复位 |
SEL | 输入 | 协处理器片选 |
ADDR | 输入 | 地址 |
WR | 输入 | 写控制信号 |
WDATA | 输入 | 写数据 |
RDATA | 输出 | 读数据 |
READY | 输出 | 操作完成信号 |
通过上述控制信号实现协处理器与主处理器的通信。需要说明的是,本实用新型中的协处理器可以采用上述的通信接口形式,也可以是类似的其他形式。
所述协处理器内部的寄存器定义如下:
地址 | 功能 |
0x00(CPR0) | 控制 |
0x01(CPR1) | 状态 |
0x02(CPR2) | 密钥 |
0x03(CPR3) | 明文 |
0x04(CPR4) | 密文 |
基于上述例举的协处理器通信接口和寄存器定义,本实用新型的微处理器实现一次加密的过程如下:
主处理器通过协处理器接口将加密密钥写入密钥寄存器;
主处理器通过协处理器接口将明文写入明文寄存器;
主处理器通过协处理器接口配置控制寄存器,启动加密运算,将运算结果存放到密文寄存器,并产生运算结束标志存放到状态寄存器;
主处理器通过协处理器接口查询状态寄存器,直到读取运算结束状态。
在支持可信执行环境的系统中,要求将数据和外设区分为可信和不可信。本实施方式中的协处理器,可以将内置硬件密码学算法的协处理器配置为只允许可信程序调用,也可以通过主处理器内部扩展的控制寄存器来选择。例如,通过微处理器内部的协处理器安全配置寄存器可实现对协处理器的安全配置,当协处理器被配置为安全状态时,只有安全程序才允许访问该协处理器。微处理器根据自身运行状态和协处理器的安全配置判断是否可以访问该协处理器,不允许访问时生成错误信息。本实用新型实施方式在微处理器内部实现安全隔离工作,不需要在安全芯片设计过程中额外考虑安全隔离处理,降低芯片设计难度。
图3是本实用新型另一种实施方式提供的内置协处理器的安全微处理器的结构框图。如图3所示,在本实用新型另一种实施方式中,所述协处理器的密码学算法硬件引擎配置多个加密运算单元,每个加密运算单元预置的密码学算法均不相同。例如,多个加密运算单元分别预置对称算法、非对称算法、哈希算法、国密算法、国际算法。现有的扩展密码学指令的处理器的指令是固定的,例如扩展AES指令集,就只支持AES指令,若要增加新的算法就需要修改处理器架构,而修改处理器架构的时间成本非常大。本实施方式中通过增加协处理器的加密运算单元即可增加新的算法,实现多种密码学算法,缩短开发时间、节约设计成本。
在本实用新型一种可选的实施方式中,微处理器配置多个协处理器,每个协处理器配置一个加密运算单元,每个协处理器的加密运算单元预置的密码学算法均不相同,例如,多个协处理器分别预置对称算法、非对称算法、哈希算法、国密算法、国际算法。现有的扩展密码学指令的处理器的指令是固定的,例如扩展AES指令集,就只支持AES指令,若要增加新的算法就需要修改处理器架构,而修改处理器架构的时间成本非常大。本实施方式中的微处理器支持多个协处理器(例如,现有的某些处理器自带的协处理器扩展端口(即第一协处理器接口)可支持16个协处理器的扩展应用),通过增加协处理器即可增加新的算法,实现多种密码学算法,缩短开发时间、节约设计成本。通过微处理器内部的协处理器安全配置寄存器可实现各个协处理器的安全配置,当一个协处理器被配置为安全状态时,只有安全程序才允许访问该协处理器。微处理器根据自身运行状态和协处理器的安全配置判断是否可以访问该协处理器,不允许访问时生成错误信息,例如,在ARM架构的处理器中可以使用NOCP FAULT表示该错误。
本实用新型实施方式提供的内置协处理器的安全微处理器,与软件实现密码学算法的处理器相比,通过硬件引擎实现更高的安全防护等级;与扩展密码学指令的处理器相比,通过硬件引擎实现更高安全防护等级并更便于进行功能扩展,可以实现更多的密码学算法;与外挂在安全芯片的系统总线上的硬件密码学算法引擎相比,通信安全防护不需要经过系统总线,减少因总线造成的安全设计难度,对可信执行环境无需进行额外的安全隔离设计,降低安全芯片设计难度,缩短安全芯片开发周期。
本实用新型实施方式还提供一种安全芯片,包括上述的内置协处理器的安全微处理器。
本领域技术人员可以理解实现上述实施方式的部分功能是可以通过程序来指令相关的硬件来完成,该程序存储在一个存储介质中,所述存储介质可以是嵌入式系统内部的存储介质,例如:只读存储器ROM、随机存取存储器RAM、快闪存储器FLASH、可编程只读存储器EEPROM。
以上结合附图详细描述了本实用新型的可选实施方式,但是,本实用新型实施方式并不限于上述实施方式中的具体细节,在本实用新型实施方式的技术构思范围内,可以对本实用新型实施方式的技术方案进行多种简单变型,这些简单变型均属于本实用新型实施方式的保护范围。另外需要说明的是,在上述具体实施方式中所描述的各个具体技术特征,在不矛盾的情况下,可以通过任何合适的方式进行组合。此外,本实用新型的各种不同的实施方式之间也可以进行任意组合,只要其不违背本实用新型实施方式的思想,其同样应当视为本实用新型实施方式所公开的内容。
Claims (9)
1.一种内置协处理器的安全微处理器,应用于安全芯片中,其特征在于,包括:
主处理器,配置有第一协处理器接口;
协处理器,包括第二协处理器接口及密码学算法硬件引擎;
所述主处理器与所述协处理器之间通过所述第一协处理器接口和所述第二协处理器接口进行通信;以及
安全防护模块,用于对所述主处理器与所述协处理器之间的通信进行安全防护。
2.根据权利要求1所述的内置协处理器的安全微处理器,其特征在于,所述安全防护模块用于产生所述第一协处理器接口与所述第二协处理器接口之间通信的第一数据掩码,通过所述第一数据掩码实现对所述主处理器与所述协处理器之间通信信道的安全防护。
3.根据权利要求2所述的内置协处理器的安全微处理器,其特征在于,所述密码学算法硬件引擎包括寄存器和加密运算单元,所述主处理器通过所述第一协处理器接口将控制信号和密码学数据传送到所述第二协处理器接口,通过所述第二协处理器接口将所述密码学数据写入所述寄存器并启动所述加密运算单元进行加密/解密运算。
4.根据权利要求3所述的内置协处理器的安全微处理器,其特征在于,所述寄存器包括密钥寄存器、明文寄存器、密文寄存器、状态寄存器以及控制寄存器。
5.根据权利要求4所述的内置协处理器的安全微处理器,其特征在于,所述密码学算法硬件引擎还包括安全管理单元;
所述安全防护模块还用于产生所述安全管理单元所需的第二数据掩码,所述安全管理单元通过所述第二数据掩码实现对所述密码学算法硬件引擎的安全防护。
6.根据权利要求5所述的内置协处理器的安全微处理器,其特征在于,所述协处理器的密码学算法硬件引擎配置有多个所述加密运算单元,每个所述加密运算单元预置的密码学算法均不相同。
7.根据权利要求5所述的内置协处理器的安全微处理器,其特征在于,所述微处理器包括多个所述协处理器,每个所述协处理器的加密运算单元预置的密码学算法均不相同。
8.根据权利要求3所述的内置协处理器的安全微处理器,其特征在于,所述第一协处理器接口和所述第二协处理器接口用于传送或接收地址信号、数据信号、控制信号以及时钟信号。
9.一种安全芯片,其特征在于,包括权利要求1-8中任一项所述的内置协处理器的安全微处理器。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202021049429.7U CN212724006U (zh) | 2020-06-09 | 2020-06-09 | 内置协处理器的安全微处理器及安全芯片 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202021049429.7U CN212724006U (zh) | 2020-06-09 | 2020-06-09 | 内置协处理器的安全微处理器及安全芯片 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN212724006U true CN212724006U (zh) | 2021-03-16 |
Family
ID=74951241
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202021049429.7U Active CN212724006U (zh) | 2020-06-09 | 2020-06-09 | 内置协处理器的安全微处理器及安全芯片 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN212724006U (zh) |
-
2020
- 2020-06-09 CN CN202021049429.7U patent/CN212724006U/zh active Active
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20190155754A1 (en) | Technologies for secure i/o with memory encryption engines | |
US10073977B2 (en) | Technologies for integrity, anti-replay, and authenticity assurance for I/O data | |
CN101551784B (zh) | 一种usb接口的ata类存储设备中数据的加密方法及装置 | |
CN111767586A (zh) | 内置硬件密码学算法协处理器的微处理器及安全芯片 | |
CN202650015U (zh) | 用于经加密存储器存取的系统 | |
CN114692131A (zh) | 带有分解式存储器的密码式计算 | |
US20070136576A1 (en) | Methods and apparatus for the secure handling of data in a microcontroller | |
US8301905B2 (en) | System and method for encrypting data | |
KR20210005871A (ko) | 암호화 카드, 전자 디바이스 및 암호화 서비스 방법 | |
CN103688269A (zh) | 与存储器区域的密码信息关联 | |
US9729309B2 (en) | Securing data transmission between processor packages | |
US11456855B2 (en) | Obfuscating data at-transit | |
US10528746B2 (en) | System, apparatus and method for trusted channel creation using execute-only code | |
CN103903043A (zh) | 一种智能卡三位一体抗侧信道攻击防护方法和系统 | |
CN112906015A (zh) | 一种基于硬件标签的内存敏感数据加密保护系统 | |
Wong et al. | SMARTS: secure memory assurance of RISC-V trusted SoC | |
Gupta et al. | MemEnc: A lightweight, low-power, and transparent memory encryption engine for IoT | |
CN106548099A (zh) | 一种电路系统安全保护的芯片 | |
CN212724006U (zh) | 内置协处理器的安全微处理器及安全芯片 | |
CN112948840A (zh) | 一种访问控制设备和包含该设备的处理器 | |
CN103729324A (zh) | 一种基于usb3.0接口的云存储文件安全保护装置 | |
CN116048716A (zh) | 一种直接存储访问方法、装置及相关设备 | |
CN113158203B (zh) | 一种soc芯片、电路和soc芯片的外部数据读写方法 | |
CN114969794A (zh) | SoC系统及数据加密方法 | |
US20220083651A1 (en) | Protection of authentication tag computation against power and electromagnetic side-channel attacks |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
GR01 | Patent grant | ||
GR01 | Patent grant |