CN116186727A - 一种数据加密方法、解密方法及其相关设备 - Google Patents

一种数据加密方法、解密方法及其相关设备 Download PDF

Info

Publication number
CN116186727A
CN116186727A CN202211573507.7A CN202211573507A CN116186727A CN 116186727 A CN116186727 A CN 116186727A CN 202211573507 A CN202211573507 A CN 202211573507A CN 116186727 A CN116186727 A CN 116186727A
Authority
CN
China
Prior art keywords
user
encryption
processor
data
memory
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
CN202211573507.7A
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 CN202211573507.7A priority Critical patent/CN116186727A/zh
Publication of CN116186727A publication Critical patent/CN116186727A/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/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/78Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure storage of data

Landscapes

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

Abstract

本申请实施例提供一种数据加密方法、解密方法及其相关设备,其中,所述数据加密方法包括:获取处理器发送的加密请求,所述加密请求用于请求安全处理器对存入内存中的用户机密数据进行加密;根据所述加密请求,确定存储于所述安全处理器的内部存储中的用户密钥;基于所述用户密钥,执行所述用户机密数据的加密流程,并将对应所述用户机密数据的密文存入内存的预设位置。本申请实施例能够实现对内存中用户机密数据的保护,提升用户数据的安全性。

Description

一种数据加密方法、解密方法及其相关设备
技术领域
本申请实施例涉及计算机技术领域,具体涉及一种数据加密方法、解密方法及其相关设备。
背景技术
用户在使用计算机系统过程中所用到的全部数据都保存在计算机内存中,其中包括用户的私密数据,如用户的加解密密钥、签名私钥等,还包括用户的私人数据,如金融数据,个人健康数据等。
然而,对于恶意攻击者来说,有多种手段窃取内存中的数据,例如:运行于服务器上的恶意用户程序,利用操作系统的漏洞,在获取操作系统权限后,即可读取物理内存中的全部数据,从而窃取用户数据,或者,在对计算机强制关机后冷启动系统,利用内存中的数据在短时间内仍会有效的缺陷,快速复制内存中的全部数据,再对数据进行离线分析,得到用户的机密数据。
可见,保存在内存中的用户数据被恶意窃取的风险很大,用户数据的安全性有待提高。
发明内容
有鉴于此,本申请实施例提供一种数据加密方法、解密方法及其相关设备,保障用户密钥的机密性,进而利用用户密钥加密用户机密数据,使得用户机密数据能够以密文形式保存在内存中,实现对用户机密数据的保护,提升用户数据的安全性。
为实现上述目的,本申请实施例提供如下技术方案:
第一方面,本申请实施例提供一种数据加密方法,应用于安全处理器,所述方法包括:
获取处理器发送的加密请求,所述加密请求用于请求所述安全处理器对存入内存中的用户机密数据进行加密;
根据所述加密请求,确定存储于所述安全处理器的内部存储中的用户密钥;
基于所述用户密钥,执行所述用户机密数据的加密流程,并将对应所述用户机密数据的密文存入内存的预设位置。
第二方面,本申请实施例提供一种数据加密方法,应用于处理器,所述方法包括:
向内存中存入用户机密数据;
发送加密请求至安全处理器,所述加密请求用于请求所述安全处理器对所述用户机密数据进行加密,以使得所述安全处理器根据所述加密请求,确定存储于所述安全处理器的内部存储中的用户密钥,基于所述用户密钥,执行所述用户机密数据的加密流程,并将对应所述用户机密数据的密文存入内存的预设位置;
接收加密完成通知,获取对应所述用户机密数据的密文。
第三方面,本申请实施例还提供一种数据解密方法,应用于安全处理器,所述方法包括:
获取处理器发送的解密请求,所述解密请求用于请求所述安全处理器对内存中的用户机密数据的密文进行解密;
根据所述解密请求,确定存储于所述安全处理器的内部存储中的用户密钥;
基于所述用户密钥,执行所述用户机密数据的密文的解密流程,并将对应所述用户机密数据的明文存入内存的预设位置。
第四方面,本申请实施例还提供一种数据解密方法,应用于处理器,所述方法包括:
发送解密请求至安全处理器,所述解密请求用于请求所述安全处理器对内存中的用户机密数据的密文进行解密,以使得所述安全处理器根据所述解密请求,确定存储于所述安全处理器的内部存储中的用户密钥,基于所述用户密钥,执行所述用户机密数据的密文的解密流程,并将对应所述用户机密数据的明文存入内存的预设位置;
接收解密完成通知,获取对应所述用户机密数据的明文。
第五方面,本申请实施例还提供一种数据加密装置,应用于安全处理器,包括:
获取模块,用于获取处理器发送的加密请求,所述加密请求用于请求所述安全处理器对存入内存中的用户机密数据进行加密;
密钥确定模块,用于根据所述加密请求,确定存储于所述安全处理器的内部存储中的用户密钥;
执行模块,用于基于所述用户密钥,执行所述用户机密数据的加密流程,并将对应所述用户机密数据的密文存入内存的预设位置。
第六方面,本申请实施例还提供一种数据加密装置,应用于处理器,包括:
写入模块,用于向内存中存入用户机密数据;
发送模块,用于发送加密请求至安全处理器,所述加密请求用于请求所述安全处理器对所述用户机密数据进行加密,以使得所述安全处理器根据所述加密请求,确定存储于所述安全处理器的内部存储中的用户密钥,基于所述用户密钥,执行所述用户机密数据的加密流程,并将对应所述用户机密数据的密文存入内存的预设位置;
接收模块,用于接收加密完成通知,获取对应所述用户机密数据的密文。
第七方面,本申请实施例还提供一种数据解密装置,应用于安全处理器,所述装置包括:
获取模块,用于获取处理器发送的解密请求,所述解密请求用于请求所述安全处理器对内存中的用户机密数据的密文进行解密;
密钥确定模块,用于根据所述解密请求,确定存储于所述安全处理器的内部存储中的用户密钥;
执行模块,用于基于所述用户密钥,执行所述用户机密数据的密文的解密流程,并将对应所述用户机密数据的明文存入内存的预设位置。
第八方面,本申请实施例还提供一种数据解密装置,应用于处理器,所述装置包括:
发送模块,用于向安全处理器发送解密请求,所述解密请求用于请求所述安全处理器对内存中的用户机密数据的密文进行解密,以使得所述安全处理器根据所述解密请求,确定存储于所述安全处理器的内部存储中的用户密钥,基于所述用户密钥,执行所述用户机密数据的密文的解密流程,并将对应所述用户机密数据的明文存入内存的预设位置;
接收模块,用于接收解密完成通知,获取对应所述用户机密数据的明文。
第九方面,本申请实施例还提供一种安全处理器,所述安全处理器用于执行如上述第一方面所述的数据加密方法和/或用于执行如上述第三方面所述的数据解密方法。
第十方面,本申请实施例还提供一种处理器,所述处理器用于执行如上述第二方面所述的数据加密方法和/或用于执行如上述第四方面所述的数据解密方法。
第十一方面,本申请实施例还提供一种计算机设备,包括如上述第九方面所述的安全处理器和如上述第十方面所述的处理器。
第十二方面,本申请实施例提供一种存储介质,所述存储介质存储一条或多条计算机可执行指令,所述一条或多条计算机可执行指令被执行时,实现如上述第一方面和/或第二方面所述的数据加密方法,或者,如上述第三方面和/或第四方面所述的数据解密方法。
本申请实施例所提供的数据加密方法及其相关设备,其中,所述方法应用于安全处理器,通过获取处理器发送的加密请求,所述加密请求用于请求安全处理器对存入内存中的用户机密数据进行加密,进而根据所述加密请求,确定存储于所述安全处理器的内部存储中的用户密钥,基于所述用户密钥,执行所述用户机密数据的加密流程,并将对应所述用户机密数据的密文存入内存的预设位置。
可以看出,本申请实施例通过将用户密钥存储于安全处理器的内部存储,使得用户密钥不能被任意读取,提升了用户密钥的安全性,进而通过安全处理器利用用户密钥加密用户机密数据,并将对应所述用户机密数据的密文存入内存的预设位置,使得用户机密数据在内存中以密文形式保存,实现对内存中用户机密数据的保护,提升了用户数据的安全性。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1是本申请实施例提供的计算机系统一可选架构框图。
图2是本申请实施例提供的数据加密方法的可选流程图。
图3是本申请实施例提供的数据加密进程的可选示例图。
图4是本申请实施例提供的计算机系统的另一架构可选框图。
图5是本申请实施例提供的数据加密进程的另一可选示例图。
图6是本申请实施例提供的数据加密方法的另一可选流程图。
图7是本申请实施例提供的步骤S20在初始状态时执行的可选流程图。
图8是本申请实施例提供的步骤S20在运行状态时执行的可选流程图。
图9是本申请实施例提供的数据解密方法的可选流程图。
图10是本申请实施例提供的数据加密装置的可选框图。
图11是本申请实施例提供的数据加密装置的另一可选框图。
图12是本申请实施例提供的计算机设备的可选框图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
在计算机系统的使用过程中,用户所用到的全部数据都保存在物理内存,其中,为保证计算机系统的物理内存中数据的安全性,通常将数据输入计算机系统时先进行加密,从而数据能够在内存中以密文形式存储,并对密文数据进行解密后再使用。但是,用户在加密或者解密内存中的密文数据时,需要使用密钥运算,此时用户密钥会出现在计算机系统的物理内存中,由于攻击者有多种手段窃取物理内存中的数据,因此,出现在物理内存中的密钥存在被窃取泄漏的风险,进而,内存中存储的用户机密数据将面临泄漏的风险。
作为一种可选实现,可以利用第二把密钥,保护内存中进行数据加解密的第一把密钥,但是第二把密钥仍会出现在物理内存中,同样存在密钥泄漏的风险,无法提高内存中用户数据的安全性。
有鉴于此,本申请实施例提出改进的数据加解密方案,通过设置安全处理器实现对用户密钥的保护,进一步的,安全处理器还可提供对写入内存中的用户机密数据进行加解密的功能。
需要说明的是,安全处理器可以是物理主机的芯片硬件系统中高安全级别的部件;在一种可选实现中,安全处理器可拥有比处理器更高的权限,安全处理器和其控制的软件可由生产商在芯片生产过程中定制,并实现本申请实施例提供的对用户写入内存中的用户机密数据进行加密的功能;可选的,安全处理器可以是由安全处理器核心和安全处理器的内部存储等共同组成的,具有完整的封闭运行环境。
其中,图1示例性的示出了本申请实施例提供的计算机系统一可选架构框图。如图1所示,可以包括:SOC(System-on-a-Chip,系统级芯片/片上系统)10和物理内存20。
SOC 10可以包括处理器110和安全处理器120,并且,处理器110和安全处理器120之间建立有消息交互通道。通过消息交互通道,处理器可以向安全处理器发送请求,安全处理器可以向处理器回复请求处理结果。
需要说明的是,处理器110是在处理器核心的基础上,进一步集成更多功能器件的集成电路,处理器核是处理器的运算和控制核心,是数据处理、程序运行的最终执行单元,主要用于执行处理器的计算、数据处理等工作。作为一种可选实现,图1中通过消息交互通道与安全处理器进行信息交互的可以是多核处理器的主处理器核心。
参考图1所示,安全处理器120可以包括安全处理器核心121和内部存储122,其中,安全处理器核心121和内部存储122可以是独立于处理器110,与处理器110相互隔离的安全处理器的使用资源,并且,对于安全处理器的内部存储,处理器无法访问,其可以例如是安全处理器的本地存储。由于安全处理器具有安全处理器核心和内部存储等独立的执行单元,从而能够组成封闭的可执行环境,因此,除安全处理器主动对外共享的数据外,外部无法访问安全处理器本身的数据。
物理内存20是计算机系统的硬件存储设备,用于在计算机系统运行时为操作系统和程序提供临时储存,其中,SOC 10可以通过系统总线向物理内存20进行数据的写入和读取。
因此,基于安全处理器的封闭的可执行环境,可以将用户密钥存储于安全处理器的内部存储,使得用户密钥不能被任意读取,从而提升用户密钥的安全性,进而利用安全处理器,辅助处理器加密用户机密数据,并将加密后的用户机密数据的密文存入内存中,使得用户机密数据以密文形式保存在内存中,实现对内存中用户机密数据的保护,提升了用户数据的安全性。
图2示例性的示出了本申请实施例提供的数据加密方法的可选流程图,该方法流程可由图1所示的安全处理器和处理器执行实现。其中,为便于图2所示的数据加密方法中处理器与安全处理器的交互,图3示例性的示出了本申请实施例中数据加密进程的可选示例图,图3中以SOC内部的主处理器核心与安全处理器进行信息传输,且安全处理器的本地存储存储有用户密钥(图中示为Kuser)为例进行对应参照。
如图2所示,数据加密方法流程可以包括如下步骤。
步骤S21,处理器向内存中存入用户机密数据。
所述用户机密数据指的是用户的私密数据,例如电子银行的签名信息、用户密钥等。
用户在使用计算机系统的过程中所用到的全部数据都保存在内存中,所述内存可以是计算机系统的物理内存,因此,处理器需要向内存中存入用户机密数据。对应步骤S21,可以参考图3所示进程P1。
步骤S22,处理器向安全处理器发送加密请求。
为保障内存中用户机密数据的安全性,处理器在将用户机密数据存入内存后,可以通过消息交互通道向安全处理器发送加密请求,所述加密请求用于请求安全处理器对存入内存中的用户机密数据进行加密。对应步骤S22,可以参考图3所示进程P2。
步骤S23,安全处理器获取处理器发送的加密请求。
步骤S24,安全处理器根据所述加密请求,确定存储于所述安全处理器的内部存储中的用户密钥。
其中,用户密钥指的是用户加密用户机密数据的密钥,本申请实施例中基于安全处理器的封闭可执行环境,可以将用户密钥存储于安全处理器的内部存储,避免对用户密钥的任意读取,提升用户密钥的安全性。
作为一种可选实现,安全处理器的内部存储可以存储多个用户密钥,从而安全处理器可以根据加密请求,确定的存储于所述安全处理器的内部存储中的用户密钥;可选的,所述用户密钥可以是处理器指定对用户机密数据进行加密的用户密钥。
步骤S25,安全处理器基于所述用户密钥,执行所述用户机密数据的加密流程,将对应所述用户机密数据的密文存入内存的预设位置。
在安全处理器的内部存储中存储有用户密钥的情况下,作为一种可选实现,用户机密数据的加密流程可以是在安全处理器中实现的,从而当用户机密数据的加密流程执行完成后,也可以由安全处理器将对应用户机密数据的密文存入内存的预设位置。其中,对应该步骤S25,可以参考图3所示进程P3以及P4,P3对应于安全处理器基于所述用户密钥,执行所述用户机密数据的加密流程,P4对应于安全处理器将对应所述用户机密数据的密文存入内存的预设位置。
作为另一种可选实现,用户机密数据的加密流程也可以是在安全处理器的协助下,由其他硬件执行实现的,例如系统中的加解密硬件,从而当用户机密数据的加密流程执行完成后,也可以由安全处理器协助的加解密硬件将对应用户机密数据的密文存入内存的预设位置。
其中,预设位置可以是用户机密数据在内存中对应的存储位置。可选的,当安全处理器将用户机密数据的密文存入内存的预设位置后,可以向处理器发送加密完成通知,以便处理器能够及时获知用户机密数据的加密进程,则可以执行步骤S26,安全处理器向处理器发送加密完成通知。其中,对应该步骤S26,可以参考图3所示进程P5。
在另一种可选实现中,基于加解密硬件执行用户机密数据的加密流程,也可以由加解密硬件向处理器发送加密完成通知。
步骤S27,处理器接收加密完成通知。
可以理解的是,在处理器接收到加密完成通知,则内存中存储的用户机密数据为密文,从而在计算机系统的运算过程中,若处理器需要在内存中获取用户机密数据,则只能获取用户机密数据的密文,使得用户的机密数据在使用窗口期之外,都以密文方式保存在内存中,提升了用户数据的安全性。
需要说明的是,处理器向内存中存入用户机密数据,若机密数据一直保存在内存中,被窃取的风险较大,而处理器向安全处理器发送加密请求,至安全处理器基于安全处理器的内部存储中的用户密钥,执行用户机密数据的加密流程,并将对应用户机密数据的密文存入内存的预设位置所需要的时间较短,从而用户机密数据以明文形式出现在内存中的窗口期较短,增大了用户机密数据被窃取的难度。
可以看出,本申请实施例通过将用户密钥存储于安全处理器的内部存储,使得用户密钥不能被任意读取,提升了用户密钥的安全性,进而通过安全处理器利用用户密钥加密用户机密数据,并将对应所述用户机密数据的密文存入内存的预设位置,使得用户机密数据在内存中以密文形式保存,实现对内存中用户机密数据的保护,提升了用户数据的安全性。
在一些实施例中,处理器将用户机密数据存入内存,若在内存中利用用户密钥对用户机密数据进行加密,则存在用户密钥在内存中被处理器读取的可能,因此,为避免在用户机密数据的加密过程中用户密钥被读取泄露,可以通过安全处理器将内存中的用户机密数据复制至安全处理器的内部存储,从而安全处理器能够根据用户密钥,在安全处理器的内部存储中加密用户机密数据。
在一些实施例中,为满足采用不同加解密算法对用户机密数据进行加解密的需求,计算机系统中还可以对应设置具有专用运算环境的加解密硬件,从而由加解密硬件执行对用户机密数据的加密流程。图4示例性的示出了本申请实施例中计算机系统的另一架构可选框图。结合图1和图4所示,计算机系统中的SOC可以包括:处理器110、安全处理器120、加解密硬件130。
其中,加解密硬件130可以支持多种加解密算法,例如非对称加密和签名、计算单向散列函数(HASH)和消息认证码(HMAC)、对称加密等,可用于对用户指定的数据进行运算,例如使用网银时的签名验证等。在图4所示的计算机系统中,处理器110和安全处理器120可以对加解密硬件130进行配置,则安全处理器可以将用户密钥发送至加解密硬件,实现对加解密硬件的密钥配置,以使加解密硬件加密用户机密数据。
需要说明的是,本申请实施例中的加解密硬件禁止密钥读取,其不提供用户密钥的读取接口,只能写入密钥和使用密钥执行加密,因此,在安全处理器对加解密硬件配置用于对用户机密数据进行加密操作的用户密钥的情况下,基于加解密硬件具有的专用运算环境,用户密钥不会在内存中出现,从而能够实现对用户机密数据加密的情况下,避免用户密钥泄露的风险。
为便于理解图4所示的计算机系统中处理器与安全处理器的交互,图5示例性的示出了本申请实施例中数据加密进程的另一可选示例图,图5中以SOC内部的主处理器核心与安全处理器进行信息传输,且安全处理器的本地存储存储有用户密钥(图中示为Kuser)为例进行说明,其中下文介绍的进程可以是基于上文所述对应进程的基础上执行的。
进一步的,在一些实施例中,处理器在向内存中存入用户机密数据(对应参照图5中的进程P1')之后,可以向加解密硬件发送用户机密数据在内存中的地址信息(对应参照图5中的进程P2'),实现对加解密硬件的待运算数据配置。
进而,进入图5中的进程P3':处理器向安全处理器发送加密请求;以及进程P4':安全处理器向加解密硬件配置用户密钥;进程P5':加解密硬件执行对用户机密数据的加密流程。作为一种可选实现,在加解密硬件基于安全处理器配置的用户密钥,对用户机密数据的加密流程执行完成后,可以向处理器发送加密完成通知,即对应图5中的进程P6',从而处理器能够接收加解密硬件发送的加密完成通知。
需要说明的是,图4或图5中所示的加解密硬件仅是计算机系统的SOC设置的用于利用不同加解密算法加解密用户机密数据的可选硬件,本申请实施例也可支持以其他硬件结构实现对用户机密数据采用不同加解密算法进行加解密,并不限于图4或图5所示结构。
在一些实施例中,图6示例性的示出了本申请实施例的数据加密方法的另一可选流程图,如图6所示,在步骤S21之前,还包括:
步骤S20,安全处理器获取用户密钥。
在一可选示例中,所述用户密钥可以是处理器向安全处理器传递的用户密钥。其中,作为一种可选实现,步骤S20可以是在安全处理器的初始状态时执行的,初始状态可以理解为是安全处理器处于离线环境的状态,即计算机系统还未交付使用,例如计算机设备的装机阶段,此时,离线环境可以认为是安全环境,从而能够避免用户密钥在安全处理器的获取过程中发生泄露。
在另一可选示例中,所述用户密钥也可以是由安全处理器随机生成,从而在安全处理器随机生成用户密钥的情况下,基于安全处理器的封闭可执行环境,也使得用户密钥能够不被外泄。
其中,图7示例性的示出了步骤S20在初始状态时执行的可选流程图,如图7所示,步骤S20可以包括如下流程:
步骤S2011,安全处理器获取处理器发送的读取通知。
可以理解的是,初始状态时,安全处理器和处理器等器件的执行环境对应于安全环境,不存在用户密钥在内存中泄露的可能,因此,处理器能够将用户密钥预先写入内存,并且,向安全处理器发送读取通知,所述读取通知用于指示安全处理器对内存中的用户密钥读取,由此安全处理器能够获取处理器发送的读取通知。
步骤S2012,安全处理器根据所述读取通知,读取内存中的用户密钥,将所述用户密钥存储于所述安全处理器的内部存储,并在所述内存中清除所述用户密钥。
在安全处理器根据处理器发送的读取通知,读取内存中的用户密钥后,能够将用户密钥存储于安全处理器的内部存储,并且为避免处理器或其他攻击者利用处理器读取内存中的用户密钥,安全处理器能够在内部存储存储用户密钥后,清除内存中对应的用户密钥。
作为另一种可选实现,步骤S20也可以是在安全处理器的运行状态时执行的,其中,运行状态可以理解为是安全处理器处于在线环境的状态,即计算机系统正在运行,例如计算机设备的使用阶段,此时,处理器在一个公有云的环境中,若处理器至少存在多个处理器核心,则多个处理器核心对应的用户可以同时使用计算机设备,其中,用户可以理解为是系统中的应用程序。
图8示例性的示出了步骤S20在运行状态时执行的可选流程图,如图8所示,步骤S20可以包括如下流程:
步骤2021,安全处理器获取第一共享密钥,所述第一共享密钥可以是基于密钥协商机制生成,且所述第一共享密钥与处理器获取的第二共享密钥相匹配。
可以理解的是,运行状态时,安全处理器和处理器等器件的执行环境对应于公有云的环境,当处理器存在多个处理器核心,且同时需要向安全处理器提供用户密钥时,安全处理器可以与处理器核心基于密钥协商机制,建立相同的共享密钥,密钥协商机制例如Diffie-Hellman算法。从而,安全处理器能够获取第一共享密钥,处理器能够获取第二共享密钥,第一共享密钥与第二共享密钥相匹配。
步骤2022,安全处理器获取所述处理器发送的读取通知。
其中,在安全处理器与处理器基于密钥协商机制生成相匹配的第一共享密钥与第二共享密钥后,处理器能够基于所述第二共享密钥加密所述用户密钥,并将加密后的所述用户密钥密文写入内存,并且,向安全处理器发送读取通知,以指示安全处理器对内存中的用户密钥读取。从而,安全处理器能够获取处理器发送的读取通知。
步骤S2023,安全处理器根据所述读取通知,读取内存中的所述用户密钥密文,并在所述内存中清除所述用户密钥密文。
可以理解的是,处理器将用户密钥密文写入内存中,从而安全处理器能够根据处理器发送的读取通知,读取内存中的用户密钥密文,并且在读取后,清除内存中的用户密钥密文。
步骤S2024,安全处理器根据所述第一共享密钥解密所述用户密钥密文,得到用户密钥,并存储于所述安全处理器的内部存储。
安全处理器在读取用户密钥密文后,可以根据第一共享密钥对用户密钥密文进行解密,从而得到用户密钥,并将用户密钥存储于安全处理器的内部存储。
可以看出,本申请实施例在安全处理器具有可执行的封闭环境下,通过将用户密钥存储于安全处理器的内部存储,使得用户密钥不能被任意读取而外泄,从而提升用户密钥的安全性。
在一些实施例中,用户存在使用多个用户密钥的需求,可以指定其中的某个用户密钥对用户机密数据进行加密,则处理器向安全处理器发送的加密请求可以包括加密所述用户机密数据的用户密钥的编号信息,从而,安全处理器根据加密请求,确定存储于所述安全处理器的内部存储中的用户密钥可以是,根据所述编号信息,确定存储于所述安全处理器的内部存储中相应编号的用户密钥。
需要说明的是,处理器不具有对用户密钥的编号权限,因此,用户密钥的编号信息可以是处理器通过安全处理器获取得到的。
继续参考图7或图8所示,进一步的,在一种可选实现中,在步骤S2012或者步骤S2024,安全处理器将所述用户密钥存储于安全处理器的内部存储之后,还可以包括:
步骤S2031,安全处理器根据所述用户密钥的读取顺序,对应编号所述用户密钥,得到所述用户密钥的编号信息;
步骤S2032,安全处理器向所述处理器发送所述用户密钥的编号信息。
其中,所述用户密钥的数量可以为多个。
可以理解的是,在安全处理器向处理器发送用户密钥的编号信息后,处理器能够获取安全处理器发送的用户密钥的编号信息,从而能够在向安全处理器发送的加密请求中指定加密用户机密数据的用户密钥。
在一些实施例中,处理器可以向用户程序提供两个接口以供使用,分别为:
mem_encrypt(data_addr,data_length);
mem_decrypt(data_addr,data_length)。
其中,mem_encrypt(data_addr,data_length)接口对应于加密数据,当用户不访问用户机密数据时,可以使用mem_encrypt接口对机密数据进行加密,从而数据即以密文格式保存在内存中。mem_decrypt(data_addr,data_length)接口对应于解密数据,当用户访问机密数据时,可以使用mem_decrypt接口对机密数据的密文进行解密,得到用户机密数据的明文,并且,在用户机密数据使用完毕后,可以使用mem_encrypt接口加密用户机密数据,将用户机密数据的密文在内存中进行保存。
作为一种可选实现,处理器在向内存中存入用户机密数据之后,向安全处理器发送加密请求之前,还可以获取对应用户的指令调用信息,其中,所述指令调用信息用于指示基于为用户提供的接口所确定的加密需求,所述加密需求指示加密所述用户机密数据,进而所述发送加密请求,可以具体为,基于所述指令调用信息,发送加密请求。
可以看出,本申请实施例通过将用户密钥存储于安全处理器的内部存储,使得用户密钥不能被任意读取,提升了用户密钥的安全性,进而通过安全处理器利用用户密钥加密用户机密数据,并存入内存,使得用户机密数据在内存中以密文形式保存,实现对内存中用户机密数据的保护,提升了用户数据的安全性。
对应于数据加密方法,本申请实施例还提供一种数据解密方法,图9示例性的示出了本申请实施例提供的数据解密方法的可选流程图,该方法流程可由图1所示的安全处理器和处理器执行实现。如图9所示,该方法流程可以包括如下步骤。其中,下文描述的内容可与上文描述内容相互对应参照。
步骤S91,处理器向安全处理器发送解密请求,所述解密请求用于请求所述安全处理器对内存中的用户机密数据的密文进行解密。
步骤S92,安全处理器获取处理器发送的解密请求。
步骤S93,安全处理器根据所述解密请求,确定存储于所述安全处理器的内部存储中的用户密钥。
步骤S94,安全处理器基于所述用户密钥,执行所述用户机密数据的密文的解密流程,并将对应所述用户机密数据的明文存入内存的预设位置。
可选的,当安全处理器将用户机密数据的明文存入内存的预设位置后,可以向处理器发送解密完成通知,以便处理器能够及时获知用户机密数据的解密进程,则可以执行步骤S95,安全处理器向处理器发送解密完成通知。
步骤S96,处理器接收解密完成通知,获取对应用户机密数据的明文。
可选的,安全处理器基于所述用户密钥,执行所述用户机密数据的密文的解密流程,可以包括:
将所述内存中的用户机密数据的密文复制至所述内部存储;
根据所述用户密钥,在所述内部存储中解密所述用户机密数据的密文。
可选的,安全处理器基于所述用户密钥,执行所述用户机密数据的密文的解密流程,可以具体为:
将所述用户密钥发送至加解密硬件,以使所述加解密硬件解密所述用户机密数据的密文,其中,所述加解密硬件禁止密钥读取。
可选的,安全处理器基于所述用户密钥,执行所述用户机密数据的解密流程,并将对应所述用户机密数据的密文存入内存的预设位置的步骤之后,还可以包括:
安全处理器向所述处理器发送解密完成通知。
在另一种可选实现中,基于加解密硬件执行用户机密数据的解密流程,也可以由加解密硬件向处理器发送解密完成通知。
可选的,处理器发送的所述加密请求可以包括解密所述用户机密数据的密文的用户密钥的编号信息。
在一些实施例中,处理器在发送解密请求之前,还可以包括获取用户发送的指令调用信息,所述指令调用信息用于指示基于为用户提供的接口所确定的解密需求,所述解密需求指示解密所述用户机密数据,进而所述发送解密请求,可以具体为,基于所述指令调用信息,发送解密请求。
下面从安全处理器的角度,对本申请实施例提供的数据加密方法的装置进行介绍,下文描述的装置内容可以认为是安全处理器为实现本申请实施例提供的数据加密方法,所需设置的功能模块。下文描述的内容可与上文描述内容相互对应参照。
作为可选实现,图10示例性的示出了本申请实施例提供的数据加密装置的可选框图,该装置可应用于安全处理器,参照图10,该装置可以包括:
获取模块101,用于获取处理器发送的加密请求,所述加密请求用于请求安全处理器对存入内存中的用户机密数据进行加密;
密钥确定模块102,用于根据所述加密请求,确定存储于所述安全处理器的内部存储中的用户密钥;
执行模块103,用于基于所述用户密钥,执行所述用户机密数据的加密流程,并将对应所述用户机密数据的密文存入内存的预设位置。
可选的,执行模块103,基于所述用户密钥,执行所述用户机密数据的加密流程的步骤,可以包括:
将所述内存中的用户机密数据复制至所述内部存储;
根据所述用户密钥,在所述内部存储中加密所述用户机密数据。
可选的,执行模块103,基于所述用户密钥,执行所述用户机密数据的加密流程的步骤,可以具体为:
将所述用户密钥发送至加解密硬件,以使所述加解密硬件加密所述用户机密数据,其中,所述加解密硬件禁止密钥读取。
可选的,执行模块103,所述基于所述用户密钥,执行所述用户机密数据的加密流程,并将对应所述用户机密数据的密文存入内存的预设位置的步骤之后,还包括:
向所述处理器发送加密完成通知。
可选的,密钥确定模块102,确定存储于所述安全处理器的内部存储中的用户密钥的步骤之前,还包括:
获取所述用户密钥。
可选的,在初始状态时,密钥确定模块102获取所述用户密钥的步骤,可以包括:
获取所述处理器发送的读取通知,其中,所述处理器将所述用户密钥预先写入内存;
根据所述读取通知,读取内存中的用户密钥,将所述用户密钥存储于所述安全处理器的内部存储,并在所述内存中清除所述用户密钥。
可选的,在运行状态时,密钥确定模块102获取所述用户密钥的步骤,可以包括:
获取第一共享密钥,所述第一共享密钥基于密钥协商机制生成,且所述第一共享密钥与所述处理器获取的第二共享密钥相匹配;
获取所述处理器发送的读取通知,其中,所述处理器基于所述第二共享密钥加密所述用户密钥,并将加密后的所述用户密钥密文写入内存;
根据所述读取通知,读取内存中的所述用户密钥密文,并在所述内存中清除所述用户密钥密文;
根据所述第一共享密钥解密所述用户密钥密文,得到用户密钥,并存储于所述安全处理器的内部存储。
可选的,获取模块101获取的所述加密请求可以包括加密所述用户机密数据的用户密钥的编号信息;
所述密钥确定模块102根据所述加密请求,确定存储于所述安全处理器的内部存储中的用户密钥的步骤,包括:
根据所述编号信息,确定存储于所述安全处理器的内部存储中相应编号的用户密钥。
可选的,所述密钥确定模块102,将所述用户密钥存储于内部存储之后,还包括:
根据所述用户密钥的读取顺序,对应编号所述用户密钥,得到所述用户密钥的编号信息;
向所述处理器发送所述用户密钥的编号信息;
其中,所述用户密钥的数量为多个。
需要说明的是,从安全处理器的角度,数据解密方法对应的数据解密装置所需设置的功能模块,可以复用所述数据加密装置中的模块,对应参照图10,所述数据解密装置可以包括:
获取模块,用于获取处理器发送的解密请求,所述解密请求用于请求安全处理器对内存中的用户机密数据的密文进行解密;
密钥确定模块,用于根据所述解密请求,确定存储于所述安全处理器的内部存储中的用户密钥;
执行模块,用于基于所述用户密钥,执行所述用户机密数据的密文的解密流程,并将对应所述用户机密数据的明文存入内存的预设位置。
下面从处理器的角度,对本申请实施例提供的数据加密方法的装置进行介绍,下文描述的装置内容可以认为是处理器为实现本申请实施例提供的数据加密方法,所需设置的功能模块。下文描述的内容可与上文描述内容相互对应参照。
作为可选实现,图11示例性的示出了本申请实施例提供的数据加密装置的另一可选框图,该装置可应用于处理器,参照图11,该装置可以包括:
写入模块111,用于向内存中存入用户机密数据;
发送模块112,用于发送加密请求至安全处理器,所述加密请求用于请求所述安全处理器对所述用户机密数据进行加密,以使得所述安全处理器根据所述加密请求,确定存储于所述安全处理器的内部存储中的用户密钥,基于所述用户密钥,执行所述用户机密数据的加密流程,并将对应所述用户机密数据的密文存入内存的预设位置;
接收模块113,用于接收加密完成通知,获取对应所述用户机密数据的密文。
可选的,发送模块112,发送的所述加密请求还用于请求所述安全处理器将所述用户密钥发送至加解密硬件,以使所述加解密硬件加密所述用户机密数据,其中,所述加解密硬件禁止密钥读取。
可选的,所述写入模块111,向内存中存入用户机密数据之后,还包括:
向所述加解密硬件发送所述用户机密数据在内存中的地址信息。
可选的,所述写入模块111,向内存中存入用户机密数据的步骤之前,还包括:
向所述安全处理器传递所述用户密钥。
可选的,在初始状态时,所述写入模块111向所述安全处理器传递所述用户密钥的步骤,包括:
将所述用户密钥预先写入内存;
向所述安全处理器发送读取通知,以使所述安全处理器根据所述读取通知,读取内存中的用户密钥,将所述用户密钥存储于所述安全处理器的内部存储,并在所述内存中清除所述用户密钥。
可选的,在运行状态时,所述写入模块111向所述安全处理器传递所述用户密钥的步骤,包括:
获取第二共享密钥,所述第二共享密钥基于密钥协商机制生成,且所述第二共享密钥与所述安全处理器获取的第一共享密钥相匹配;
基于所述第二共享密钥加密所述用户密钥,并将所述用户密钥密文写入内存;
发送读取通知至所述安全处理器,以使所述安全处理器根据所述读取通知,读取内存中所述用户密钥密文,并在所述内存中清除所述用户密钥密文;根据所述第一共享密钥解密所述用户密钥密文,得到用户密钥,并存储于所述安全处理器的内部存储。
可选的,所述发送模块112,发送的加密请求包括加密所述用户机密数据的用户密钥的编号信息。
可选的,所述发送模块112,发送加密请求至所述安全处理器之前,还包括:
获取所述安全处理器发送的所述用户密钥的编号信息,其中,所述用户密钥的数量为多个。
需要说明的是,从处理器的角度,数据解密方法对应的数据解密装置所需设置的功能模块,可以复用所述数据加密装置中的模块,对应参照图11,所述数据解密装置可以包括:
发送模块,用于向安全处理器发送解密请求,所述解密请求用于请求所述安全处理器对内存中的用户机密数据的密文进行解密,以使得所述安全处理器根据所述解密请求,确定存储于所述安全处理器的内部存储中的用户密钥,基于所述用户密钥,执行所述用户机密数据的密文的解密流程,并将对应所述用户机密数据的明文存入内存的预设位置;
接收模块,用于接收解密完成通知,获取对应所述用户机密数据的明文。
本申请实施例还提供一种安全处理器,该安全处理器可以通过设置上述描述的数据加密装置,以实现本申请实施例提供的数据加密方法或者数据解密方法。
本申请实施例还提供一种处理器,该处理器可以通过设置上述描述的数据加密装置,以实现本申请实施例提供的数据加密方法或者数据解密方法。
在一些实施例中,所述处理器用于为用户提供指令调用接口,所述指令调用接口可以包括:
加密接口,所述加密接口指示确定指令调用信息为加密需求;
解密接口,所述解密接口指示确定指令调用信息为解密需求。
本申请实施例还提供一种计算机设备,该计算机设备可以通过设置上述描述的安全处理器和处理器,以实现本申请实施例提供的数据加密方法或者本申请实施例提供的数据解密方法。作为可选实现,图12为本申请实施例提供的计算机设备的可选框图,如图12所示,该计算机设备可以包括:至少一个处理器1,至少一个通信接口2,至少一个存储器3和至少一个通信总线4。
在本申请实施例中,处理器1、通信接口2、存储器3、通信总线4的数量为至少一个,且处理器1、通信接口2、存储器3通过通信总线4完成相互间的通信。
可选的,通信接口2可以为用于进行网络通信的通信模块的接口。
可选的,处理器1可能是CPU(中央处理器),GPU(Graphics Processing Unit,图形处理器),NPU(嵌入式神经网络处理器),FPGA(Field Programmable Gate Array,现场可编程逻辑门阵列),TPU(张量处理单元),AI芯片,特定集成电路ASIC(Application SpecificIntegrated Circuit),或者是被配置成实施本申请实施例的一个或多个集成电路等。
存储器3可能包含高速RAM存储器,也可能还包括非易失性存储器(non-volatilememory),例如至少一个磁盘存储器。
其中,存储器3存储一条或多条计算机可执行指令,处理器1调用所述一条或多条计算机可执行指令,以执行本申请实施例的数据加密方法或者数据解密方法。
本申请实施例还提供一种存储介质,所述存储介质存储一条或多条计算机可执行指令,所述一条或多条计算机可执行指令被执行时,实现如本申请实施例的数据加密方法,或者数据解密方法。
上文描述了本申请实施例提供的多个实施例方案,各实施例方案介绍的各可选方式可在不冲突的情况下相互结合、交叉引用,从而延伸出多种可能的实施例方案,这些均可认为是本申请实施例披露、公开的实施例方案。
虽然本申请实施例披露如上,但本申请并非限定于此。任何本领域技术人员,在不脱离本申请的精神和范围内,均可作各种更动与修改,因此本申请的保护范围应当以权利要求所限定的范围为准。

Claims (30)

1.一种数据加密方法,其特征在于,应用于安全处理器,所述方法包括:
获取处理器发送的加密请求,所述加密请求用于请求所述安全处理器对存入内存中的用户机密数据进行加密;
根据所述加密请求,确定存储于所述安全处理器的内部存储中的用户密钥;
基于所述用户密钥,执行所述用户机密数据的加密流程,并将对应所述用户机密数据的密文存入内存的预设位置。
2.根据权利要求1所述的数据加密方法,其特征在于,所述基于所述用户密钥,执行所述用户机密数据的加密流程,包括:
将所述内存中的用户机密数据复制至所述安全处理器的内部存储;
根据所述用户密钥,在所述安全处理器的内部存储中加密所述用户机密数据。
3.根据权利要求1所述的数据加密方法,其特征在于,所述基于所述用户密钥,执行所述用户机密数据的加密流程,具体为:
将所述用户密钥发送至加解密硬件,以使所述加解密硬件加密所述用户机密数据,其中,所述加解密硬件禁止密钥读取。
4.根据权利要求1所述的数据加密方法,其特征在于,所述基于所述用户密钥,执行所述用户机密数据的加密流程,并将对应所述用户机密数据的密文存入内存的预设位置的步骤之后,还包括:
向所述处理器发送加密完成通知。
5.根据权利要求1所述的数据加密方法,其特征在于,所述确定存储于所述安全处理器的内部存储中的用户密钥的步骤之前,还包括:
获取所述用户密钥。
6.根据权利要求5所述的数据加密方法,其特征在于,在初始状态时,所述获取所述用户密钥,包括:
获取处理器发送的读取通知,其中,所述处理器将所述用户密钥预先写入内存;
根据所述读取通知,读取内存中的用户密钥,将所述用户密钥存储于所述安全处理器的内部存储,并在所述内存中清除所述用户密钥。
7.根据权利要求5所述的数据加密方法,其特征在于,在运行状态时,所述获取所述用户密钥,包括:
获取第一共享密钥,所述第一共享密钥基于密钥协商机制生成,且所述第一共享密钥与处理器获取的第二共享密钥相匹配;
获取所述处理器发送的读取通知,其中,所述处理器基于所述第二共享密钥加密所述用户密钥,并将加密后的所述用户密钥密文写入内存;
根据所述读取通知,读取内存中的所述用户密钥密文,并在所述内存中清除所述用户密钥密文;
根据所述第一共享密钥解密所述用户密钥密文,得到用户密钥,并存储于所述安全处理器的内部存储。
8.根据权利要求1所述的数据加密方法,其特征在于,所述加密请求包括加密所述用户机密数据的用户密钥的编号信息;
所述根据所述加密请求,确定存储于所述安全处理器的内部存储中的用户密钥,包括:
根据所述编号信息,确定存储于所述安全处理器的内部存储中相应编号的用户密钥。
9.根据权利要求8所述的数据加密方法,其特征在于,所述将所述用户密钥存储于所述安全处理器的内部存储之后,还包括:
根据所述用户密钥的读取顺序,对应编号所述用户密钥,得到所述用户密钥的编号信息;
向处理器发送所述用户密钥的编号信息;
其中,所述用户密钥的数量为多个。
10.一种数据加密方法,其特征在于,应用于处理器,所述方法包括:
向内存中存入用户机密数据;
发送加密请求至安全处理器,所述加密请求用于请求所述安全处理器对所述用户机密数据进行加密,以使得所述安全处理器根据所述加密请求,确定存储于所述安全处理器的内部存储中的用户密钥,基于所述用户密钥,执行所述用户机密数据的加密流程,并将对应所述用户机密数据的密文存入内存的预设位置;
接收加密完成通知,获取对应所述用户机密数据的密文。
11.根据权利要求10所述的数据加密方法,其特征在于,所述加密请求还用于请求所述安全处理器将所述用户密钥发送至加解密硬件,以使所述加解密硬件加密所述用户机密数据,其中,所述加解密硬件禁止密钥读取。
12.根据权利要求11所述的数据加密方法,其特征在于,所述向内存中存入用户机密数据之后,还包括:
向所述加解密硬件发送所述用户机密数据在内存中的地址信息。
13.根据权利要求10所述的数据加密方法,其特征在于,所述向内存中存入用户机密数据的步骤之前,还包括:
向所述安全处理器传递所述用户密钥。
14.根据权利要求13所述的数据加密方法,其特征在于,在初始状态时,所述向所述安全处理器传递所述用户密钥,包括:
将所述用户密钥预先写入内存;
向所述安全处理器发送读取通知,以使所述安全处理器根据所述读取通知,读取内存中的用户密钥,将所述用户密钥存储于所述安全处理器的内部存储,并在所述内存中清除所述用户密钥。
15.根据权利要求13所述的数据加密方法,其特征在于,在运行状态时,所述向所述安全处理器传递所述用户密钥,包括:
获取第二共享密钥,所述第二共享密钥基于密钥协商机制生成,且所述第二共享密钥与所述安全处理器获取的第一共享密钥相匹配;
基于所述第二共享密钥加密所述用户密钥,并将所述用户密钥密文写入内存;
发送读取通知至所述安全处理器,以使所述安全处理器根据所述读取通知,读取内存中所述用户密钥密文,并在所述内存中清除所述用户密钥密文;根据所述第一共享密钥解密所述用户密钥密文,得到用户密钥,并存储于所述安全处理器的内部存储。
16.根据权利要求10所述的数据加密方法,其特征在于,所述加密请求包括加密所述用户机密数据的用户密钥的编号信息。
17.根据权利要求16所述的数据加密方法,其特征在于,所述发送加密请求至所述安全处理器之前,还包括:
获取所述安全处理器发送的所述用户密钥的编号信息,其中,所述用户密钥的数量为多个。
18.根据权利要求10所述的数据加密方法,其特征在于,所述向内存中存入用户机密数据之后,所述发送加密请求之前,还包括:
获取对应用户的指令调用信息,所述指令调用信息用于指示基于为用户提供的接口所确定的加密需求,所述加密需求指示加密所述用户机密数据;
所述发送加密请求,具体为,基于所述指令调用信息,发送加密请求。
19.一种数据解密方法,其特征在于,应用于安全处理器,所述方法包括:
获取处理器发送的解密请求,所述解密请求用于请求所述安全处理器对内存中的用户机密数据的密文进行解密;
根据所述解密请求,确定存储于所述安全处理器的内部存储中的用户密钥;
基于所述用户密钥,执行所述用户机密数据的密文的解密流程,并将对应所述用户机密数据的明文存入内存的预设位置。
20.一种数据解密方法,其特征在于,应用于处理器,所述方法包括:
向安全处理器发送解密请求,所述解密请求用于请求所述安全处理器对内存中的用户机密数据的密文进行解密,以使得所述安全处理器根据所述解密请求,确定存储于所述安全处理器的内部存储中的用户密钥,基于所述用户密钥,执行所述用户机密数据的密文的解密流程,并将对应所述用户机密数据的明文存入内存的预设位置;
接收解密完成通知,获取对应所述用户机密数据的明文。
21.根据权利要求20所述的数据解密方法,其特征在于,所述发送解密请求之前,还包括:
获取对应用户的指令调用信息,所述指令调用信息用于指示基于为用户提供的接口所确定的解密需求,所述解密需求指示解密所述用户机密数据;
所述发送解密请求,具体为,基于所述指令调用信息,发送解密请求。
22.一种数据加密装置,其特征在于,应用于安全处理器,所述装置包括:
获取模块,用于获取处理器发送的加密请求,所述加密请求用于请求所述安全处理器对存入内存中的用户机密数据进行加密;
密钥确定模块,用于根据所述加密请求,确定存储于所述安全处理器的内部存储中的用户密钥;
执行模块,用于基于所述用户密钥,执行所述用户机密数据的加密流程,并将对应所述用户机密数据的密文存入内存的预设位置。
23.一种数据加密装置,其特征在于,应用于处理器,所述装置包括:
写入模块,用于向内存中存入用户机密数据;
发送模块,用于发送加密请求至安全处理器,所述加密请求用于请求所述安全处理器对所述用户机密数据进行加密,以使得所述安全处理器根据所述加密请求,确定存储于所述安全处理器的内部存储中的用户密钥,基于所述用户密钥,执行所述用户机密数据的加密流程,并将对应所述用户机密数据的密文存入内存的预设位置;
接收模块,用于接收加密完成通知,获取对应所述用户机密数据的密文。
24.一种数据解密装置,其特征在于,应用于安全处理器,所述装置包括:
获取模块,用于获取处理器发送的解密请求,所述解密请求用于请求所述安全处理器对内存中的用户机密数据的密文进行解密;
密钥确定模块,用于根据所述解密请求,确定存储于所述安全处理器的内部存储中的用户密钥;
执行模块,用于基于所述用户密钥,执行所述用户机密数据的密文的解密流程,并将对应所述用户机密数据的明文存入内存的预设位置。
25.一种数据解密装置,其特征在于,应用于处理器,所述装置包括:
发送模块,用于向安全处理器发送解密请求,所述解密请求用于请求所述安全处理器对内存中的用户机密数据的密文进行解密,以使得所述安全处理器根据所述解密请求,确定存储于所述安全处理器的内部存储中的用户密钥,基于所述用户密钥,执行所述用户机密数据的密文的解密流程,并将对应所述用户机密数据的明文存入内存的预设位置;
接收模块,用于接收解密完成通知,获取对应所述用户机密数据的明文。
26.一种安全处理器,其特征在于,所述安全处理器用于执行如权利要求1所述的数据加密方法和/或用于执行如权利要求19所述的数据解密方法。
27.一种处理器,其特征在于,所述处理器用于执行如权利要求10所述的数据加密方法和/或用于执行如权利要求20所述的数据解密方法。
28.根据权利要求27所述的处理器,其特征在于,所述处理器用于为用户提供指令调用接口,所述指令调用接口包括:
加密接口,所述加密接口指示确定指令调用信息为加密需求;
解密接口,所述解密接口指示确定指令调用信息为解密需求。
29.一种计算机设备,其特征在于,包括如权利要求26所述的安全处理器和如权利要求27-28任一项所述的处理器。
30.一种存储介质,其特征在于,所述存储介质存储一条或多条计算机可执行指令,所述一条或多条计算机可执行指令被执行时,实现如权利要求1-9和/或如权利要求10-18任一项所述的数据加密方法,或者,如权利要求19和/或如权利要求20所述的数据解密方法。
CN202211573507.7A 2022-12-08 2022-12-08 一种数据加密方法、解密方法及其相关设备 Pending CN116186727A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202211573507.7A CN116186727A (zh) 2022-12-08 2022-12-08 一种数据加密方法、解密方法及其相关设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202211573507.7A CN116186727A (zh) 2022-12-08 2022-12-08 一种数据加密方法、解密方法及其相关设备

