CN114944960A - 一种密码应用方法、装置、设备及存储介质 - Google Patents
一种密码应用方法、装置、设备及存储介质 Download PDFInfo
- Publication number
- CN114944960A CN114944960A CN202210717775.5A CN202210717775A CN114944960A CN 114944960 A CN114944960 A CN 114944960A CN 202210717775 A CN202210717775 A CN 202210717775A CN 114944960 A CN114944960 A CN 114944960A
- Authority
- CN
- China
- Prior art keywords
- privacy
- cryptographic
- calculation
- password
- module
- 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
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/06—Network architectures or network communication protocols for network security for supporting key management in a packet data network
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/008—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols involving homomorphic encryption
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0816—Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0816—Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
- H04L9/085—Secret sharing or secret splitting, e.g. threshold schemes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2209/00—Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
- H04L2209/46—Secure multiparty computation, e.g. millionaire problem
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Storage Device Security (AREA)
Abstract
本申请公开了一种密码应用方法、装置、设备及存储介质。该方法包括:通过本地的隐私计算安全引擎获取密钥管理中心为所述隐私计算节点内隐私计算密码模块生成的主密钥,并将所述主密钥安全导入所述隐私计算密码模块;获取与其余隐私计算节点的隐私计算请求,根据所述隐私计算请求对所述隐私计算安全引擎发起安全协议的调用请求;利用所述隐私计算安全引擎根据所述调用请求调用所述隐私计算密码模块,以便所述隐私计算密码模块按照所述安全协议进行安全合规的密码运算,提高了密码应用的安全性和合规性。
Description
技术领域
本发明涉及隐私计算技术领域,特别涉及一种密码应用方法、装置、设备及存储介质。
背景技术
隐私计算是由两个或多个参与方联合计算的技术和系统,参与方在不暴露原始数据的前提下通过协作进行联合机器学习和联合分析。在隐私计算框架下,参与方的数据明文不出本地,在保护数据安全的同时实现多源数据跨域合作,可以破解数据保护与融合应用难题。常见的实现隐私计算的技术路径包括联邦学习、安全多方计算、可信计算等。
现有技术中,在实现隐私计算时,往往是针对应用场景的丰富性、密码协议的安全性、整体性能的优化等,存在密码实现的合规性和安全性的问题,如隐私计算开源平台Fate、Encrypted-TF、Rosetta、Crypten、PaddleFL、Pysyft,或者商业隐私计算平台PowerFL、Morse等都均具备隐私安全计算能力。但基本上是在机器学习框架的基础上,以软算法库的形式提供安全多方计算、同态加密等密码协议和算法;虽然隐私计算协议交互满足安全目标,但是单个计算节点上的密钥、密码运算均是以明文形式“裸跑”在计算终端上的,存在敏感信息泄露的风险,同时密钥生成、随机数生成等相关算法直接调用操作系统接口实现,存在着不小的安全漏洞。总的来说,隐私计算的工业实现满足协议安全性,但本地计算的安全性、合规性、效率均存在一定不足。因此,如何提高隐私计算中密码应用的安全性、合规性是目前亟需解决的问题。
发明内容
有鉴于此,本发明的目的在于提供一种密码应用方法、装置、设备及介质,能够提高密码应用的安全性和合规性。其具体方案如下:
第一方面,本申请公开了一种密码应用方法,包括:
通过本地的隐私计算安全引擎获取密钥管理中心为所述隐私计算节点内隐私计算密码模块生成的主密钥,并将所述主密钥安全导入所述隐私计算密码模块;
获取与其余隐私计算节点的隐私计算请求,根据所述隐私计算请求对所述隐私计算安全引擎发起安全协议的调用请求;
利用所述隐私计算安全引擎根据所述调用请求调用所述隐私计算密码模块,以便所述隐私计算密码模块按照所述安全协议进行安全合规的密码运算。
可选的,所述将所述主密钥安全导入所述隐私计算密码模块,包括:
根据Shamir秘钥分割门限方式通过所述隐私计算安全引擎对所述主密钥进行拆分,以得到多个密钥分量;
向所述隐私计算节点中的每个所述隐私计算密码模块中安全导入1个所述密钥分量。
可选的,所述向所述隐私计算节点中的每个所述隐私计算密码模块中安全导入1个所述密钥分量之后,还包括:
若向所述隐私计算节点内的所有所述隐私计算密码模块进行密钥分量导入后存在剩余的密钥分量,则将所述剩余的密钥分量均匀随机的分发给其余隐私计算节点中的隐私计算密码模块。
可选的,所述向所述隐私计算节点中的每个所述隐私计算密码模块中安全导入1个所述密钥分量之后,还包括:
通过所述隐私计算安全引擎记录所述密钥分量的导入记录;
当所述主密钥无法获取时,根据所有所述隐私计算密码模块内包含的密钥分量利用Shamir门限恢复方式恢复所述主密钥。
可选的,所述利用所述隐私计算安全引擎根据所述调用请求调用所述隐私计算密码模块,以便所述隐私计算密码模块按照所述安全协议进行安全合规的密码运算,包括:
获取所述隐私计算密码模块对应的密码能力表;所述密码能力表包含所述隐私计算节点内所有所述隐私计算密码模块对应的密码性能;
根据每个所述隐私计算密码模块对应的密码性能以及所述调用请求对应的安全算子计算规模,从所有所述隐私计算密码模块中筛选出一个或多个隐私计算密码模块作为目标隐私计算密码模块;
利用所述目标隐私计算密码模块基于所述主密钥按照所述安全协议进行密码运算,并更新所述密码能力表中所述目标隐私计算密码模块对应的密码性能。
可选的,所述利用所述目标隐私计算密码模块基于所述主密钥按照所述安全协议进行密码运算之后,还包括:
利用所述隐私计算安全引擎为所述调用请求创建任务记录表;所述任务记录表用于记录所述调用请求对应的目标参数信息;所述目标参数信息包括调用任务标识、密钥标识、隐私计算密码模块标识;
当所述隐私计算安全引擎接收到新的调用请求后,判断所述新的调用请求对应的目标参数信息是否记录在所述任务记录表中;
若是,则利用所述目标隐私计算密码模块执行所述新的调用请求对应的密码运算。
可选的,所述隐私计算密码模块按照所述安全协议进行安全合规的密码运算,包括:
通过所述隐私计算密码模块内部创建的安全计算空间,构建安全、合规的密码运算环境,以确保密钥安全及密码运算过程安全;在所述隐私计算密码模块内部利用所述主密钥对隐私计算关联的敏感信息进行加密存储;
所述隐私计算密码模块包括模加运算单元、模幂运算单元、倍点运算单元、对称加密单元、哈希摘要单元、随机数生成单元、密钥产生单元。
第二方面,本申请公开了一种密码应用装置,包括:
密钥获取模块,用于通过本地的隐私计算安全引擎获取密钥管理中心为所述隐私计算节点内隐私计算密码模块生成的主密钥,并将所述主密钥安全导入所述隐私计算密码模块;
协议调用模块,用于获取与其余隐私计算节点的隐私计算请求,根据所述隐私计算请求对所述隐私计算安全引擎发起安全协议的调用请求;
密码运算模块,用于利用所述隐私计算安全引擎根据所述调用请求调用所述隐私计算密码模块,以便所述隐私计算密码模块按照所述安全协议进行安全合规的密码运算。
第三方面,本申请公开了一种电子设备,包括:
存储器,用于保存计算机程序;
处理器,用于执行所述计算机程序,以实现前述的密码应用方法。
第四方面,本申请公开了一种计算机可读存储介质,用于存储计算机程序;其中计算机程序被处理器执行时实现前述的密码应用方法。
本申请中,通过本地的隐私计算安全引擎获取密钥管理中心为所述隐私计算节点内隐私计算密码模块生成的主密钥,并将所述主密钥安全导入所述隐私计算密码模块;获取与其余隐私计算节点的隐私计算请求,根据所述隐私计算请求对所述隐私计算安全引擎发起安全协议的调用请求;利用所述隐私计算安全引擎根据所述调用请求调用所述隐私计算密码模块,以便所述隐私计算密码模块按照所述安全协议进行安全合规的密码运算。可见,通过在隐私计算节点中构建隐私计算安全引擎和隐私计算密码模块,利用隐私计算安全引擎进行安全的应用对接和密码调用,利用隐私计算密码模块对密码底层实现安全、合规的密码运算,防止密钥、敏感信息、密码运算过程等暴露给CPU、操作系统以及内存,并且,适用于联邦学习、安全多方计算等多个技术场景,解决了隐私计算在本地计算节点的密码应用问题,提高了密码应用的安全性和合规性。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本申请提供的一种密码应用方法流程图;
图2为本申请提供的一种具体的密码应用方法流程图;
图3为本申请提供的一种密码应用装置结构示意图;
图4为本申请提供的一种电子设备结构图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
现有技术中,在实现隐私计算时,往往是针对应用场景的丰富性、密码协议的安全性、整体性能的优化等,存在密码实现的合规性和安全性的问题。为克服上述技术问题,本申请提出一种密码应用方法,能够提高密码应用的安全性和合规性。
本申请实施例公开了一种密码应用方法,应用于隐私计算节点,参见图1所示,该方法可以包括以下步骤:
步骤S11:通过本地的隐私计算安全引擎获取密钥管理中心为所述隐私计算节点内隐私计算密码模块生成的主密钥,并将所述主密钥安全导入所述隐私计算密码模块。
本实施例中,隐私计算节点通过本地的隐私计算安全引擎获取密钥管理中心为隐私计算节点内隐私计算密码模块生成的主密钥,并将该主密钥安全导入隐私计算密码模块。可以理解的是,例如图2所示的一种具体的隐私计算节点结构框架图,1个隐私计算节点中可以包含1个隐私计算安全引擎以及1个或多个隐私计算密码模块,通过多个隐私计算密码模块进行底层密码运算,可以提高运算效率。隐私计算节点功能上划分为三层,最上一层为隐私计算应用;中间一层为本申请提出的隐私计算安全引擎,实现隐私计算安全协议;最下一层为本申请提出的隐私计算密码模块,实现合规、高效、安全的密码运算。密钥管理中心用于向隐私计算节点的隐私计算安全引擎安全分发密钥。
本实施例中,所述隐私计算密码模块按照所述安全协议进行安全合规的密码运算,可以包括:通过所述隐私计算密码模块内部创建的安全计算空间,构建安全、合规的密码运算环境,以确保密钥安全及密码运算过程安全;在所述隐私计算密码模块内部利用所述主密钥对隐私计算关联的敏感信息进行加密存储;所述隐私计算密码模块包括但不限于模加运算单元、模幂运算单元、倍点运算单元、对称加密单元、哈希摘要单元、随机数生成单元、密钥产生单元。其中,隐私计算密码模块的形态不限于软件密码模块、安全芯片、加密卡、密码机不等,不包括安全性较差的密码软算法。隐私计算密码模块内部设置模加运算、模幂运算、倍点运算、对称加密、哈希摘要、随机数生成、密钥产生等基础密码运算,支持但不限于RSA、PAillier、SM2、SM3、SM4、AES(Advanced Encryption Standard)、SHA256、DH(Diffie-Hellman)、仿射同态加密等密码算法,在模块内部构建安全的计算空间,进行指定的基础密码运算,密码算法、密钥信息、加密中间结果等均不以明文的形式暴露给隐私计算节点的CPU、内存,以及用户。即本实施例中通过在隐私计算节点内创建具有基础运算功能的隐私计算密码模块,以便密码底层通过安全密钥管理、合规化密码算法构建等方法实现安全、合规的密码运算。其中,隐私计算安全引擎通过统一的接口调用隐私计算密码模块的密码运算功能,同时,隐私计算密码模块通过统一的接口,向隐私计算安全引擎返回密码运算结果。
本实施例中,所述将所述主密钥安全导入所述隐私计算密码模块,可以包括:根据Shamir秘钥分割门限方式通过所述隐私计算安全引擎对所述主密钥进行拆分,以得到多个密钥分量;向所述隐私计算节点中的每个所述隐私计算密码模块中安全导入1个所述密钥分量。即基于Shamir算法对隐私计算密码模块采用密钥分发机制,采用shamir(t,N)门限分隔方式,将每一个隐私计算密码模块的主密钥分隔成N个分量,在当前隐私计算节点上的密码模块上分布式存储不同分量。例如图2所示,以隐私计算节点1的隐私计算密码模块Module<1,1>为例,密钥管理中心为隐私计算节点1的隐私计算密码模块Module<1,1>产生主密钥Key<1,1>,将其安全分发给隐私计算节点1的隐私计算安全引擎;隐私计算安全引擎将主密钥Key<1,1>安全导入隐私计算密码模块Module<1,1>。具体的,面对多个隐私计算密码模块,隐私计算安全引擎采用shamir(t,N)门限分隔的形式f(x)=a0+a1x+a2x2+…+ak-1xk-1,将Key<1,1>拆分成N份,得到N个密钥分量向隐私计算密码模块Module<1,1>导入向隐私计算节点1上除Module<1,1>之外的密码模块分别导入1个密钥分量。同理,其他隐私计算密码模块采用类似的方式实现主密钥的安全导入及密钥分量的分发。
本实施例中,所述向所述隐私计算节点中的每个所述隐私计算密码模块中安全导入1个所述密钥分量之后,还可以包括:若向所述隐私计算节点内的所有所述隐私计算密码模块进行密钥分量导入后存在剩余的密钥分量,则将所述剩余的密钥分量均匀随机的分发给其余隐私计算节点中的隐私计算密码模块。可以理解的是,优先在当前隐私计算节点上的密码模块上分布式存储不同分量,如果密钥分量还存在剩余,则均匀、随机地向其他计算节点的密码模块分发密钥分量,并进行安全存储;也就是说,如果当前隐私计算节点分发完成后密钥分量还存在剩余,则均匀、随机地向其他计算节点的密码模块Module<i,j>分发密钥分量,并进行安全存储。
本实施例中,所述向所述隐私计算节点中的每个所述隐私计算密码模块中安全导入1个所述密钥分量之后,还可以包括:通过所述隐私计算安全引擎记录所述密钥分量的导入记录;当所述主密钥无法获取时,根据所有所述隐私计算密码模块内包含的密钥分量利用Shamir门限恢复方式恢复所述主密钥。可以理解的是,隐私计算安全引擎记录密钥分量的分发情况。一旦Module<1,1>上的主密钥丢失或者破坏,可以采用(t,N)门限恢复的方式恢复Module<1,1>的主密钥。
步骤S12:获取与其余隐私计算节点的隐私计算请求,根据所述隐私计算请求对所述隐私计算安全引擎发起安全协议的调用请求。
本实施例中,当隐私计算节点获取到与其余隐私计算节点的隐私计算请求后,根据该隐私计算请求对本地隐私计算安全引擎发起安全协议的调用请求。由此通过隐私计算安全引擎,可对接上层应用,实现隐私计算安全协议,将安全协议算子转化为本地密码调用。隐私计算节点应用调用隐私计算安全引擎,以便使用秘密分享、混淆电路、同态加密等安全算子。
步骤S13:利用所述隐私计算安全引擎根据所述调用请求调用所述隐私计算密码模块,以便所述隐私计算密码模块按照所述安全协议进行安全合规的密码运算。
本实施例中,隐私计算安全引擎接到调用后,根据调用请求调用隐私计算密码模块,从而隐私计算密码模块按照安全协议利用上述主密钥进行密码运算。由此一来,面向联邦学习、安全多方计算技术场景,密码实现不采用传统的软算法方式,而是采用分层分级的密码应用架构,将隐私计算的密码实现切分为安全协议算子、密码底层两个层级,安全协议算子通过隐私计算安全引擎实现应用对接和密码调用,密码底层通过隐私计算密码模块实现安全、合规的密码运算。
本实施例中,所述利用所述隐私计算安全引擎根据所述调用请求调用所述隐私计算密码模块,以便所述隐私计算密码模块按照所述安全协议进行安全合规的密码运算,可以包括:获取所述隐私计算密码模块对应的密码能力表;所述密码能力表包含所述隐私计算节点内所有所述隐私计算密码模块对应的密码性能;根据每个所述隐私计算密码模块对应的密码性能以及所述调用请求对应的安全算子计算规模,从所有所述隐私计算密码模块中筛选出一个或多个隐私计算密码模块作为目标隐私计算密码模块;利用所述目标隐私计算密码模块基于所述主密钥按照所述安全协议进行密码运算,并更新所述密码能力表中所述目标隐私计算密码模块对应的密码性能。其中,上述密码性能包括模加运算性能、模幂运算性能、倍点运算性能、对称加密性能、哈希摘要性能、随机数生成性能。
可以理解的是,本实施例中隐私计算安全引擎通过优化调度技术,将密码运算分派给不同的隐私计算密码模块。隐私计算安全引擎下可挂接多个(如K个)隐私计算密码模块,隐私计算安全引擎建立一张为空的密码能力表,该表需记录各个隐私计算密码模块的模加运算性能、模幂运算性能、倍点运算性能、对称加密性能、哈希摘要性能、随机数生成性能,以及通信开销;初始化阶段,隐私计算安全引擎在密码能力表中登记各个隐私计算密码模块的初始密码性能以及通信开销;隐私计算安全引擎接收到安全算子任务时,首先判断算子计算规模,如果算子规模适中或偏小,则为该算子指派一个密码模块;如果算子规模较大(如需进行百万次模幂运算等),则为该算子指派个密码模块;隐私计算安全引擎根据算子计算规模、密码运算类型,生成密码能力需求,选择相关能力最高的1个或多个隐私计算密码模块,将该计算任务派发给相关隐私计算密码模块;然后在密码能力表中,将相应密码模块的密码性能减去本任务的密码性能;某个安全算子任务结束时,密码能力剩余表将更新。即本实施例中根据计算任务的计算规模,以及各个隐私计算密码模块的性能,筛选出相应数量的能够支持任务计算的隐私计算模块执行计算。可见,面向联邦学习、安全多方计算等技术场景,为了提高隐私计算密码模块的使用性能,在隐私计算安全引擎中提供优化调度技术,综合判断任务的算子规模、密码运算性能、密钥使用情况,并结合各个密码模块的统计信息,实时、动态地调度1到个密码模块实现指定的密码运算,实现多个密码运算的动态优化调度,提高密码运算效率。
本实施例中,所述利用所述目标隐私计算密码模块基于所述主密钥按照所述安全协议进行密码运算之后,还可以包括:利用所述隐私计算安全引擎为所述调用请求创建任务记录表;所述任务记录表用于记录所述调用请求对应的目标参数信息;所述目标参数信息包括调用任务标识、密钥标识、隐私计算密码模块标识;当所述隐私计算安全引擎接收到新的调用请求后,判断所述新的调用请求对应的目标参数信息是否记录在所述任务记录表中;若是,则利用所述目标隐私计算密码模块执行所述新的调用请求对应的密码运算。
可以理解的是,隐私计算安全引擎通过建立一个空的<任务ID、密钥ID、密码模块ID>三元组,记录每个调用请求的分派情况。隐私计算安全引擎记录该任务的<任务ID、密钥ID、密码模块ID>三元组信息;隐私计算安全引擎接收到其他调用请求时,首先比对调用请求所需要的密钥ID是否在三元组记录中;如果是,则直接将任务分派给对应ID的密码模块,记录该任务的<任务ID、密钥ID、密码模块ID>三元组信息;如果不是,则按照上述目标隐私计算密码模块的选取方式选择出执行计算任务的隐私计算密码模块;当某个安全算子任务结束时,删除该任务对应的三元组信息。
由上可见,本实施例中通过本地的隐私计算安全引擎获取密钥管理中心为所述隐私计算节点内隐私计算密码模块生成的主密钥,并将所述主密钥安全导入所述隐私计算密码模块;获取与其余隐私计算节点的隐私计算请求,根据所述隐私计算请求对所述隐私计算安全引擎发起安全协议的调用请求;利用所述隐私计算安全引擎根据所述调用请求调用所述隐私计算密码模块,以便所述隐私计算密码模块按照所述安全协议进行安全合规的密码运算。可见,通过在隐私计算节点中构建隐私计算安全引擎和隐私计算密码模块,利用隐私计算安全引擎进行安全的应用对接和密码调用,利用隐私计算密码模块对密码底层实现安全、合规的密码运算,防止密钥、敏感信息、密码运算过程等暴露给CPU、操作系统以及内存,并且,适用于联邦学习、安全多方计算等多个技术场景,解决了隐私计算在本地计算节点的密码应用问题,提高了密码应用的安全性和合规性。
相应的,本申请实施例还公开了一种密码应用装置,参见图3所示,该装置包括:
密钥获取模块11,用于通过本地的隐私计算安全引擎获取密钥管理中心为所述隐私计算节点内隐私计算密码模块生成的主密钥,并将所述主密钥安全导入所述隐私计算密码模块;
协议调用模块12,用于获取与其余隐私计算节点的隐私计算请求,根据所述隐私计算请求对所述隐私计算安全引擎发起安全协议的调用请求;
密码运算模块13,用于利用所述隐私计算安全引擎根据所述调用请求调用所述隐私计算密码模块,以便所述隐私计算密码模块按照所述安全协议进行安全合规的密码运算。
由上可见,本实施例中通过本地的隐私计算安全引擎获取密钥管理中心为所述隐私计算节点内隐私计算密码模块生成的主密钥,并将所述主密钥安全导入所述隐私计算密码模块;获取与其余隐私计算节点的隐私计算请求,根据所述隐私计算请求对所述隐私计算安全引擎发起安全协议的调用请求;利用所述隐私计算安全引擎根据所述调用请求调用所述隐私计算密码模块,以便所述隐私计算密码模块按照所述安全协议进行安全合规的密码运算。可见,通过在隐私计算节点中构建隐私计算安全引擎和隐私计算密码模块,利用隐私计算安全引擎进行安全的应用对接和密码调用,利用隐私计算密码模块对密码底层实现安全、合规的密码运算,防止密钥、敏感信息、密码运算过程等暴露给CPU、操作系统以及内存,并且,适用于联邦学习、安全多方计算等多个技术场景,解决了隐私计算在本地计算节点的密码应用问题,提高了密码应用的安全性和合规性。
在一些具体实施例中,所述密钥获取模块11具体可以包括:
密钥拆分单元,用于根据Shamir秘钥分割门限方式通过所述隐私计算安全引擎对所述主密钥进行拆分,以得到多个密钥分量;
密钥导入单元,用于向所述隐私计算节点中的每个所述隐私计算密码模块中安全导入1个所述密钥分量。
在一些具体实施例中,所述密码应用装置具体可以包括:
密钥分发单元,用于若向所述隐私计算节点内的所有所述隐私计算密码模块进行密钥分量导入后存在剩余的密钥分量,则将所述剩余的密钥分量均匀随机的分发给其余隐私计算节点中的隐私计算密码模块。
在一些具体实施例中,所述密码应用装置具体可以包括:
记录单元,用于通过所述隐私计算安全引擎记录所述密钥分量的导入记录;
密钥恢复单元,用于当所述主密钥无法获取时,根据所有所述隐私计算密码模块内包含的密钥分量利用Shamir门限恢复方式恢复所述主密钥。
在一些具体实施例中,所述密码运算模块13具体可以包括:
密码能力表获取单元,用于获取所述隐私计算密码模块对应的密码能力表;所述密码能力表包含所述隐私计算节点内所有所述隐私计算密码模块对应的密码性能;
目标隐私计算密码模块确定单元,用于根据每个所述隐私计算密码模块对应的密码性能以及所述调用请求对应的安全算子计算规模,从所有所述隐私计算密码模块中筛选出一个或多个隐私计算密码模块作为目标隐私计算密码模块;
密码运算单元,用于利用所述目标隐私计算密码模块基于所述主密钥按照所述安全协议进行密码运算,并更新所述密码能力表中所述目标隐私计算密码模块对应的密码性能。
在一些具体实施例中,所述密码应用装置具体可以包括:
任务记录表创建单元,用于利用所述隐私计算安全引擎为所述调用请求创建任务记录表;所述任务记录表用于记录所述调用请求对应的目标参数信息;所述目标参数信息包括调用任务标识、密钥标识、隐私计算密码模块标识;
判断单元,用于当所述隐私计算安全引擎接收到新的调用请求后,判断所述新的调用请求对应的目标参数信息是否记录在所述任务记录表中;
密码运算执行单元,用于若所述判断单元的判断结果为是,则利用所述目标隐私计算密码模块执行所述新的调用请求对应的密码运算。
在一些具体实施例中,所述密码运算模块13具体可以包括:
加密单元,用于通过所述隐私计算密码模块内部创建的安全计算空间,构建安全、合规的密码运算环境,以确保密钥安全及密码运算过程安全;在所述隐私计算密码模块内部利用所述主密钥对隐私计算关联的敏感信息进行加密存储;
所述隐私计算密码模块包括模加运算单元、模幂运算单元、倍点运算单元、对称加密单元、哈希摘要单元、随机数生成单元、密钥产生单元。
进一步的,本申请实施例还公开了一种电子设备,参见图4所示,图中的内容不能被认为是对本申请的使用范围的任何限制。
图4为本申请实施例提供的一种电子设备20的结构示意图。该电子设备20,具体可以包括:至少一个处理器21、至少一个存储器22、电源23、通信接口24、输入输出接口25和通信总线26。其中,所述存储器22用于存储计算机程序,所述计算机程序由所述处理器21加载并执行,以实现前述任一实施例公开的密码应用方法中的相关步骤。
本实施例中,电源23用于为电子设备20上的各硬件设备提供工作电压;通信接口24能够为电子设备20创建与外界设备之间的数据传输通道,其所遵循的通信协议是能够适用于本申请技术方案的任意通信协议,在此不对其进行具体限定;输入输出接口25,用于获取外界输入数据或向外界输出数据,其具体的接口类型可以根据具体应用需要进行选取,在此不进行具体限定。
另外,存储器22作为资源存储的载体,可以是只读存储器、随机存储器、磁盘或者光盘等,其上所存储的资源包括操作系统221、计算机程序222及包括主密钥在内的数据223等,存储方式可以是短暂存储或者永久存储。
其中,操作系统221用于管理与控制电子设备20上的各硬件设备以及计算机程序222,以实现处理器21对存储器22中海量数据223的运算与处理,其可以是Windows Server、Netware、Unix、Linux等。计算机程序222除了包括能够用于完成前述任一实施例公开的由电子设备20执行的密码应用方法的计算机程序之外,还可以进一步包括能够用于完成其他特定工作的计算机程序。
进一步的,本申请实施例还公开了一种计算机存储介质,所述计算机存储介质中存储有计算机可执行指令,所述计算机可执行指令被处理器加载并执行时,实现前述任一实施例公开的密码应用方法步骤。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同或相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
以上对本发明所提供的一种密码应用方法、装置、设备及介质进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
Claims (10)
1.一种密码应用方法,其特征在于,应用于隐私计算节点,包括:
通过本地的隐私计算安全引擎获取密钥管理中心为所述隐私计算节点内隐私计算密码模块生成的主密钥,并将所述主密钥安全导入所述隐私计算密码模块;
获取与其余隐私计算节点的隐私计算请求,根据所述隐私计算请求对所述隐私计算安全引擎发起安全协议的调用请求;
利用所述隐私计算安全引擎根据所述调用请求调用所述隐私计算密码模块,以便所述隐私计算密码模块按照所述安全协议进行安全合规的密码运算。
2.根据权利要求1所述的密码应用方法,其特征在于,所述将所述主密钥安全导入所述隐私计算密码模块,包括:
根据Shamir秘钥分割门限方式通过所述隐私计算安全引擎对所述主密钥进行拆分,以得到多个密钥分量;
向所述隐私计算节点中的每个所述隐私计算密码模块中安全导入1个所述密钥分量。
3.根据权利要求2所述的密码应用方法,其特征在于,所述向所述隐私计算节点中的每个所述隐私计算密码模块中安全导入1个所述密钥分量之后,还包括:
若向所述隐私计算节点内的所有所述隐私计算密码模块进行密钥分量导入后存在剩余的密钥分量,则将所述剩余的密钥分量均匀随机的分发给其余隐私计算节点中的隐私计算密码模块。
4.根据权利要求2所述的密码应用方法,其特征在于,所述向所述隐私计算节点中的每个所述隐私计算密码模块中安全导入1个所述密钥分量之后,还包括:
通过所述隐私计算安全引擎记录所述密钥分量的导入记录;
当所述主密钥无法获取时,根据所有所述隐私计算密码模块内包含的密钥分量利用Shamir门限恢复方式恢复所述主密钥。
5.根据权利要求1所述的密码应用方法,其特征在于,所述利用所述隐私计算安全引擎根据所述调用请求调用所述隐私计算密码模块,以便所述隐私计算密码模块按照所述安全协议进行安全合规的密码运算,包括:
获取所述隐私计算密码模块对应的密码能力表;所述密码能力表包含所述隐私计算节点内所有所述隐私计算密码模块对应的密码性能;
根据每个所述隐私计算密码模块对应的密码性能以及所述调用请求对应的安全算子计算规模,从所有所述隐私计算密码模块中筛选出一个或多个隐私计算密码模块作为目标隐私计算密码模块;
利用所述目标隐私计算密码模块基于所述主密钥按照所述安全协议进行密码运算,并更新所述密码能力表中所述目标隐私计算密码模块对应的密码性能。
6.根据权利要求5所述的密码应用方法,其特征在于,所述利用所述目标隐私计算密码模块基于所述主密钥按照所述安全协议进行密码运算之后,还包括:
利用所述隐私计算安全引擎为所述调用请求创建任务记录表;所述任务记录表用于记录所述调用请求对应的目标参数信息;所述目标参数信息包括调用任务标识、密钥标识、隐私计算密码模块标识;
当所述隐私计算安全引擎接收到新的调用请求后,判断所述新的调用请求对应的目标参数信息是否记录在所述任务记录表中;
若是,则利用所述目标隐私计算密码模块执行所述新的调用请求对应的密码运算。
7.根据权利要求1至6任一项所述的密码应用方法,其特征在于,所述隐私计算密码模块按照所述安全协议进行安全合规的密码运算,包括:
通过所述隐私计算密码模块内部创建的安全计算空间,构建安全、合规的密码运算环境,以确保密钥安全及密码运算过程安全;
在所述隐私计算密码模块内部利用所述主密钥对隐私计算关联的敏感信息进行加密存储。
8.一种密码应用装置,其特征在于,包括:
密钥获取模块,用于通过本地的隐私计算安全引擎获取密钥管理中心为所述隐私计算节点内隐私计算密码模块生成的主密钥,并将所述主密钥安全导入所述隐私计算密码模块;
协议调用模块,用于获取与其余隐私计算节点的隐私计算请求,根据所述隐私计算请求对所述隐私计算安全引擎发起安全协议的调用请求;
密码运算模块,用于利用所述隐私计算安全引擎根据所述调用请求调用所述隐私计算密码模块,以便所述隐私计算密码模块按照所述安全协议进行安全合规的密码运算。
9.一种电子设备,其特征在于,包括:
存储器,用于保存计算机程序;
处理器,用于执行所述计算机程序,以实现如权利要求1至7任一项所述的密码应用方法。
10.一种计算机可读存储介质,其特征在于,用于存储计算机程序;其中计算机程序被处理器执行时实现如权利要求1至7任一项所述的密码应用方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210717775.5A CN114944960B (zh) | 2022-06-20 | 2022-06-20 | 一种密码应用方法、装置、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210717775.5A CN114944960B (zh) | 2022-06-20 | 2022-06-20 | 一种密码应用方法、装置、设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114944960A true CN114944960A (zh) | 2022-08-26 |
CN114944960B CN114944960B (zh) | 2023-07-25 |
Family
ID=82910396
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210717775.5A Active CN114944960B (zh) | 2022-06-20 | 2022-06-20 | 一种密码应用方法、装置、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114944960B (zh) |
Citations (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20160080379A1 (en) * | 2014-09-17 | 2016-03-17 | Microsoft Technology Licensing, Llc | Efficient and reliable attestation |
US20160219024A1 (en) * | 2015-01-26 | 2016-07-28 | Listal Ltd. | Secure Dynamic Communication Network And Protocol |
CN107360146A (zh) * | 2017-07-03 | 2017-11-17 | 深圳大学 | 一种接受保证的隐私保护空间众包任务分配系统及方法 |
CN109067528A (zh) * | 2018-08-31 | 2018-12-21 | 阿里巴巴集团控股有限公司 | 密码运算、创建工作密钥的方法、密码服务平台及设备 |
CN109101822A (zh) * | 2018-07-10 | 2018-12-28 | 西安交通大学 | 一种解决多方计算中数据隐私泄露问题的方法 |
US20200366653A1 (en) * | 2019-05-13 | 2020-11-19 | Verizon Patent And Licensing Inc. | System and method for providing a privacy layer to secure client data in a network |
CN112270415A (zh) * | 2020-11-25 | 2021-01-26 | 矩阵元技术(深圳)有限公司 | 一种加密机器学习的训练数据准备方法、装置和设备 |
CN113139205A (zh) * | 2021-04-06 | 2021-07-20 | 华控清交信息科技(北京)有限公司 | 一种安全计算方法、通用计算引擎、用于安全计算的装置和安全计算系统 |
CN113505395A (zh) * | 2021-09-09 | 2021-10-15 | 华控清交信息科技(北京)有限公司 | 一种隐私计算方法和隐私计算系统 |
CN113536379A (zh) * | 2021-07-19 | 2021-10-22 | 建信金融科技有限责任公司 | 一种隐私数据的查询方法、装置及电子设备 |
CN113591113A (zh) * | 2021-07-29 | 2021-11-02 | 华控清交信息科技(北京)有限公司 | 一种隐私计算方法、装置、系统及电子设备 |
CN113779606A (zh) * | 2021-09-15 | 2021-12-10 | 杭州溪塔科技有限公司 | 一种降低隐私泄露风险的信息校验方法及系统 |
CN113987554A (zh) * | 2021-12-23 | 2022-01-28 | 支付宝(杭州)信息技术有限公司 | 获取数据授权的方法、装置及系统 |
CN114036573A (zh) * | 2021-11-30 | 2022-02-11 | 支付宝(杭州)信息技术有限公司 | 支持隐私计算的计算设备 |
CN114614970A (zh) * | 2022-03-23 | 2022-06-10 | 北京邮电大学 | 一种基于多计算方和同态加密的隐私数据安全处理方法 |
CN114638000A (zh) * | 2022-02-25 | 2022-06-17 | 蚂蚁区块链科技(上海)有限公司 | 用于隐私计算的数据加密方法以及隐私计算方法、设备和系统 |
-
2022
- 2022-06-20 CN CN202210717775.5A patent/CN114944960B/zh active Active
Patent Citations (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20160080379A1 (en) * | 2014-09-17 | 2016-03-17 | Microsoft Technology Licensing, Llc | Efficient and reliable attestation |
US20160219024A1 (en) * | 2015-01-26 | 2016-07-28 | Listal Ltd. | Secure Dynamic Communication Network And Protocol |
CN107360146A (zh) * | 2017-07-03 | 2017-11-17 | 深圳大学 | 一种接受保证的隐私保护空间众包任务分配系统及方法 |
CN109101822A (zh) * | 2018-07-10 | 2018-12-28 | 西安交通大学 | 一种解决多方计算中数据隐私泄露问题的方法 |
CN109067528A (zh) * | 2018-08-31 | 2018-12-21 | 阿里巴巴集团控股有限公司 | 密码运算、创建工作密钥的方法、密码服务平台及设备 |
US20200366653A1 (en) * | 2019-05-13 | 2020-11-19 | Verizon Patent And Licensing Inc. | System and method for providing a privacy layer to secure client data in a network |
CN112270415A (zh) * | 2020-11-25 | 2021-01-26 | 矩阵元技术(深圳)有限公司 | 一种加密机器学习的训练数据准备方法、装置和设备 |
CN113139205A (zh) * | 2021-04-06 | 2021-07-20 | 华控清交信息科技(北京)有限公司 | 一种安全计算方法、通用计算引擎、用于安全计算的装置和安全计算系统 |
CN113536379A (zh) * | 2021-07-19 | 2021-10-22 | 建信金融科技有限责任公司 | 一种隐私数据的查询方法、装置及电子设备 |
CN113591113A (zh) * | 2021-07-29 | 2021-11-02 | 华控清交信息科技(北京)有限公司 | 一种隐私计算方法、装置、系统及电子设备 |
CN113505395A (zh) * | 2021-09-09 | 2021-10-15 | 华控清交信息科技(北京)有限公司 | 一种隐私计算方法和隐私计算系统 |
CN113779606A (zh) * | 2021-09-15 | 2021-12-10 | 杭州溪塔科技有限公司 | 一种降低隐私泄露风险的信息校验方法及系统 |
CN114036573A (zh) * | 2021-11-30 | 2022-02-11 | 支付宝(杭州)信息技术有限公司 | 支持隐私计算的计算设备 |
CN113987554A (zh) * | 2021-12-23 | 2022-01-28 | 支付宝(杭州)信息技术有限公司 | 获取数据授权的方法、装置及系统 |
CN114638000A (zh) * | 2022-02-25 | 2022-06-17 | 蚂蚁区块链科技(上海)有限公司 | 用于隐私计算的数据加密方法以及隐私计算方法、设备和系统 |
CN114614970A (zh) * | 2022-03-23 | 2022-06-10 | 北京邮电大学 | 一种基于多计算方和同态加密的隐私数据安全处理方法 |
Non-Patent Citations (2)
Title |
---|
KEPING YU,LIANG TAN,CAIXIA YANG,KIM-KWANG RAYMOND CHOO: "A blockchain-based Shamir\'s Threshold Cryptography scheme for Data Protection in Industrial Internet of Things Settings", 《IEEE》 * |
钱文君,沈晴霓,吴鹏飞,董春涛,吴中海, 《计算机学报》 * |
Also Published As
Publication number | Publication date |
---|---|
CN114944960B (zh) | 2023-07-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Khan et al. | Towards secure mobile cloud computing: A survey | |
US9660801B2 (en) | Methods and devices for key management in an as-a-service context | |
Kumar et al. | An efficient and secure data storage in cloud computing using modified RSA public key cryptosystem | |
CN112087439A (zh) | 区块链交易查询方法、系统、计算机设备和存储介质 | |
Basu et al. | Privacy preserving collaborative filtering for SaaS enabling PaaS clouds | |
Badsha et al. | Privacy preserving user based web service recommendations | |
Qureshi et al. | Stream-based authentication strategy using IoT sensor data in multi-homing sub-aqueous big data network | |
Harchol et al. | Distributed SSH key management with proactive RSA threshold signatures | |
Celiktas et al. | A higher-level security scheme for key access on cloud computing | |
Tawalbeh et al. | Efficient and secure software-defined mobile cloud computing infrastructure | |
Biçer et al. | Highly efficient and re-executable private function evaluation with linear complexity | |
CN114519197A (zh) | 一种基于区块链和云服务的数据存储架构和方法 | |
Gomaa et al. | Virtual identity approaches evaluation for anonymous communication in cloud environments | |
Shehzad et al. | A novel hybrid encryption scheme to ensure Hadoop based cloud data security | |
Fakhar et al. | Management of symmetric cryptographic keys in cloud based environment | |
Son et al. | A new outsourcing conditional proxy re‐encryption suitable for mobile cloud environment | |
CN114944960B (zh) | 一种密码应用方法、装置、设备及存储介质 | |
CN114760602B (zh) | 全息通信方法、装置、系统及计算机可读存储介质 | |
US20230269092A1 (en) | Distributed network having a plurality of subnets | |
US20230119304A1 (en) | Post Quantum Secure Ingress/Egress Network Communication | |
CN112948803B (zh) | 应用程序的登录方法、系统、设备和存储介质 | |
Canard et al. | Toward generic method for server-aided cryptography | |
Zhang et al. | Secure outsourcing algorithms of modular exponentiations in edge computing | |
Blömer et al. | Attribute-based encryption as a service for access control in large-scale organizations | |
WO2022002428A1 (en) | Verification key generation in distributed networks |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |