CN117081740B - 基于密码机资源池的密钥管理方法及装置 - Google Patents

基于密码机资源池的密钥管理方法及装置 Download PDF

Info

Publication number
CN117081740B
CN117081740B CN202311145233.6A CN202311145233A CN117081740B CN 117081740 B CN117081740 B CN 117081740B CN 202311145233 A CN202311145233 A CN 202311145233A CN 117081740 B CN117081740 B CN 117081740B
Authority
CN
China
Prior art keywords
key
machine
sub
cipher
slot
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
Application number
CN202311145233.6A
Other languages
English (en)
Other versions
CN117081740A (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.)
Jiangnan Xinan Nanjing Technology Co ltd
Original Assignee
Jiangnan Xinan Nanjing 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 Jiangnan Xinan Nanjing Technology Co ltd filed Critical Jiangnan Xinan Nanjing Technology Co ltd
Priority to CN202311145233.6A priority Critical patent/CN117081740B/zh
Publication of CN117081740A publication Critical patent/CN117081740A/zh
Application granted granted Critical
Publication of CN117081740B publication Critical patent/CN117081740B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/085Secret sharing or secret splitting, e.g. threshold schemes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0894Escrow, recovery or storing of secret information, e.g. secret key escrow or cryptographic key storage

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Storage Device Security (AREA)

Abstract

基于密码机资源池的密钥管理方法和装置,请求根密码机的主机地址,指定根密码机的初始化位置的插槽生成共享工作密钥对;请求子密码机的主机地址,将子密码机的初始化位置插槽的设备公钥导出;将根密码机的初始化位置的插槽生成共享工作密钥对和子密码机的初始化位置插槽的设备公钥作为参数,交由根密码机加密信封转换操作;将共享工作密钥对的共享工作公钥和子密码机公钥加密的共享工作密钥私钥导入子密码机,先将共享工作密钥私钥由子密码机的初始化密钥对解密,得到明文共享密钥私钥,然后将明文共享密钥对导入目标位置。本发明使得可管理的密钥数量仅受数据库容量限制,不受密码机本身密钥插槽数量限制,实现密码运算负载均衡。

Description

基于密码机资源池的密钥管理方法及装置
技术领域
本发明属于密码机技术领域,具体涉及一种基于密码机资源池的密钥管理方法及装置。
背景技术
目前,市场上用于密钥管理和密码运算的核心产品是服务器密码机,该设备采用特殊硬件方式来进行密钥的存储和密码的运算,其安全性通过了相关部门的认证。单个服务器密码机能够存储的密钥数量有限,且运算能力受限,无法满足大规模应用环境下对密钥管理和密码运算的需求,因此出现了将多个服务器密码机组成资源池,并在此之上提供一个虚拟设备层对外提供服务的解决方案。这种方案能够将多台密码机的密钥存储能力聚合在一起,同时对外提供服务,有效地缓解了单个密码机密钥管理数量不足的问题。
但是,现有的解决方案仍然存在很大的不足之处,首先,由于单个密码机能够保存的密钥个数通常在100-200个左右,即使是由10台密码机组成的资源池能够对外提供的密钥数量也不过在数千个,对于大规模应用要求的上百万个密钥需求来说是远远不够的;其次,现有解决方法通常是将虚拟密钥对应到某一台密码机上的某个实体密钥(例如专利CN114816663A),这样做带来的后果就是和该密钥相关的密码运算也被局限在此台密码机上,导致无法实现资源池的负载均衡。
发明内容
为此,本发明提供一种基于密码机资源池的密钥管理方法及装置,使得可管理的密钥数量仅受数据库容量的限制,不受密码机本身密钥插槽数量的限制,实现了密码运算的负载均衡。
为了实现上述目的,本发明提供如下技术方案:第一方面,提供一种基于密码机资源池的密钥管理方法,包括:
对所有密码机的指定初始化位置的插槽生成密钥对,所有密码机包括资源池中密码机和资源池的上层密码机,将生成的密钥对作为初始化密钥对;
将资源池的上层密码机作为根密码机,将所述资源池中的密码机作为子密码机,记录所述根密码机和所述子密码机的主机地址;
请求所述根密码机的主机地址,指定所述根密码机的初始化位置的插槽生成共享工作密钥对;
请求所述子密码机的主机地址,将所述子密码机的初始化位置插槽的设备公钥导出;
将所述根密码机的初始化位置的插槽生成共享工作密钥对和所述子密码机的初始化位置插槽的设备公钥作为参数,交由所述根密码机进行加密信封转换操作,所述加密信封转换操作过程,所述根密码机用初始化位置的初始化密钥对解密共享密钥私钥,再将解密的共享密钥私钥用所述子密码机的设备公钥加密,得到所述子密码机的设备公钥加密的共享密钥私钥;
将共享工作密钥对的共享工作公钥和所述子密码机公钥加密的共享工作密钥私钥导入所述子密码机,先将共享工作密钥私钥由所述子密码机的初始化密钥对解密,得到明文共享密钥私钥,然后将明文共享密钥对导入目标位置。
作为基于密码机资源池的密钥管理方法优选方案,将指定所述根密码机的初始化位置的插槽生成共享工作密钥对存储到数据库中,并增加一条工作密钥表记录;
将所述子密码机的初始化位置插槽的设备公钥存储到数据库中,并增加一条设备公钥表记录。
作为基于密码机资源池的密钥管理方法优选方案,调用第一接口f1,对所有密码机的指定初始化位置的插槽生成密钥对,所有密码机包括资源池中密码机和资源池的上层密码机,将生成的密钥对作为初始化密钥对;
第一接口f1的入参包括密码机地址和端口号和密码机插槽位置,第一接口f1的出参包括成功/失败消息提示。
作为基于密码机资源池的密钥管理方法优选方案,调用第二接口f2,请求所述根密码机的主机地址,指定所述根密码机的初始化位置的插槽生成共享工作密钥对;
第二接口f2的入参包括密码机地址、端口号及密码机插槽位置;第二接口f2的出参包括明文公钥和密文私钥。
作为基于密码机资源池的密钥管理方法优选方案,调用第三接口f3,请求所述子密码机的主机地址,将所述子密码机的初始化位置插槽的设备公钥导出;
第三接口f3的入参包括密码机地址、端口号及密码机插槽位置,第三接口f3的出参包括明文公钥。
作为基于密码机资源池的密钥管理方法优选方案,调用第四接口f4,将所述根密码机的初始化位置的插槽生成共享工作密钥对和所述子密码机的初始化位置插槽的设备公钥作为参数,交由所述根密码机进行加密信封转换操作;
第四接口f4的入参包括密码机地址、端口号、密码机插槽位置、第二接口f2生成的加密私钥和子密码机的公钥;第四接口f4的出参包括外部公钥加密的私钥。
作为基于密码机资源池的密钥管理方法优选方案,调用第五接口f5,将所述根密码机的初始化位置的插槽生成共享工作密钥对和所述子密码机的初始化位置插槽的设备公钥导入所述子密码机中;
第五接口f5的入参包括密码机地址、端口号、用于解密的密码机插槽位置、加密后的密钥和导入密钥的插槽位置;第五接口f5的出参为成功/失败提示。
第二方面,提供一种基于密码机资源池的密钥管理装置,包括:
密钥对初始化模块,用于对所有密码机的指定初始化位置的插槽生成密钥对,所有密码机包括资源池中密码机和资源池的上层密码机,将生成的密钥对作为初始化密钥对;
密码机划分模块,用于将资源池的上层密码机作为根密码机,将所述资源池中的密码机作为子密码机,记录所述根密码机和所述子密码机的主机地址;
根密码机处理模块,用于请求所述根密码机的主机地址,指定所述根密码机的初始化位置的插槽生成共享工作密钥对;
子密码机处理模块,用于请求所述子密码机的主机地址,将所述子密码机的初始化位置插槽的设备公钥导出;
加密信封转换模块,用于将所述根密码机的初始化位置的插槽生成共享工作密钥对和所述子密码机的初始化位置插槽的设备公钥作为参数,交由所述根密码机进行加密信封转换操作,所述加密信封转换操作过程,所述根密码机用初始化位置的初始化密钥对解密共享密钥私钥,再将解密的共享密钥私钥用所述子密码机的设备公钥加密,得到所述子密码机的设备公钥加密的共享密钥私钥;
工作密钥共享模块,用于将共享工作密钥对的共享工作公钥和所述子密码机公钥加密的共享工作密钥私钥导入所述子密码机,先将共享工作密钥私钥由所述子密码机的初始化密钥对解密,得到明文共享密钥私钥,然后将明文共享密钥对导入目标位置。
作为基于密码机资源池的密钥管理装置优选方案,还包括:
第一记录模块,用于将指定所述根密码机的初始化位置的插槽生成共享工作密钥对存储到数据库中,并增加一条工作密钥表记录;
第二记录模块,用于将所述子密码机的初始化位置插槽的设备公钥存储到数据库中,并增加一条设备公钥表记录。
作为基于密码机资源池的密钥管理装置优选方案,所述密钥对初始化模块和所述密码机划分模块中,调用第一接口f1,第一接口f1的入参包括密码机地址、端口号和密码机插槽位置,第一接口f1的出参包括成功/失败消息提示;
所述根密码机处理模块中,调用第二接口f2,第二接口f2的入参包括密码机地址、端口号及密码机插槽位置;第二接口f2的出参包括明文公钥和密文私钥;
所述子密码机处理模块中,调用第三接口f3,第三接口f3的入参包括密码机地址、端口号及密码机插槽位置,第三接口f3的出参包括明文公钥;
调用第四接口f4,将所述根密码机的初始化位置的插槽生成共享工作密钥对和所述子密码机的初始化位置插槽的设备公钥作为参数,交由所述根密码机进行加密信封转换操作;
所述加密信封转换模块中,调第四接口f4的入参包括密码机地址、端口号、密码机插槽位置、第二接口f2生成的加密私钥和子密码机的公钥;第四接口f4的出参包括外部公钥加密的私钥;
所述工作密钥共享模块中,调用第五接口f5,第五接口f5的入参包括密码机地址、端口号、用于解密的密码机插槽位置、加密后的密钥和导入密钥的插槽位置;第五接口f5的出参为成功/失败提示。
本发明第三方面提供一种非暂态计算机可读存储介质,所述计算机可读存储介质中存储有基于密码机资源池的密钥管理方法的程序代码,所述程序代码包括用于执行第一方面或其任意可能实现方式的基于密码机资源池的密钥管理方法的指令。
本发明第四方面提供一种电子设备,包括:存储器和处理器;所述处理器和所述存储器通过总线完成相互间的通信;所述存储器存储有可被所述处理器执行的程序指令,所述处理器调用所述程序指令能够执行第一方面或其任意可能实现方式的基于密码机资源池的密钥管理方法。
本发明的有益效果如下,对所有密码机的指定初始化位置的插槽生成密钥对,所有密码机包括资源池中密码机和资源池的上层密码机,将生成的密钥对作为初始化密钥对;将资源池的上层密码机作为根密码机,将所述资源池中的密码机作为子密码机,记录所述根密码机和所述子密码机的主机地址;请求所述根密码机的主机地址,指定所述根密码机的初始化位置的插槽生成共享工作密钥对;请求所述子密码机的主机地址,将所述子密码机的初始化位置插槽的设备公钥导出;将所述根密码机的初始化位置的插槽生成共享工作密钥对和所述子密码机的初始化位置插槽的设备公钥作为参数,交由所述根密码机进行加密信封转换操作,所述加密信封转换操作过程,所述根密码机用初始化位置的初始化密钥对解密共享密钥私钥,再将解密的共享密钥私钥用所述子密码机的设备公钥加密,得到所述子密码机的设备公钥加密的共享密钥私钥;将共享工作密钥对的共享工作公钥和所述子密码机公钥加密的共享工作密钥私钥导入所述子密码机,先将共享工作密钥私钥由所述子密码机的初始化密钥对解密,得到明文共享密钥私钥,然后将明文共享密钥对导入目标位置。本发明突破了可管理的密钥受限于密码机密钥插槽数量的限制,只受限于数据库的容量大小;突破了一个工作密钥只能在一台密码机上进行密码运算的限制,实现了密码运算的负载均衡。
附图说明
为了更清楚地说明本发明的实施方式或现有技术中的技术方案,下面将对实施方式或现有技术描述中所需要使用的附图作简单地介绍。显而易见地,下面描述中的附图仅仅是示例性的,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图引申获得其他的实施附图。
本说明书所绘示的结构、比例、大小等,均仅用以配合说明书所揭示的内容,以供熟悉此技术的人士了解与阅读,并非用以限定本发明可实施的限定条件,故不具技术上的实质意义,任何结构的修饰、比例关系的改变或大小的调整,在不影响本发明所能产生的功效及所能达成的目的下,均应仍落在本发明所揭示的技术内容能涵盖的范围内。
图1为本发明实施例提供的基于密码机资源池的密钥管理方法流程示意图;
图2为本发明实施例提供的基于密码机资源池的密钥管理方法原理示意图;
图3为本发明实施例提供的基于密码机资源池的密钥管理方法中密码机初始化示意图;
图4为本发明实施例提供的基于密码机资源池的密钥管理方法中工作密钥生成与存储示意图;
图5为本发明实施例提供的基于密码机资源池的密钥管理方法中导出子密码机公钥流程示意图;
图6为本发明实施例提供的基于密码机资源池的密钥管理方法中共享工作密钥流程示意图;
图7为本发明实施例提供的基于密码机资源池的密钥管理装置示意图。
具体实施方式
以下由特定的具体实施例说明本发明的实施方式,熟悉此技术的人士可由本说明书所揭露的内容轻易地了解本发明的其他优点及功效,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
实施例1
参见图1和图2,本发明实施例1提供一种基于密码机资源池的密钥管理方法,包括以下步骤:
S1、对所有密码机的指定初始化位置的插槽生成密钥对,所有密码机包括资源池中密码机和资源池的上层密码机,将生成的密钥对作为初始化密钥对;
S2、将资源池的上层密码机作为根密码机,将所述资源池中的密码机作为子密码机,记录所述根密码机和所述子密码机的主机地址;
S3、请求所述根密码机的主机地址,指定所述根密码机的初始化位置的插槽生成共享工作密钥对;
S4、请求所述子密码机的主机地址,将所述子密码机的初始化位置插槽的设备公钥导出;
S5、将所述根密码机的初始化位置的插槽生成共享工作密钥对和所述子密码机的初始化位置插槽的设备公钥作为参数,交由所述根密码机进行加密信封转换操作,所述加密信封转换操作过程,所述根密码机用初始化位置的初始化密钥对解密共享密钥私钥,再将解密的共享密钥私钥用所述子密码机的设备公钥加密,得到所述子密码机的设备公钥加密的共享密钥私钥;
S6、将共享工作密钥对的共享工作公钥和所述子密码机公钥加密的共享工作密钥私钥导入所述子密码机,先将共享工作密钥私钥由所述子密码机的初始化密钥对解密,得到明文共享密钥私钥,然后将明文共享密钥对导入目标位置。
传统密码机组建资源池,不同设备交叉做密码服务运算时,密码机生成的密钥,根据密码规范,无法以明文的方式导出和存储在外部介质中。密码机只能根据密钥索引进行密码运算,而为了能够实现资源池的负载均衡,就需要保证不同密码机在相同索引位置存放相同的密钥。
本实施例中,在资源池中配置一台根密码机用于生成整个资源池的共享工作密钥对,然后资源池中其它的子密码机均生成各自独立的设备密钥,同时导出所有设备密钥的公钥用于密钥的信封转换,根密码机生成的工作密钥经过指定设备的公钥进行信封转换后,即可获得可被对应设备加载的工作密钥,从而实现同一个工作密钥能够被不同的设备加载。
辅助图3,本实施例中,步骤S1和S2中,调用第一接口f1,对资源池的密码机的指定初始化位置的插槽生成密钥对,将生成的密钥对作为初始化密钥对;第一接口f1的入参包括密码机地址、端口号和密码机插槽位置,第一接口f1的出参包括成功/失败消息提示。
具体的,调用第一接口f1,在所有密码机器的1号插槽生成初始化密钥对,作为初始化密钥对。然后选用一台密码机作为根密码机,其他的作为资源池中的子密码机,记录下根密码机和子密码机对应的主机地址。
其中,调用第一接口f1的实现代码如下:
“generateMachineKeyPair(hsm,position)=>success/fail”
第一接口f1功能是在密码机指定插槽位置生成密钥对;第一接口f1中,入参:
hsm-密码机地址+端口号,如http://10.2.0.10:8100;
position-密码机插槽位置;
出参:成功/失败。
辅助图4,本实施例中,步骤S3,调用第二接口f2,请求所述根密码机的主机地址,指定所述根密码机的初始化位置的插槽生成共享工作密钥对;
第二接口f2的入参包括密码机地址、端口号及密码机插槽位置;第二接口f2的出参包括明文公钥和密文私钥。
具体的,调用第二接口f2,请求根密码机主机地址,指定初始化位置的插槽生成共享工作密钥对pub,enc_pri。将步骤S1生成的初始化密钥对存入数据库中,新增一条工作密钥表记录。
其中,调用第二接口f2的实现代码如下:
“generateKeyPairWithIPK(hsm,position)=>(pk,enc_sk)”
第二接口f2功能是使用密码机指定插槽位置生成密钥对并输出;第二接口f2中,入参:
hsm-密码机地址+端口号;
position-密码机插槽位置;
出参:
pk-明文公钥;
enc_sk-密文私钥。
辅助图5,本实施例中,步骤S4,调用第三接口f3,请求所述子密码机的主机地址,将所述子密码机的初始化位置插槽的设备公钥导出;
第三接口f3的入参包括密码机地址、端口号及密码机插槽位置,第三接口f3的出参包括明文公钥。
具体的,调用第三接口f3,请求子密码机地址将初始化插槽位置的公钥pub_key_d导出。将步骤S1导出的公钥存入数据库中,新增一条设备密钥表记录。
其中,调用第三接口f3的实现代码如下:
“exportPublicKey(hsm,position)=>(pk)”
第三接口f3功能是导出密码机指定插槽位置的公钥;第三接口f3中,入参:
hsm-密码机地址+端口号;
position-密码机插槽位置;
出参:pk-明文公钥。
参见图6,本实施例中,步骤S5,调用第四接口f4,将所述根密码机的初始化位置的插槽生成共享工作密钥对和所述子密码机的初始化位置插槽的设备公钥作为参数,交由所述根密码机进行加密信封转换操作;第四接口f4的入参包括密码机地址、端口号、密码机插槽位置、第二接口f2生成的加密私钥和子密码机的公钥;第四接口f4的出参包括外部公钥加密的私钥。
具体的,调用第四接口f4,将步骤S3的根密码机的初始化位置的插槽生成共享工作密钥对和步骤S4的子密码机的初始化位置插槽的设备公钥作为参数,交由根密码机做加密信封转换操作,根密码机将使用初始化插槽密钥解密根密码机加密私钥,再用子密码机公钥将其加密成可导入HSM_C的加密私钥。
其中,调用第四接口f4的实现代码如下:
“exchangeDigitEnvelope(hsm,position,enc_sk,childPk)=>(enc_sk)”
第四接口f4功能是加密信封转换,即密码机指定插槽位置的解密密钥解密由其生成的对称密钥对私钥,得到明文的私钥,再使用外部公钥加密明文私钥,得到转换后的加密私钥;第四接口f4中,入参:
hsm-密码机地址+端口号;
position-密码机插槽位置;
enc_sk-f2接口生成的加密私钥;
childPk-子密码机公钥;
出参:enc_sk-外部公钥加密的私钥。
本实施例中,步骤S6,调用第五接口f5,将所述根密码机的初始化位置的插槽生成共享工作密钥对和所述子密码机的初始化位置插槽的设备公钥导入所述子密码机中;
第五接口f5的入参包括密码机地址、端口号、用于解密的密码机插槽位置、加密后的密钥和导入密钥的插槽位置;第五接口f5的出参为成功/失败提示。
具体的,通过第五接口f5,将根密码机的初始化位置的插槽生成共享工作密钥对和所述子密码机的初始化位置插槽的设备公钥导入子密码机HSM_C中。导入后,HSM_C会用私钥先解密子密码机公钥加密的根密码机工作密钥私钥,得到根密码机的私钥,再与传入的根密码机工作密钥公钥组合,导入指定目标插槽中,利用目标插槽位置密钥对进行后续密码运算服务。
其中,调用第五接口f5的实现代码如下:
“importKeyPairWithISK(hsm,position,pk,enc_sk,target_position)=>success/fail”
第五接口f5功能是导入密钥对到密码机指定插槽,使用密码机指定位置的解密私钥解密;第五接口f5中,入参:
hsm-密码机地址+端口号;
position-用于解密的密码机插槽位置;
enc_sk-加密后的密钥;
target_position-导入密钥的插槽位置;
出参:成功/失败消息提示。
综上所述,本发明实施例对所有密码机的指定初始化位置的插槽生成密钥对,所有密码机包括资源池中密码机和资源池的上层密码机,将生成的密钥对作为初始化密钥对;将资源池的上层密码机作为根密码机,将所述资源池中的密码机作为子密码机,记录所述根密码机和所述子密码机的主机地址;请求所述根密码机的主机地址,指定所述根密码机的初始化位置的插槽生成共享工作密钥对;请求所述子密码机的主机地址,将所述子密码机的初始化位置插槽的设备公钥导出;将所述根密码机的初始化位置的插槽生成共享工作密钥对和所述子密码机的初始化位置插槽的设备公钥作为参数,交由所述根密码机进行加密信封转换操作,所述加密信封转换操作过程,所述根密码机用初始化位置的初始化密钥对解密共享密钥私钥,再将解密的共享密钥私钥用所述子密码机的设备公钥加密,得到所述子密码机的设备公钥加密的共享密钥私钥;将共享工作密钥对的共享工作公钥和所述子密码机公钥加密的共享工作密钥私钥导入所述子密码机,先将共享工作密钥私钥由所述子密码机的初始化密钥对解密,得到明文共享密钥私钥,然后将明文共享密钥对导入目标位置。本发明基于密码机底层接口组合封装了一套适用于本发明的基础接口,通过将工作密钥加密后输出并保存在数据库中,在需要时再通过加密信封转换并导入的方式来进行密钥管理,可以使得可管理的密钥数量仅受数据库容量的限制,而不受密码机本身密钥插槽数量的限制;通过动态加载工作密钥实现了动态虚拟索引,解决了虚拟索引只能对应特定密码机插槽的限制,允许同一工作密钥在不同的密码机上进行密码运算,实现了密码运算的负载均衡。
需要说明的是,本公开实施例的方法可以由单个设备执行,例如一台计算机或服务器等。本实施例的方法也可以应用于分布式场景下,由多台设备相互配合来完成。在这种分布式场景的情况下,这多台设备中的一台设备可以只执行本公开实施例的方法中的某一个或多个步骤,这多台设备相互之间会进行交互以完成所述的方法。
需要说明的是,上述对本公开的一些实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于上述实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
实施例2
参见图7,本发明实施例2提供一种基于密码机资源池的密钥管理装置,包括:
密钥对初始化模块1,用于对所有密码机的指定初始化位置的插槽生成密钥对,所有密码机包括资源池中密码机和资源池的上层密码机,将生成的密钥对作为初始化密钥对;
密码机划分模块2,用于将资源池的上层密码机作为根密码机,将所述资源池中的密码机作为子密码机,记录所述根密码机和所述子密码机的主机地址;
根密码机处理模块3,用于请求所述根密码机的主机地址,指定所述根密码机的初始化位置的插槽生成共享工作密钥对;
子密码机处理模块4,用于请求所述子密码机的主机地址,将所述子密码机的初始化位置插槽的设备公钥导出;
加密信封转换模块5,用于将所述根密码机的初始化位置的插槽生成共享工作密钥对和所述子密码机的初始化位置插槽的设备公钥作为参数,交由所述根密码机进行加密信封转换操作,所述加密信封转换操作过程,所述根密码机用初始化位置的初始化密钥对解密共享密钥私钥,再将解密的共享密钥私钥用所述子密码机的设备公钥加密,得到所述子密码机的设备公钥加密的共享密钥私钥;
工作密钥共享模块6,用于将共享工作密钥对的共享工作公钥和所述子密码机公钥加密的共享工作密钥私钥导入所述子密码机,先将共享工作密钥私钥由所述子密码机的初始化密钥对解密,得到明文共享密钥私钥,然后将明文共享密钥对导入目标位置。
本实施例中,还包括:
第一记录模块7,用于将指定所述根密码机的初始化位置的插槽生成共享工作密钥对存储到数据库中,并增加一条工作密钥表记录;
第二记录模块8,用于将所述子密码机的初始化位置插槽的设备公钥存储到数据库中,并增加一条设备公钥表记录。
本实施例中,所述密钥对初始化模块1和所述密码机划分模块2中,调用第一接口f1,第一接口f1的入参包括密码机地址、端口号和密码机插槽位置,第一接口f1的出参包括成功/失败消息提示;
所述根密码机处理模块3中,调用第二接口f2,第二接口f2的入参包括密码机地址、端口号及密码机插槽位置;第二接口f2的出参包括明文公钥和密文私钥;
所述子密码机处理模块4中,调用第三接口f3,第三接口f3的入参包括密码机地址、端口号及密码机插槽位置,第三接口f3的出参包括明文公钥;
调用第四接口f4,将所述根密码机的初始化位置的插槽生成共享工作密钥对和所述子密码机的初始化位置插槽的设备公钥作为参数,交由所述根密码机进行加密信封转换操作;
所述加密信封转换模块5中,调第四接口f4的入参包括密码机地址、端口号、密码机插槽位置、第二接口f2生成的加密私钥和子密码机的公钥;第四接口f4的出参包括外部公钥加密的私钥;
所述工作密钥共享模块6中,调用第五接口f5,第五接口f5的入参包括密码机地址、端口号、用于解密的密码机插槽位置、加密后的密钥和导入密钥的插槽位置;第五接口f5的出参为成功/失败提示。
需要说明的是,上述装置各模块之间的信息交互、执行过程等内容,由于与本申请实施例1中的方法实施例基于同一构思,其带来的技术效果与本申请方法实施例相同,具体内容可参见本申请前述所示的方法实施例中的叙述,此处不再赘述。
实施例3
本发明实施例3提供一种非暂态计算机可读存储介质,所述计算机可读存储介质中存储有基于密码机资源池的密钥管理方法的程序代码,所述程序代码包括用于执行实施例1或其任意可能实现方式的基于密码机资源池的密钥管理方法的指令。
计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如固态硬盘(SolidState Disk、SSD))等。
实施例4
本发明实施例4提供一种电子设备,包括:存储器和处理器;
所述处理器和所述存储器通过总线完成相互间的通信;所述存储器存储有可被所述处理器执行的程序指令,所述处理器调用所述程序指令能够执行实施例1或其任意可能实现方式的基于密码机资源池的密钥管理方法。
具体的,处理器可以通过硬件来实现也可以通过软件来实现,当通过硬件实现时,该处理器可以是逻辑电路、集成电路等;当通过软件来实现时,该处理器可以是一个通用处理器,通过读取存储器中存储的软件代码来实现,该存储器可以集成在处理器中,可以位于所述处理器之外,独立存在。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本发明实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。
显然,本领域的技术人员应该明白,上述的本发明的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,并且在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件结合。
虽然,上文中已经用一般性说明及具体实施例对本发明作了详尽的描述,但在本发明基础上,可以对之作一些修改或改进,这对本领域技术人员而言是显而易见的。因此,在不偏离本发明精神的基础上所做的这些修改或改进,均属于本发明要求保护的范围。

Claims (10)

1.基于密码机资源池的密钥管理方法,其特征在于,包括:
对所有密码机的指定初始化位置的插槽生成密钥对,所有密码机包括资源池中密码机和资源池的上层密码机,将生成的密钥对作为初始化密钥对;
将资源池的上层密码机作为根密码机,将所述资源池中的密码机作为子密码机,记录所述根密码机和所述子密码机的主机地址;
请求所述根密码机的主机地址,指定所述根密码机的初始化位置的插槽生成共享工作密钥对;
请求所述子密码机的主机地址,将所述子密码机的初始化位置插槽的设备公钥导出;
将所述根密码机的初始化位置的插槽生成共享工作密钥对和所述子密码机的初始化位置插槽的设备公钥作为参数,交由所述根密码机进行加密信封转换操作,所述加密信封转换操作过程,所述根密码机用初始化位置的初始化密钥对解密共享密钥私钥,再将解密的共享密钥私钥用所述子密码机的设备公钥加密,得到所述子密码机的设备公钥加密的共享密钥私钥;
将共享工作密钥对的共享工作公钥和所述子密码机公钥加密的共享工作密钥私钥导入所述子密码机,先将共享工作密钥私钥由所述子密码机的初始化密钥对解密,得到明文共享密钥私钥,然后将明文共享密钥对导入目标位置。
2.根据权利要求1所述的基于密码机资源池的密钥管理方法,其特征在于,将指定所述根密码机的初始化位置的插槽生成共享工作密钥对存储到数据库中,并增加一条工作密钥表记录;
将所述子密码机的初始化位置插槽的设备公钥存储到数据库中,并增加一条设备公钥表记录。
3.根据权利要求1所述的基于密码机资源池的密钥管理方法,其特征在于,调用第一接口f1,对所有密码机的指定初始化位置的插槽生成密钥对,所有密码机包括资源池中密码机和资源池的上层密码机,将生成的密钥对作为初始化密钥对;
第一接口f1的入参包括密码机地址和端口号和密码机插槽位置,第一接口f1的出参包括成功/失败消息提示。
4.根据权利要求3所述的基于密码机资源池的密钥管理方法,其特征在于,调用第二接口f2,请求所述根密码机的主机地址,指定所述根密码机的初始化位置的插槽生成共享工作密钥对;
第二接口f2的入参包括密码机地址、端口号及密码机插槽位置;第二接口f2的出参包括明文公钥和密文私钥。
5.根据权利要求4所述的基于密码机资源池的密钥管理方法,其特征在于,调用第三接口f3,请求所述子密码机的主机地址,将所述子密码机的初始化位置插槽的设备公钥导出;
第三接口f3的入参包括密码机地址、端口号及密码机插槽位置,第三接口f3的出参包括明文公钥。
6.根据权利要求5所述的基于密码机资源池的密钥管理方法,其特征在于,调用第四接口f4,将所述根密码机的初始化位置的插槽生成共享工作密钥对和所述子密码机的初始化位置插槽的设备公钥作为参数,交由所述根密码机进行加密信封转换操作;
第四接口f4的入参包括密码机地址、端口号、密码机插槽位置、第二接口f2生成的加密私钥和子密码机的公钥;第四接口f4的出参包括外部公钥加密的私钥。
7.根据权利要求6所述的基于密码机资源池的密钥管理方法,其特征在于,调用第五接口f5,将所述根密码机的初始化位置的插槽生成共享工作密钥对和所述子密码机的初始化位置插槽的设备公钥导入所述子密码机中;
第五接口f5的入参包括密码机地址、端口号、用于解密的密码机插槽位置、加密后的密钥和导入密钥的插槽位置;第五接口f5的出参为成功/失败提示。
8.基于密码机资源池的密钥管理装置,其特征在于,包括:
密钥对初始化模块,用于对所有密码机的指定初始化位置的插槽生成密钥对,所有密码机包括资源池中密码机和资源池的上层密码机,将生成的密钥对作为初始化密钥对;
密码机划分模块,用于将资源池的上层密码机作为根密码机,将所述资源池中的密码机作为子密码机,记录所述根密码机和所述子密码机的主机地址;
根密码机处理模块,用于请求所述根密码机的主机地址,指定所述根密码机的初始化位置的插槽生成共享工作密钥对;
子密码机处理模块,用于请求所述子密码机的主机地址,将所述子密码机的初始化位置插槽的设备公钥导出;
加密信封转换模块,用于将所述根密码机的初始化位置的插槽生成共享工作密钥对和所述子密码机的初始化位置插槽的设备公钥作为参数,交由所述根密码机进行加密信封转换操作,所述加密信封转换操作过程,所述根密码机用初始化位置的初始化密钥对解密共享密钥私钥,再将解密的共享密钥私钥用所述子密码机的设备公钥加密,得到所述子密码机的设备公钥加密的共享密钥私钥;
工作密钥共享模块,用于将共享工作密钥对的共享工作公钥和所述子密码机公钥加密的共享工作密钥私钥导入所述子密码机,先将共享工作密钥私钥由所述子密码机的初始化密钥对解密,得到明文共享密钥私钥,然后将明文共享密钥对导入目标位置。
9.根据权利要求8所述的基于密码机资源池的密钥管理装置,其特征在于,还包括:
第一记录模块,用于将指定所述根密码机的初始化位置的插槽生成共享工作密钥对存储到数据库中,并增加一条工作密钥表记录;
第二记录模块,用于将所述子密码机的初始化位置插槽的设备公钥存储到数据库中,并增加一条设备公钥表记录。
10.根据权利要求9所述的基于密码机资源池的密钥管理装置,其特征在于,所述密钥对初始化模块和所述密码机划分模块中,调用第一接口f1,第一接口f1的入参包括密码机地址和端口号和密码机插槽位置,第一接口f1的出参包括成功/失败消息提示;
所述根密码机处理模块中,调用第二接口f2,第二接口f2的入参包括密码机地址、端口号及密码机插槽位置;第二接口f2的出参包括明文公钥和密文私钥;
所述子密码机处理模块中,调用第三接口f3,第三接口f3的入参包括密码机地址、端口号及密码机插槽位置,第三接口f3的出参包括明文公钥;
调用第四接口f4,将所述根密码机的初始化位置的插槽生成共享工作密钥对和所述子密码机的初始化位置插槽的设备公钥作为参数,交由所述根密码机进行加密信封转换操作;
所述加密信封转换模块中,调第四接口f4的入参包括密码机地址、端口号、密码机插槽位置、第二接口f2生成的加密私钥和子密码机的公钥;第四接口f4的出参包括外部公钥加密的私钥;
所述工作密钥共享模块中,调用第五接口f5,第五接口f5的入参包括密码机地址、端口号、用于解密的密码机插槽位置、加密后的密钥和导入密钥的插槽位置;第五接口f5的出参为成功/失败提示。
CN202311145233.6A 2023-09-05 2023-09-05 基于密码机资源池的密钥管理方法及装置 Active CN117081740B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202311145233.6A CN117081740B (zh) 2023-09-05 2023-09-05 基于密码机资源池的密钥管理方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202311145233.6A CN117081740B (zh) 2023-09-05 2023-09-05 基于密码机资源池的密钥管理方法及装置