Publications (1)

Publication Number Publication Date
CN116186727A true CN116186727A (zh) 2023-05-30

Family

ID=86439185

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202211573507.7A Pending CN116186727A (zh) 2022-12-08 2022-12-08 一种数据加密方法、解密方法及其相关设备

Country Status (1)

Country Link
CN (1) CN116186727A (zh)

Similar Documents

Publication Publication Date Title
CN102271037B (zh) 基于在线密钥的密钥保护装置
KR101712784B1 (ko) 글로벌 플랫폼 규격을 사용하는 발행자 보안 도메인에 대한 키 관리 시스템 및 방법
JP4689945B2 (ja) リソースアクセス方法
JP4689946B2 (ja) 安全なデータを使用して情報処理を実行するシステム
US20130230165A1 (en) Scalable and Secure Key Management for Cryptographic Data Processing
US20130077782A1 (en) Method and Apparatus for Security Over Multiple Interfaces
JPH10154976A (ja) タンパーフリー装置
KR20060018852A (ko) 랜덤 함수를 사용하는 실행의 증명
JP2009219162A (ja) データセンタへのプラットフォームの内包検証
CN104902138B (zh) 加密/解密系统及其控制方法
CN110868291B (zh) 一种数据加密传输方法、装置、系统及存储介质
JP4470373B2 (ja) 認証処理装置及びセキュリティ処理方法
CN104335548A (zh) 安全数据处理
JP7256862B2 (ja) 保護されたコンテナ間のセキュア通信方法およびそのシステム
JP6756056B2 (ja) 身元検証による暗号チップ
US11735319B2 (en) Method and system for processing medical data
NL2033981A (en) Method for encrypting and decrypting data across domains based on privacy computing
US20230409700A1 (en) Systems and methods for managing state
CN110740036A (zh) 基于云计算的防攻击数据保密方法
JP3868218B2 (ja) アクセス制限付コンテンツ表示方法およびその装置
WO2022212396A1 (en) Systems and methods of protecting secrets in use with containerized applications
CN114697113A (zh) 一种基于硬件加速卡的多方隐私计算方法、装置及系统
US20140082364A1 (en) Collaborative Uses of a Cloud Computing Confidential Domain of Execution
CN116186727A (zh) 一种数据加密方法、解密方法及其相关设备
CN115361168B (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