CN107609405A - 一种外部安全内存装置及系统级芯片soc - Google Patents

一种外部安全内存装置及系统级芯片soc Download PDF

Info

Publication number
CN107609405A
CN107609405A CN201710657399.4A CN201710657399A CN107609405A CN 107609405 A CN107609405 A CN 107609405A CN 201710657399 A CN201710657399 A CN 201710657399A CN 107609405 A CN107609405 A CN 107609405A
Authority
CN
China
Prior art keywords
soc
external security
internal memory
data
key
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.)
Granted
Application number
CN201710657399.4A
Other languages
English (en)
Other versions
CN107609405B (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.)
Haiguang Information Technology Co Ltd
Original Assignee
Analog Microelectronics (shanghai) 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 Analog Microelectronics (shanghai) Co Ltd filed Critical Analog Microelectronics (shanghai) Co Ltd
Priority to CN201710657399.4A priority Critical patent/CN107609405B/zh
Publication of CN107609405A publication Critical patent/CN107609405A/zh
Application granted granted Critical
Publication of CN107609405B publication Critical patent/CN107609405B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Storage Device Security (AREA)

Abstract

本发明提供一种外部安全内存装置及系统级芯片SOC,属于数据加密处理技术领域。所述系统级芯片SOC包括:SOC本体;外部安全内存装置,所述外部安全内存装置位于所述SOC本体外部;其中,所述SOC以及外部安全内存事先通过数字签名相互验证身份以及密钥协商算法协商出密钥;所述SOC通过总线从所述外部安全内存读取或写入数据,并通过与所述数据对应的密钥将所述数据进行解密或加密。通过使用本发明提供的外部安全内存装置及系统级芯片SOC,解决了SEV技术中数据存储在内存中不安全的技术问题。

Description

一种外部安全内存装置及系统级芯片SOC
技术领域
本发明属于数据加密处理技术领域,具体涉及一种外部安全内存装置及系统级芯片SOC。
背景技术
AMD公司的安全加密虚拟化(security encryption virtual ization)技术通过对虚拟机所使用的物理内存进行加密,而且不同的虚拟机使用不同的密钥,这样可以保证在运行时即使hypervisor(虚拟机管理程序)也不能看到虚拟机的内存。
但是这个方案有如下安全方面的隐患:
SEV是对虚拟机内存页面做加密保护,但是并不能保证数据的完整性。
虚拟机使用的内存由宿主机提供,因此虽然内存内容是被加密的,但是宿主机上的恶意程序能够通过重放攻击,密文冲突攻击等方法修改加密后的数据,由于缺乏保护数据完整性的机制,虚拟机无法知晓,这样黑客就能够达到恶意入侵虚拟机数据的目的。
在计算机系统中,数据是存放在内存中,而内存虽然对用户态程序是专用资源,但是对操作系统而言是公共资源,当操作系统被攻破时,内存的安全性就无法保证了。因此如何保证存放在内存中的数据的安全是一个难题。
发明内容
为了解决SEV技术中数据存储在内存中不安全的技术问题,本发明提供一种外部安全内存装置及系统级芯片SOC。
本发明提供一种外部安全内存装置,所述装置包括:
外部安全内存装置本体;
外部安全内存,其位于所述外部安全内存本体内部,所述外部安全内存通过外部安全内存接口进行初始化,并将处理模块数据存储在其内部。
此外,本发明还提供一种系统级芯片SOC,所述SOC包括:
SOC本体;
如上所述外部安全内存装置,所述外部安全内存装置位于所述SOC本体外部;
其中,所述SOC以及外部安全内存事先通过数字签名相互验证身份以及密钥协商算法协商出密钥;
所述SOC通过总线从所述外部安全内存读取或写入数据,并通过与所述数据对应的密钥将所述数据进行解密或加密。
所述密钥协商算法包括Diffie-Hel lman算法或国密SM2算法。
所述SOC以及外部安全内存均设置有加解密引擎单元,所述加解密引擎单元用于所述SOC以及外部安全内存事先通过数字签名相互验证身份以及密钥协商算法协商出密钥。
在所述传输的数据尾部,还添加了对数据正文的HMAC,SOC和外部安全内存通过对HMAC的校验。
所述SOC和外部安全内存均设置有随机数生成单元,所述随机数生成单元用于产生随机数,并将该随机数混入到密钥中,生成新的密钥,所述SOC使用该密钥进行对数据进行解密或加密。
使用本发明提供的一种外部安全内存装置及系统级芯片SOC克服了SEV技术中数据存储在内存中不安全的技术问题
附图说明
图1为本发明实施例提供的一种外部安全内存装置结构示意图;
图2为本发明实施例提供的一种及系统级芯片SOC结构示意图。
具体实施方式
下面通过附图和实施例,对本发明的技术方案做进一步的详细描述。
如图1所示,本发明实施例提供一种外部安全内存装置,所述装置包括:外部安全内存装置本体以及外部安全内存1。
其中,外部安全内存1位于所述外部安全内存装置本体内部,所述外部安全内存通过外部安全内存接口进行初始化,并将处理模块数据存储在其内部。
对外部安全内存的使用提供以下的接口:
1、初始化安全内存–safe_memory_ini t;
2、分配指定大小的空间–safe_memory_al locate。
在本发明实施例中,在初始化过程中,调用者可以将代码或数据复制到分配到的外部安全内存1中,然后通过数字签名来保证复制到安全内存中的代码或数据是安全的。
当外部安全内存1初始化完毕后,指令或数据一直保存在外部安全内存1的内部,供调用者使用,SOC不提供接口直接修改安全内存中的内容,在外部安全内存1中的代码能够修改安全内存中事先分配好的数据,即使被分配到同一个外部安全内存中的两段不同的代码,由于得到不同的授权,也可能无法相互访问,因此可以认为外部安全内存1是安全和可信任的。
此外,如图2所示,本发明实施例还提供一种系统级芯片SOC,所述SOC包括:
SOC本体,该SOC本体包括一个或多个核21或22;
如上所述外部安全内存装置,所述外部安全内存装置位于所述SOC本体外部;
其中,所述SOC以及外部安全内存23事先通过数字签名相互验证身份以及密钥协商算法协商出密钥;
所述SOC通过总线从所述外部安全内存读取或写入数据,并通过与所述数据对应的密钥将所述数据进行解密或加密。
具体地,如图2所示,所述SOC以及外部安全内存23均设置有加解密引擎单元(crypto engine)4a以及24b,所述加解密引擎单元24a以及24b用于所述SOC以及外部安全内存23事先通过数字签名相互验证身份以及密钥协商算法协商出密钥。
在所述传输的数据尾部,还添加了对数据正文的HMAC,SOC和外部安全内存23通过对HMAC的校验,保护了数据的完整性。
所述SOC和外部安全内存23分别设置有随机数生成单元(random generator)25a以及25b,所述随机数生成单元用于产生随机数,并将该随机数混入到密钥中,生成新的密钥,所述SOC使用该密钥进行对数据进行解密或加密。
外部安全内存在初始化时需要SOC所在芯片事先通过数字签名相互验证身份以及密钥协商算法进行握手,产生共享密钥,此后双方利用共享密钥对传输的数据进行加密和完整性保护。在本发明实施例中,密钥协商算法包括Diffie-Hel lman算法或国密SM2算法。
由于SOC访问外部安全内存23需要通过总线,因此为防止恶意程序通过总线窃取数据,在SOC和外部安全内存之间的数据必须要加密后传输。
由于外部安全内存23在初始化完成后,和SOC建立了共享密钥,此后所有通讯都只能基于这事先约定的共享密钥,而数据传输时是加密的,且经过了完整性保护,所以这时其它没有经过授权的软硬件都无法解密和篡改这数据而不被发现,因此可以认为外部安全内存是安全和可信任的。而无论SOC或者外部安全内存23,在生产这些安全硬件后都需要对硬件进行数字签名,从而在机器启动时双方可以通过对方的证书列表相互验证身份的可靠性。
当SOC读取外部安全内存时1,SOC与外部安全内存23随机数生成单元25a以及25b,随机数生成单元25a以及25b在每次使用后会自动加一,外部安全内存23用共享密钥和随机数生成单元25b产生一个派生密钥将数据加密并发给SOC。SOC收到后,使用相同的随机数生成单元25a和共享密钥产生相同的派生密钥后解密,并使用数据。反之,在SOC向外部安全内存23写数据时也有类似过程。同时,在传输的数据尾部,还添加了对数据正文的完整性保护,比如使用HMAC,接收方通过对HMAC的校验,保护了数据的完整性。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
需要说明的是,本发明中SOC数量包括但不限于上述实施例,可以多个SOC访问同一个外部安全内存,或者是一个SOC访问多个外部安全内存。
专业人员应该还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
结合本文中所公开的实施例描述的方法或算法的步骤可以用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。
以上该的具体实施方式,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上该仅为本发明的具体实施方式而已,并不用于限定本发明的保护范围,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (6)

1.一种外部安全内存装置,其特征在于,所述装置包括:
外部安全内存装置本体;
外部安全内存,其位于所述外部安全内存本体内部,所述外部安全内存通过外部安全内存接口进行初始化,并将处理模块数据存储在其内部。
2.一种系统级芯片SOC,其特征在于,所述SOC包括:
SOC本体;
如权利要求1所述外部安全内存装置,所述外部安全内存装置位于所述SOC本体外部;
其中,所述SOC以及外部安全内存事先通过数字签名相互验证身份以及密钥协商算法协商出密钥;
所述SOC通过总线从所述外部安全内存读取或写入数据,并通过与所述数据对应的密钥将所述数据进行解密或加密。
3.根据权利要求2所述的SOC,其特征在于,所述密钥协商算法包括Diffie-Hellman算法或国密SM2算法。
4.根据权利要求2所述的SOC,其特征在于,所述SOC以及外部安全内存均设置有加解密引擎单元,所述加解密引擎单元用于所述SOC以及外部安全内存事先通过数字签名相互验证身份以及密钥协商算法协商出密钥。
5.根据权利要求2所述的SOC,其特征在于,在所述传输的数据尾部,还添加了对数据正文的HMAC,SOC和外部安全内存通过对HMAC的校验。
6.根据权利要求2所述的SOC,其特征在于,所述SOC和外部安全内存均设置有随机数生成单元,所述随机数生成单元用于产生随机数,并将该随机数混入到密钥中,生成新的密钥,所述SOC使用该密钥对数据进行解密或加密。
CN201710657399.4A 2017-08-03 2017-08-03 一种外部安全内存装置及系统级芯片soc Active CN107609405B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710657399.4A CN107609405B (zh) 2017-08-03 2017-08-03 一种外部安全内存装置及系统级芯片soc

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710657399.4A CN107609405B (zh) 2017-08-03 2017-08-03 一种外部安全内存装置及系统级芯片soc

Publications (2)

Publication Number Publication Date
CN107609405A true CN107609405A (zh) 2018-01-19
CN107609405B CN107609405B (zh) 2020-08-18

Family

ID=61064423

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710657399.4A Active CN107609405B (zh) 2017-08-03 2017-08-03 一种外部安全内存装置及系统级芯片soc

Country Status (1)

Country Link
CN (1) CN107609405B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109684030A (zh) * 2018-11-22 2019-04-26 海光信息技术有限公司 虚拟机内存密钥生成装置、以及方法、加密方法和SoC系统

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050213766A1 (en) * 2004-03-23 2005-09-29 Texas Instruments Incorporated Hybrid cryptographic accelerator and method of operation thereof
US8046571B1 (en) * 2006-12-18 2011-10-25 Marvell International Ltd. System-on-a-chip (SoC) security using one-time programmable memories
CN102725737A (zh) * 2009-12-04 2012-10-10 密码研究公司 可验证防泄漏的加密和解密
US9235712B1 (en) * 2009-04-01 2016-01-12 Marvell International Ltd. Securing external memory data
CN105678191A (zh) * 2016-03-02 2016-06-15 上海瓶钵信息科技有限公司 利用SoC内部存储提高系统安全性的方法、终端与系统

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050213766A1 (en) * 2004-03-23 2005-09-29 Texas Instruments Incorporated Hybrid cryptographic accelerator and method of operation thereof
US8046571B1 (en) * 2006-12-18 2011-10-25 Marvell International Ltd. System-on-a-chip (SoC) security using one-time programmable memories
US9235712B1 (en) * 2009-04-01 2016-01-12 Marvell International Ltd. Securing external memory data
CN102725737A (zh) * 2009-12-04 2012-10-10 密码研究公司 可验证防泄漏的加密和解密
CN105678191A (zh) * 2016-03-02 2016-06-15 上海瓶钵信息科技有限公司 利用SoC内部存储提高系统安全性的方法、终端与系统

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109684030A (zh) * 2018-11-22 2019-04-26 海光信息技术有限公司 虚拟机内存密钥生成装置、以及方法、加密方法和SoC系统
CN109684030B (zh) * 2018-11-22 2021-05-04 海光信息技术股份有限公司 虚拟机内存密钥生成装置、以及方法、加密方法和SoC系统

Also Published As

Publication number Publication date
CN107609405B (zh) 2020-08-18

Similar Documents

Publication Publication Date Title
EP3403185B1 (en) Memory operation encryption
CN109858265A (zh) 一种加密方法、装置及相关设备
CN103221961B (zh) 包括用于保护多用户敏感代码和数据的架构的方法和装置
US20170046281A1 (en) Address dependent data encryption
WO2020192406A1 (zh) 数据存储、验证方法及装置
US10313128B2 (en) Address-dependent key generator by XOR tree
CN105468940B (zh) 软件保护方法及装置
JPWO2004006075A1 (ja) 開放型汎用耐攻撃cpu及びその応用システム
WO2016064692A1 (en) Hybrid cryptographic key derivation
EP2990953B1 (en) Periodic memory refresh in a secure computing system
CN107391232A (zh) 一种系统级芯片soc及soc系统
CN107908574A (zh) 固态盘数据存储的安全保护方法
US20130124860A1 (en) Method for the Cryptographic Protection of an Application
CN105678173A (zh) 基于硬件事务内存的vTPM安全保护方法
CN103051963B (zh) 一种数字电视终端设备的安全控制方法
CN103051593A (zh) 一种数据安全摆渡的方法及系统
CN110659506A (zh) 基于密钥刷新对存储器进行重放保护
CN107911221B (zh) 固态盘数据安全存储的密钥管理方法
US20230409700A1 (en) Systems and methods for managing state
CN110932853B (zh) 一种基于可信模块的密钥管理装置和密钥管理方法
CN107609405A (zh) 一种外部安全内存装置及系统级芯片soc
CN109344632A (zh) 一种基于硬件加密卡的openstack卷加密方法
CN115499141A (zh) 一种基于属性的数据加密方法及装置
US20160299854A1 (en) Techniques for preventing physical attacks on contents of memory
TW202312707A (zh) 數據的備援載體及包含該數據的備援載體的備援系統

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
TA01 Transfer of patent application right

Effective date of registration: 20180110

Address after: 300143 Tianjin Haitai Huayuan Industrial Zone No. 18 West North 2-204 industrial incubation -3-8

Applicant after: Hai Guang Information Technology Co., Ltd.

Address before: 201203 3F, No. 1388, 02-01, Zhang Dong Road, Pudong New Area, Shanghai

Applicant before: Analog Microelectronics (Shanghai) Co., Ltd.

TA01 Transfer of patent application right
SE01 Entry into force of request for 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

Address after: 300143 Tianjin Haitai Huayuan Industrial Zone No. 18 West North 2-204 industrial incubation -3-8

Patentee after: Haiguang Information Technology Co., Ltd

Address before: 300143 Tianjin Haitai Huayuan Industrial Zone No. 18 West North 2-204 industrial incubation -3-8

Patentee before: HAIGUANG INFORMATION TECHNOLOGY Co.,Ltd.

CP01 Change in the name or title of a patent holder