Publications (2)

Publication Number Publication Date
CN117081740A CN117081740A (zh) 2023-11-17
CN117081740B true CN117081740B (zh) 2024-02-06

Family

ID=88717022

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202311145233.6A Active CN117081740B (zh) 2023-09-05 2023-09-05 基于密码机资源池的密钥管理方法及装置

Country Status (1)

Country Link
CN (1) CN117081740B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117527881A (zh) * 2023-11-20 2024-02-06 广东省电子商务认证有限公司 动态的密码机调度系统及调度方法

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006203559A (ja) * 2005-01-20 2006-08-03 Mitsubishi Electric Corp 量子暗号通信システム及び方法
CN107070642A (zh) * 2016-12-26 2017-08-18 贵州银行股份有限公司 多品牌密码机异构资源池复用技术
CN206533391U (zh) * 2016-10-17 2017-09-29 北京国泰网信科技有限公司 主站型专线加密认证装置
CN113868684A (zh) * 2021-09-30 2021-12-31 成都卫士通信息产业股份有限公司 一种签名方法、装置、服务端、介质以及签名系统
CN115765998A (zh) * 2022-11-10 2023-03-07 中国工商银行股份有限公司 一种加密机集群迁移升级接入方法及装置

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006203559A (ja) * 2005-01-20 2006-08-03 Mitsubishi Electric Corp 量子暗号通信システム及び方法
CN206533391U (zh) * 2016-10-17 2017-09-29 北京国泰网信科技有限公司 主站型专线加密认证装置
CN107070642A (zh) * 2016-12-26 2017-08-18 贵州银行股份有限公司 多品牌密码机异构资源池复用技术
CN113868684A (zh) * 2021-09-30 2021-12-31 成都卫士通信息产业股份有限公司 一种签名方法、装置、服务端、介质以及签名系统
CN115765998A (zh) * 2022-11-10 2023-03-07 中国工商银行股份有限公司 一种加密机集群迁移升级接入方法及装置

Also Published As

Publication number Publication date
CN117081740A (zh) 2023-11-17

Similar Documents

Publication Publication Date Title
CN109144961B (zh) 授权文件共享方法及装置
Sadeghi et al. Token-based cloud computing: secure outsourcing of data and arbitrary computations with lower latency
US20120269340A1 (en) Hierarchical encryption/decryption device and method thereof
CN110391900A (zh) 基于sm2算法的私钥处理方法、终端及密钥中心
CN117081740B (zh) 基于密码机资源池的密钥管理方法及装置
US11621834B2 (en) Systems and methods for preserving data integrity when integrating secure multiparty computation and blockchain technology
US10826693B2 (en) Scalable hardware encryption
US20210194694A1 (en) Data processing system
CN111798236B (zh) 交易数据加、解密方法、装置及设备
CN111555880A (zh) 数据碰撞方法、装置、存储介质及电子设备
US11139969B2 (en) Centralized system for a hardware security module for access to encryption keys
CN116861477A (zh) 基于隐私保护的数据处理方法、系统、终端及存储介质
CN106612170A (zh) Drm服务提供装置及方法、内容再现装置及方法
CN115396179A (zh) 基于区块链的数据传输方法、装置、介质及设备
CN112580061B (zh) 一种量子加解密应用接口的调用方法及相关设备
US11483136B2 (en) Wrapped keys with access control predicates
CN112583580A (zh) 一种量子密钥的处理方法及相关设备
EP4016921A1 (en) Certificate management method and apparatus
CN110289954B (zh) 一种密钥处理方法及装置
CN117155567B (zh) 基于密码机资源池的多层密钥生成管理方法及装置
CN114884655B (zh) 数据处理方法、装置、电子设备及可读存储介质
CN115563638B (zh) 数据处理方法、系统、设备及存储介质
CN112400295A (zh) 管理与单个公共密钥相关联的多个用户设备的中央私密密钥
KR102398380B1 (ko) 키 교환 방법 및 시스템
CN113381854B (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
GR01 Patent grant
GR01 Patent grant
CB03 Change of inventor or designer information

Inventor after: Zhu Hongyu

Inventor after: Bai Hongxia

Inventor after: Ma Na

Inventor after: Yin Haitao

Inventor after: Wang Xiao

Inventor after: Bai Jinlong

Inventor after: Xu Jiannan

Inventor before: Zhu Hongyu

Inventor before: Bai Jie

Inventor before: Ma Na

Inventor before: Yin Haitao

Inventor before: Wang Xiao

Inventor before: Bai Jinlong

Inventor before: Xu Jiannan