CN114722410A - 一种密码模块、密码运算方法、cpu芯片及电子设备 - Google Patents

一种密码模块、密码运算方法、cpu芯片及电子设备 Download PDF

Info

Publication number
CN114722410A
CN114722410A CN202210392623.2A CN202210392623A CN114722410A CN 114722410 A CN114722410 A CN 114722410A CN 202210392623 A CN202210392623 A CN 202210392623A CN 114722410 A CN114722410 A CN 114722410A
Authority
CN
China
Prior art keywords
key
internal key
cpu
internal
cryptographic
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.)
Pending
Application number
CN202210392623.2A
Other languages
English (en)
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
Haiguang Information Technology 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 Haiguang Information Technology Co Ltd filed Critical Haiguang Information Technology Co Ltd
Priority to CN202210392623.2A priority Critical patent/CN114722410A/zh
Publication of CN114722410A publication Critical patent/CN114722410A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/602Providing cryptographic facilities or services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/64Protecting data integrity, e.g. using checksums, certificates or signatures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Computer Security & Cryptography (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Computer Hardware Design (AREA)
  • Storage Device Security (AREA)

Abstract

本发明实施例公开一种密码模块、密码运算方法、CPU芯片及电子设备,其中,所述密码模块内置于中央处理器CPU且与CPU运算核心隔离,所述密码模块包括:安全处理器,用于接收CPU运算核心发送的密码业务服务请求,获取内部密钥,将内部密钥发送给密码协处理器;密码协处理器,用于从系统内存中读取密码业务服务请求对应的源数据,根据内部密钥和源数据进行密码业务服务响应,将响应结果存储至系统内存;其中,安全处理器运行时的代码和数据存储在CPU外部的安全内存中,安全处理器访问安全内存时由硬件对访问内容进行加密和一致性保护。本发明实施例提供的技术方案可适用于密码机等相关密码应用中需要用到密码模块的场景,能够降低密码模块设计的成本、复杂度,增强其安全性。

Description

一种密码模块、密码运算方法、CPU芯片及电子设备
技术领域
本发明涉及信息安全技术领域,尤其涉及一种密码模块、密码运算方法、CPU芯片及电子设备。
背景技术
在密码机等相关密码应用中,常常需要用到专用的密码模块,密码模块除了提供高效的密码运算能力外,还需要提供一定的密钥管理的功能,确保密钥的安全。
目前常用的密码模块为专用的密码卡,如图1所示。密码卡插在系统主板上,通过PCIE总线与CPU相连,密码卡即实现上述密码模块的功能。但是,外接的专用密码卡通常存在以下几个主要的缺点:
成本上,密码卡需要使用额外的硬件,增加了硬件成本;
安全性上,密码卡完全通过外部总线与CPU相连,增加了暴露面,容易受总线类物理攻击。
发明内容
有鉴于此,本发明实施例提供一种密码模块、密码运算方法、CPU芯片及电子设备,以降低密码模块设计的成本,增强其安全性。
第一方面,本发明实施例提供一种密码模块,所述密码模块内置于CPU且与CPU运算核心隔离,所述密码模块包括:
安全处理器,用于接收CPU运算核心发送的密码业务服务请求,获取内部密钥,将内部密钥发送给密码协处理器;
密码协处理器,用于从系统内存中读取密码业务服务请求对应的源数据,根据内部密钥和源数据进行密码业务服务响应,将响应结果存储至系统内存;
其中,安全处理器运行时的代码和数据存储在CPU外部的安全内存中,安全处理器访问安全内存时由硬件对访问内容进行加密和一致性保护。
可选的,安全处理器用于获取内部密钥,具体包括:
安全处理器从CPU外部的安全非易失存储器中读取内部密钥,其中安全处理器访问该安全非易失存储器时对访问内容进行加密和一致性保护。
可选的,安全处理器用于获取内部密钥,具体包括:
安全处理器从系统内存读取密钥镜像,将密钥镜像解密并通过一致性校验后作为内部密钥;
其中,系统内存中的密钥镜像由CPU运算核心预先从硬盘文件系统中读取得到。
可选的,安全处理器,还用于:
与CPU运算核心通过管理接口进行内部密钥管理通信;
根据CPU运算核心的内部密钥管理操作,管理CPU外部的安全非易失存储器中的内部密钥;或者,
根据CPU运算核心的内部密钥管理操作,管理系统内存中的内部密钥镜像;当内部密钥镜像更新时,指示CPU运算核心将更新后的内部密钥镜像更新至硬盘文件系统。
可选的,内部密钥管理操作为导出/导入内部密钥操作时,安全处理器具体用于:
结合片内机密信息和内部密钥管理操作口令,生成保护密钥;
利用保护密钥,对需要导出的内部密钥进行加密及一致性保护;
或者,利用保护密钥,对需要导入的内部密钥进行解密及一致性校验。
可选的,安全处理器还用于:与CPU运算核心上的用户应用通过业务接口协商通信密钥,建立安全会话;
安全处理器与CPU运算核心上的用户应用在该安全会话的上下文内使用通信密钥加解密密码业务服务通信数据。
第二方面,本发明实施例提供一种密码运算方法,应用于安全处理器,所述方法包括:
接收CPU运算核心发送的密码业务服务请求;
获取内部密钥;
将内部密钥发送给密码协处理器,指示密码协处理器:从系统内存中读取密码业务服务请求对应的源数据,根据内部密钥和源数据进行密码业务服务响应,将响应结果存储至系统内存;
其中,安全处理器运行时的代码和数据存储在CPU外部的安全内存中,安全处理器访问安全内存时由硬件对访问内容进行加密和一致性保护。
可选的,获取内部密钥,具体包括:
从CPU外部的安全非易失存储器中读取内部密钥,其中访问该安全非易失存储器时对访问内容进行加密和一致性保护。
可选的,获取内部密钥,具体包括:
从系统内存读取密钥镜像,将密钥镜像解密并通过一致性校验后作为内部密钥;
其中,系统内存中的密钥镜像由CPU运算核心预先从硬盘文件系统中读取得到。
可选的,所述方法还包括:
与CPU运算核心通过管理接口进行内部密钥管理通信;
根据CPU运算核心的内部密钥管理操作,管理CPU外部的安全非易失存储器中的内部密钥;或者,
根据CPU运算核心的内部密钥管理操作,管理系统内存中的内部密钥镜像;当内部密钥镜像更新时,指示CPU运算核心将更新后的内部密钥镜像更新至硬盘文件系统。
可选的,内部密钥管理操作为导出/导入内部密钥操作时,所述内部密钥管理,包括:
结合片内机密信息和内部密钥管理操作口令,生成保护密钥;
利用保护密钥,对需要导出的内部密钥进行加密及一致性保护;
或者,利用保护密钥,对需要导入的内部密钥进行解密及一致性校验。
可选的,所述方法还包括与CPU运算核心上的用户应用通过业务接口协商通信密钥,建立安全会话;
安全处理器与CPU运算核心上的用户应用在该安全会话的上下文内使用通信密钥加解密密码业务服务通信数据。
第三方面,本发明实施例提供一种中央处理CPU芯片,包括:CPU运算核心;以及,如上述第一方面所述的密码模块。
第四方面,本发明实施例提供一种电子设备,所述电子设备包括:壳体、处理器、存储器、电路板和电源电路,其中,电路板安置在壳体围成的空间内部,处理器和存储器设置在电路板上;电源电路,用于为上述电子设备的各个电路或器件供电;存储器用于存储可执行程序代码;处理器通过读取存储器中存储的可执行程序代码来运行与可执行程序代码对应的程序,用于执行前述第二方面所述的方法。
本发明实施例提供的技术方案,充分利用集成电路的性价优势,通过在CPU芯片内部集成安全处理器和专用密码协处理器来实现通用密码模块的功能,一方面降低了系统硬件成本和复杂度,另一方面安全处理器和专用密码协处理器均位于CPU芯片内部且与CPU运算核心隔离,减少了对外暴露面,增强了安全性。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。
图1为现有技术中一种CPU外接密码卡的硬件结构示意图;
图2为本发明实施例所适用的一种整体硬件架构示意图;
图3为本发明实施例提供的一种内部密钥存储在片外非易失存储器的硬件架构示意图;
图4为本发明实施例提供的一种内部密钥存储在硬盘的硬件架构示意图;
图5为本发明实施例提供的一种SP上密码业务服务及密钥管理实现的软件架构示意图;
图6为本发明实施例提供的一种内部密钥导入导出保护方案示意图;
图7为本发明实施例提供的一种安全会话访问示意图;
图8为本发明实施例提供的一种密码运算方法流程示意图;
图9为本发明实施例提供的一种电子设备结构示意图。
具体实施方式
下面结合附图对本发明实施例进行详细描述。
应当明确,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
首先,对本发明实施例中涉及的部分名词做简要阐述。
CCP:CryptoCo-Processor,CPU芯片内集成的密码协处理器;
CEK:Chip Endorsement Key,芯片背书密钥,私钥位于芯片内部,是片内机密信息;公钥有厂商或权威第三方颁发的公钥证书,用来证明芯片身份的真实性;
SP:SecureProcessor,CPU芯片内集成的安全处理器,主要负责处理CPU安全相关的任务。
下面,通过各实施例详细介绍本发明的技术方案。
实施例一
本实施例提供一种密码模块,适用于如图2所示的整体硬件架构。该硬件架构中,在CPU芯片内部除了本来的运算核心(图中以X86核心为例)200,还集成了密码模块(安全处理器SP 201和密码协处理器CCP 202),CPU芯片外有系统内存203和安全内存204。
SP接收CPU运算核心发送的密码业务服务请求,获取内部密钥,将内部密钥发送给密码协处理器;
CCP从系统内存中读取密码业务服务请求对应的源数据,根据内部密钥和源数据进行密码业务服务响应,将响应结果存储至系统内存。
其中,SP运行时的代码和数据存储在CPU外部的安全内存中,安全内存为SP所有,CPU运算核心无法访问,为防止内存相关物理攻击,SP访问安全内存时由硬件对访问内容进行加密和一致性保护。密码业务服务可以是密码运算,CCP主要负责各种密码算法的实现,提供高效的密码运算能力,CCP可以直接从系统内存读取源数据,运算完成后将结果数据放回系统内存,保证密码运算的高效,其中密码业务服务响应结果的生成过程为现有技术,在此不再赘述。
密码模块内密钥包括内部密钥,内部密钥由管理员维护并分配给具体的用户使用,具有如下属性:
内部密钥有使用权限检查,进一步分为设备密钥和用户密钥;
设备密钥跟设备绑定,每个设备唯一,可以代表设备的身份信息;
用户密钥可以包括对称密钥和非对称密钥,对称密钥及非对称密钥典型地都可以用来加解密用户生成或导入的会话密钥,非对称密钥还用来签名验签用户数据;
用户密钥使用固定的密钥索引,用户通过指定索引可以访问到分配到的用户密钥。
其中,会话密钥由用户一个会话期间临时生成或外部导入的密钥,可以是任何类型(对称或非对称),用户使用它来进行任何想要的密钥运算(加解密,签名验签等)。一旦会话结束会话密钥自动销毁。用户在会话内访问自己的会话密钥可以使用索引,也可以使用句柄。
内部密钥要求断电不丢失,故需要持久存储,即非易失存储。通常CPU芯片内部非易失存储空间非常有限,当片内非易失存储无法满足需求时需要片外存储。作为一种具体实施方式,如图3所示,在CPU芯片外部部署与SP连接的专用安全非易失存储器(图3中具体为安全闪存Flash),内部密钥存储在该专用安全非易失存储器中,SP可以直接从该专用安全非易失存储器中读取或写入内部密钥。为防止发生对专用安全非易失存储器的物理攻击,专用安全非易失存储器中存储的内部密钥需要进行加密和一致性保护。
考虑到使用片外安全非易失存储器会导致额外的硬件要求,同时存储空间大小也可能受限,本实施例还提出另一种实施方式,将内部密钥经由CPU运算核心存储在硬盘文件系统,SP获取内部密钥,包括:SP从系统内存读取密钥镜像,将密钥镜像解密并通过一致性校验后作为内部密钥,其中,系统内存中的密钥镜像由CPU运算核心预先从硬盘文件系统中读取得到。其中,密钥镜像包含所有需要持久存储的内部密钥,在硬盘及系统内存中时均进行加密及一致性保护,所需密钥的机密信息由SP内部产生,外部无法获知。具体实施时,如图4所示:
①系统启动时,由CPU运算核心从硬盘文件系统中读取保存的密钥镜像;
②CPU运算核心将密钥镜像装载到系统内存中,并将相关地址信息通知到SP;
③SP具有直接访问系统内存的权限,需要时直接从系统内存按格式读取所需密钥,并在SP内部解密及校验一致性后使用。
实施例二
本实施例在上述实施例一提供技术方案的基础上,对SP作接口划分、密钥管理、安全会话等功能上的优化。如图5所示,本实施例中,SP对外提供的接口可以分为“业务”和“管理”两类接口。业务接口供上层用户使用,主要提供密码业务服务处理及会话密钥管理相关功能,如加密解密、签名验签、HMAC(Hash-based Message Authentication Code,哈希运算消息验证码)验证、生成对称或非对称会话密钥、导入或导出会话密钥等;管理接口由设备管理员使用,主要提供内部密钥及设备管理功能。以下详细介绍SP的内部密钥管理和密码业务服务功能。
1、内部密钥管理
SP与CPU运算核心通过管理接口进行内部密钥管理通信;
SP根据CPU运算核心的内部密钥管理操作,管理CPU外部的安全非易失存储器中的内部密钥;或者,
SP根据CPU运算核心的内部密钥管理操作,管理系统内存中的内部密钥镜像;当内部密钥镜像更新时,指示CPU运算核心将更新后的内部密钥镜像更新至硬盘文件系统。
其中,内部密钥管理操作可以是增加、删除或更新内部密钥、修改内部密钥的访问权限口令、导入导出内部密钥、设置管理访问权限等。
示例性的,如图4所示,④当需要更新内部密钥时,SP将施加加密及一致性保护后的内部密钥写入系统内存中密钥镜像;⑤需要时,如系统内存中更新了内部密钥,CPU运算核心读取系统内存中的密钥镜像并写入硬盘文件系统。
示例性的,内部密钥管理操作为导出/导入内部密钥操作时,SP具体用于:
结合片内机密信息和内部密钥管理操作口令,生成保护密钥;
利用保护密钥,对需要导出的内部密钥进行加密及一致性保护;
或者,利用保护密钥,对需要导入的内部密钥进行解密及一致性校验。
在实际应用当中,密码模块自身往往存在有密钥备份及恢复之类的需求,这些需求都导致内部密钥离开了SP这个可信区域,因此需要进行保护。对此,本实施例提供了一种基于片内机密信息和片外管理员口令的联合保护方案,如图6所示,CPU芯片内部设置一个统一的片内机密信息,不同的CPU芯片(可以要求是同一产品系列)内该机密信息相同;管理员对内部密钥进行导出的时候再输入一个口令,然后SP内部综合片内机密信息和管理员输入的口令再生成所需的保护密钥,这个保护密钥用来对导出的内部密钥进行加密及一致性保护。从外部导入密钥的过程与导出过程类似,生成同样的保护密钥,然后利用保护密钥对导入密钥进行解密及一致性校验。该密钥保护方案保证了导出的内部密钥必须由合法的管理员在真实的SP密码模块内部进行恢复,防止了密码明文暴露及被非法使用的风险。例如,对需要导出的内部密钥进行加密及一致性保护后会生成内部密钥镜像,该镜像以文件的形式记载了内部密钥,存在于SP外部。相应的,在需要导入内部密钥时,也是将存在于SP外部的内部密钥镜像导入,对镜像记载的内部密钥进行解密及一致性保护。
2、密码业务服务处理
本实施例中,CPU运算核心上的用户应用通过业务接口访问密码模块的密码业务服务,为确保访问过程的安全,如图7所示,SP与CPU运算核心上的用户应用通过业务接口协商通信密钥,建立安全会话,后续SP与CPU运算核心上的用户应用在该安全会话的上下文内进行密码业务服务通信,通信过程中:CPU运算核心上的用户应用请求SP打开并获取内部密钥使用权限;SP基于内部密钥为CPU运算核心上的用户应用提供密码运算服务;SP将密码运算服务结果返回给CPU运算核心。通信期间,SP与CPU运算核心上的用户应用之间交互的密码业务服务通信数据使用通信密钥加解密密码业务服务通信数据,也即安全会话的通信密钥是用来保护用户应用和SP之间的通信用的,一般通信密钥是对称密钥。密码运算服务访问结束后,关闭内部密钥,销毁安全会话,所有访问过程中产生的机密信息也全部销毁。
本实施例中基于安全会话的访问方式,可以确保访问内容不被外部窃取或篡改,外部也无法伪造对密码模块的访问;访问结束后,销毁安全会话,所有访问过程中产生的机密信息也全部销毁。此外,作为一种可选方案,SP有自己的CEK公钥证书证明自己的身份,当用户应用需要访问密钥业务服务时,如图7所示,可以在建立安全会话之前,用户应用先通过验证CEK公钥证书确认对方身份的真实性,防止使用虚假的密码模块带来的风险。
本实施例中,SP模块主要负责密钥等机密信息的管理及密码模块相关接口的实现,具有以下特点:
拥有自己专用的硬件资源,本身是一个可信的执行环境,其运行不受CPU运算核心的干扰;
SP模块上运行的所有软件都由相关安全机制(如数字签名)验证,确保都是可信的;
CPU运算核心与SP通过内部硬件接口进行通信,CPU运算核心只能调用SP预定的功能,调用非预定功能会被SP直接拒绝;
SP内置了芯片背书密钥CEK,CEK私钥是芯片的机密信息,外部无法获知,每一个CEK都有公开的CEK公钥证书证明其身份真实性。
实施例三
本实施例提供了一种密码运算方法,应用于如图2所示的密码模块中的安全处理器SP。参见图8,密码运算方法包括:
步骤801、接收CPU运算核心发送的密码业务服务请求;
步骤802、获取内部密钥;
步骤803、将内部密钥发送给密码协处理器,指示密码协处理器:从系统内存中读取密码业务服务请求对应的源数据,根据内部密钥和源数据进行密码业务服务响应,将响应结果存储至系统内存;
其中,安全处理器运行时的代码和数据存储在CPU外部的安全内存中,安全处理器访问安全内存时由硬件对访问内容进行加密和一致性保护。
作为一种具体实施方式,获取内部密钥,具体包括:从CPU外部的安全非易失存储器中读取内部密钥,其中访问该安全非易失存储器时对访问内容进行加密和一致性保护。
相应的,本实施例中的密码运算方法还可包括如下步骤:与CPU运算核心通过管理接口进行内部密钥管理通信;根据CPU运算核心的内部密钥管理操作,管理CPU外部的安全非易失存储器中的内部密钥;
作为另一种具体实施方式,获取内部密钥,具体包括:从系统内存读取密钥镜像,将密钥镜像解密并通过一致性校验后作为内部密钥;其中,系统内存中的密钥镜像由CPU运算核心预先从硬盘文件系统中读取得到。
相应的,本实施例中的密码运算方法还可包括如下步骤:与CPU运算核心通过管理接口进行内部密钥管理通信;根据CPU运算核心的内部密钥管理操作,管理系统内存中的内部密钥镜像;当内部密钥镜像更新时,指示CPU运算核心将更新后的内部密钥镜像更新至硬盘文件系统。
示例性的,内部密钥管理操作为导出/导入内部密钥操作时,所述内部密钥管理,可包括如下步骤:
结合片内机密信息和内部密钥管理操作口令,生成保护密钥;
利用保护密钥,对需要导出的内部密钥进行加密及一致性保护;
或者,利用保护密钥,对需要导入的内部密钥进行解密及一致性校验。
示例性的,所述方法还包括:与CPU运算核心上的用户应用通过业务接口协商通信密钥,建立安全会话;
与CPU运算核心上的用户应用在该安全会话的上下文内使用通信密钥加解密密码业务服务通信数据。
本实施例提供的密码运算方法与前述密码模块实施例属于同一发明构思,未在本实施例中描述的技术细节可参见前述方法实施例中的相关描述,在此不再赘述。
此外,本发明实施例还提供了一种CPU芯片,该CPU芯片包括:CPU运算核心,以及,上述实施例一或者实施例二中提供的密码模块。
本发明实施例提供的技术方案,充分利用集成电路的性价优势,通过在CPU芯片内集成安全处理器SP模块及密码协处理器CCP模块,再加上相关的软件支持,可以直接在CPU内提供密码卡的功能,并解决密码卡方案在成本和安全性上的两个缺点。
图9为本发明电子设备一个实施例的结构示意图,可以实现本发明图8所示实施例的流程,如图9所示,上述电子设备可以包括:壳体91、处理器92、存储器93、电路板94和电源电路95,其中,电路板94安置在壳体91围成的空间内部,处理器92和存储器93设置在电路板94上;电源电路95,用于为上述电子设备的各个电路或器件供电;存储器93用于存储可执行程序代码;处理器92通过读取存储器93中存储的可执行程序代码来运行与可执行程序代码对应的程序,用于执行前述任一实施例所述的图片解码测试方法。
处理器92对上述步骤的具体执行过程以及处理器92通过运行可执行程序代码来进一步执行的步骤,可以参见本发明图8所示实施例的描述,在此不再赘述。
该电子设备以多种形式存在,包括但不限于:
(1)移动通信设备:这类设备的特点是具备移动通信功能,并且以提供话音、数据通信为主要目标。这类终端包括:智能手机(例如iPhone)、多媒体手机、功能性手机,以及低端手机等。
(2)超移动个人计算机设备:这类设备属于个人计算机的范畴,有计算和处理功能,一般也具备移动上网特性。这类终端包括:PDA、MID和UMPC设备等,例如iPad。
(3)便携式娱乐设备:这类设备可以显示和播放多媒体内容。该类设备包括:音频、视频播放器(例如iPod),掌上游戏机,电子书,以及智能玩具和便携式车载导航设备。
(4)服务器:提供计算服务的设备,服务器的构成包括处理器、硬盘、内存、系统总线等,服务器和通用的计算机架构类似,但是由于需要提供高可靠的服务,因此在处理能力、稳定性、可靠性、安全性、可扩展性、可管理性等方面要求较高。
(5)其他具有数据处理功能的电子设备。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
本发明实施例中术语“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。
本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。
尤其,对于装置实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
为了描述的方便,描述以上装置是以功能分为各种单元/模块分别描述。当然,在实施本发明时可以把各单元/模块的功能在同一个或多个软件和/或硬件中实现。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)或随机存储记忆体(Random AccessMemory,RAM)等。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。

Claims (14)

1.一种密码模块,其特征在于,所述密码模块内置于中央处理器CPU且与CPU运算核心隔离,所述密码模块包括:
安全处理器,用于接收CPU运算核心发送的密码业务服务请求,获取内部密钥,将内部密钥发送给密码协处理器;
密码协处理器,用于从系统内存中读取密码业务服务请求对应的源数据,根据内部密钥和源数据进行密码业务服务响应,将响应结果存储至系统内存;
其中,安全处理器运行时的代码和数据存储在CPU外部的安全内存中,安全处理器访问安全内存时由硬件对访问内容进行加密和一致性保护。
2.根据权利要求1所述的密码模块,其特征在于,安全处理器用于获取内部密钥,具体包括:
安全处理器从CPU外部的安全非易失存储器中读取内部密钥,其中安全处理器访问该安全非易失存储器时对访问内容进行加密和一致性保护。
3.根据权利要求1所述的密码模块,其特征在于,安全处理器用于获取内部密钥,具体包括:
安全处理器从系统内存读取密钥镜像,将密钥镜像解密并通过一致性校验后作为内部密钥;
其中,系统内存中的密钥镜像由CPU运算核心预先从硬盘文件系统中读取得到。
4.根据权利要求2或3所述的密码模块,其特征在于,安全处理器,还用于:
与CPU运算核心通过管理接口进行内部密钥管理通信;
根据CPU运算核心的内部密钥管理操作,管理CPU外部的安全非易失存储器中的内部密钥;或者,
根据CPU运算核心的内部密钥管理操作,管理系统内存中的内部密钥镜像;当内部密钥镜像更新时,指示CPU运算核心将更新后的内部密钥镜像更新至硬盘文件系统。
5.根据权利要求4所述的密码模块,其特征在于,内部密钥管理操作为导出/导入内部密钥操作时,安全处理器具体用于:
结合片内机密信息和内部密钥管理操作口令,生成保护密钥;
利用保护密钥,对需要导出的内部密钥进行加密及一致性保护;
或者,利用保护密钥,对需要导入的内部密钥进行解密及一致性校验。
6.根据权利要求1所述的密码模块,其特征在于,安全处理器还用于:与CPU运算核心上的用户应用通过业务接口协商通信密钥,建立安全会话;
安全处理器与CPU运算核心上的用户应用在该安全会话的上下文内使用通信密钥加解密密码业务服务通信数据。
7.一种密码运算方法,其特征在于,应用于安全处理器,所述方法包括:
接收CPU运算核心发送的密码业务服务请求;
获取内部密钥;
将内部密钥发送给密码协处理器,指示密码协处理器:从系统内存中读取密码业务服务请求对应的源数据,根据内部密钥和源数据进行密码业务服务响应,将响应结果存储至系统内存;
其中,安全处理器运行时的代码和数据存储在CPU外部的安全内存中,安全处理器访问安全内存时由硬件对访问内容进行加密和一致性保护。
8.根据权利要求7所述的密码运算方法,其特征在于,获取内部密钥,具体包括:
从CPU外部的安全非易失存储器中读取内部密钥,其中访问该安全非易失存储器时对访问内容进行加密和一致性保护。
9.根据权利要求7所述的密码运算方法,其特征在于,获取内部密钥,具体包括:
从系统内存读取密钥镜像,将密钥镜像解密并通过一致性校验后作为内部密钥;
其中,系统内存中的密钥镜像由CPU运算核心预先从硬盘文件系统中读取得到。
10.根据权利要求8或9所述的密码运算方法,其特征在于,所述方法还包括:
与CPU运算核心通过管理接口进行内部密钥管理通信;
根据CPU运算核心的内部密钥管理操作,管理CPU外部的安全非易失存储器中的内部密钥;或者,
根据CPU运算核心的内部密钥管理操作,管理系统内存中的内部密钥镜像;当内部密钥镜像更新时,指示CPU运算核心将更新后的内部密钥镜像更新至硬盘文件系统。
11.根据权利要求10所述的密码运算方法,其特征在于,内部密钥管理操作为导出/导入内部密钥操作时,所述内部密钥管理,包括:
结合片内机密信息和内部密钥管理操作口令,生成保护密钥;
利用保护密钥,对需要导出的内部密钥进行加密及一致性保护;
或者,利用保护密钥,对需要导入的内部密钥进行解密及一致性校验。
12.根据权利要求7所述的密码运算方法,其特征在于,所述方法还包括:与CPU运算核心上的用户应用通过业务接口协商通信密钥,建立安全会话;
与CPU运算核心上的用户应用在该安全会话的上下文内使用通信密钥加解密密码业务服务通信数据。
13.一种中央处理CPU芯片,其特征在于,包括:CPU运算核心;以及,如上述权利要求1-6中任一项所述的密码模块。
14.一种电子设备,其特征在于,所述电子设备包括:壳体、处理器、存储器、电路板和电源电路,其中,电路板安置在壳体围成的空间内部,处理器和存储器设置在电路板上;电源电路,用于为上述电子设备的各个电路或器件供电;存储器用于存储可执行程序代码;处理器通过读取存储器中存储的可执行程序代码来运行与可执行程序代码对应的程序,用于执行前述7-12中任一权利要求所述的方法。
CN202210392623.2A 2022-04-13 2022-04-13 一种密码模块、密码运算方法、cpu芯片及电子设备 Pending CN114722410A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210392623.2A CN114722410A (zh) 2022-04-13 2022-04-13 一种密码模块、密码运算方法、cpu芯片及电子设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210392623.2A CN114722410A (zh) 2022-04-13 2022-04-13 一种密码模块、密码运算方法、cpu芯片及电子设备

Publications (1)

Publication Number Publication Date
CN114722410A true CN114722410A (zh) 2022-07-08

Family

ID=82244217

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210392623.2A Pending CN114722410A (zh) 2022-04-13 2022-04-13 一种密码模块、密码运算方法、cpu芯片及电子设备

Country Status (1)

Country Link
CN (1) CN114722410A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117560147A (zh) * 2023-11-29 2024-02-13 海光信息技术股份有限公司 密码配置方法、密码服务方法及其相关设备

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117560147A (zh) * 2023-11-29 2024-02-13 海光信息技术股份有限公司 密码配置方法、密码服务方法及其相关设备

Similar Documents

Publication Publication Date Title
JP6151402B2 (ja) データセンタへのプラットフォームの内包検証
JP4668619B2 (ja) 装置鍵
CN110417750B (zh) 基于区块链技术的文件读取和存储的方法、终端设备和存储介质
KR101657613B1 (ko) 보안 저장 장치에 저장된 디지털 컨텐츠의 백업
US20050283662A1 (en) Secure data backup and recovery
JP2002229861A (ja) 著作権保護機能つき記録装置
CN111401901B (zh) 生物支付设备的认证方法、装置、计算机设备和存储介质
CN110445840B (zh) 一种基于区块链技术的文件存储和读取的方法
CN107911221B (zh) 固态盘数据安全存储的密钥管理方法
KR20070059891A (ko) 어플리케이션 인증 보안 시스템 및 그 인증 보안 방법
CN114329511A (zh) 一种基于身份认证的虚拟机加密方法、系统、设备和介质
CN114722410A (zh) 一种密码模块、密码运算方法、cpu芯片及电子设备
CN110851851B (zh) 一种块链式账本中的权限管理方法、装置及设备
CN114244565B (zh) 密钥分发方法、装置、设备及存储介质
US20240193255A1 (en) Systems and methods of protecting secrets in use with containerized applications
CN115618306A (zh) 一种软件保护方法、装置、系统、cpu芯片及电子设备
CN113010908B (zh) 一种适用于大容量sim卡的安全存储方法
WO2024138322A1 (zh) 一种处理器、信息认证系统和信息认证方法
JP5180264B2 (ja) 装置鍵
CN118413839A (zh) 通信认证方法、装置、计算机设备、可读存储介质和程序产品
CN116415270A (zh) 一种文件应用管理方法及装置
CN117910057A (zh) 可信执行环境的运行方法、计算机架构系统、加密硬盘
CN115361140A (zh) 安全芯片密钥验证方法及装置
CN115828223A (zh) 操作系统登录方法、电子设备及存储介质
CN110059489A (zh) 安全电子设备

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination