CN110009346A - 用于拆分和恢复密钥的方法、程序产品、存储介质和系统 - Google Patents
用于拆分和恢复密钥的方法、程序产品、存储介质和系统 Download PDFInfo
- Publication number
- CN110009346A CN110009346A CN201910179156.3A CN201910179156A CN110009346A CN 110009346 A CN110009346 A CN 110009346A CN 201910179156 A CN201910179156 A CN 201910179156A CN 110009346 A CN110009346 A CN 110009346A
- Authority
- CN
- China
- Prior art keywords
- user
- key
- transaction
- sub
- equipment
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 74
- 238000012545 processing Methods 0.000 claims abstract description 24
- 238000004590 computer program Methods 0.000 claims abstract description 18
- 238000012790 confirmation Methods 0.000 claims description 36
- 238000011084 recovery Methods 0.000 claims description 29
- 238000005194 fractionation Methods 0.000 claims description 21
- 230000004044 response Effects 0.000 claims description 20
- 230000001052 transient effect Effects 0.000 claims description 2
- 230000006870 function Effects 0.000 description 17
- 238000010586 diagram Methods 0.000 description 16
- 230000008569 process Effects 0.000 description 6
- 238000004891 communication Methods 0.000 description 5
- 230000005540 biological transmission Effects 0.000 description 4
- 238000004422 calculation algorithm Methods 0.000 description 4
- 238000004364 calculation method Methods 0.000 description 4
- 230000008859 change Effects 0.000 description 4
- 230000000694 effects Effects 0.000 description 4
- 230000001815 facial effect Effects 0.000 description 4
- 230000009471 action Effects 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 238000012795 verification Methods 0.000 description 3
- 230000008901 benefit Effects 0.000 description 2
- 230000005611 electricity Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000006872 improvement Effects 0.000 description 2
- 238000012163 sequencing technique Methods 0.000 description 2
- 238000001629 sign test Methods 0.000 description 2
- RYGMFSIKBFXOCR-UHFFFAOYSA-N Copper Chemical compound [Cu] RYGMFSIKBFXOCR-UHFFFAOYSA-N 0.000 description 1
- 241001269238 Data Species 0.000 description 1
- 230000018199 S phase Effects 0.000 description 1
- 238000013475 authorization Methods 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 239000003990 capacitor Substances 0.000 description 1
- 229910052802 copper Inorganic materials 0.000 description 1
- 239000010949 copper Substances 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000009795 derivation Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 210000000744 eyelid Anatomy 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 230000010365 information processing Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 238000007781 pre-processing Methods 0.000 description 1
- 210000001747 pupil Anatomy 0.000 description 1
- 210000003786 sclera Anatomy 0.000 description 1
- 230000011218 segmentation Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 238000000926 separation method Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/602—Providing cryptographic facilities or services
-
- 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/0819—Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
- H04L9/0825—Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) using asymmetric-key encryption or public key infrastructure [PKI], e.g. key signature or public key certificates
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/64—Protecting data integrity, e.g. using checksums, certificates or signatures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/70—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
- G06F21/71—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information
- G06F21/72—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information in cryptographic circuits
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/04—Payment circuits
- G06Q20/06—Private payment circuits, e.g. involving electronic currency used among participants of a common payment scheme
- G06Q20/065—Private payment circuits, e.g. involving electronic currency used among participants of a common payment scheme using e-cash
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/38—Payment protocols; Details thereof
- G06Q20/382—Payment protocols; Details thereof insuring higher security of transaction
- G06Q20/3825—Use of electronic signatures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/38—Payment protocols; Details thereof
- G06Q20/382—Payment protocols; Details thereof insuring higher security of transaction
- G06Q20/3827—Use of message hashing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/38—Payment protocols; Details thereof
- G06Q20/382—Payment protocols; Details thereof insuring higher security of transaction
- G06Q20/3829—Payment protocols; Details thereof insuring higher security of transaction involving key management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/38—Payment protocols; Details thereof
- G06Q20/40—Authorisation, e.g. identification of payer or payee, verification of customer or shop credentials; Review and approval of payers, e.g. check credit lines or negative lists
- G06Q20/401—Transaction verification
- G06Q20/4014—Identity check for transactions
- G06Q20/40145—Biometric identity checks
-
- 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/0819—Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
- H04L9/083—Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) involving central third party, e.g. key distribution center [KDC] or trusted third party [TTP]
-
- 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
- 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/0861—Generation of secret information including derivation or calculation of cryptographic keys or passwords
- H04L9/0869—Generation of secret information including derivation or calculation of cryptographic keys or passwords involving random numbers or seeds
-
- 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/0861—Generation of secret information including derivation or calculation of cryptographic keys or passwords
- H04L9/0877—Generation of secret information including derivation or calculation of cryptographic keys or passwords using additional device, e.g. trusted platform module [TPM], smartcard, USB or hardware security module [HSM]
-
- 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/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3247—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures
-
- 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/50—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees
-
- 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/56—Financial cryptography, e.g. electronic payment or e-cash
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Business, Economics & Management (AREA)
- Accounting & Taxation (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- General Physics & Mathematics (AREA)
- General Business, Economics & Management (AREA)
- Strategic Management (AREA)
- Finance (AREA)
- Computer Hardware Design (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Health & Medical Sciences (AREA)
- Bioethics (AREA)
- General Health & Medical Sciences (AREA)
- Mathematical Physics (AREA)
- Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
- Storage Device Security (AREA)
Abstract
本公开涉及用于拆分和恢复密钥的方法、存储介质、计算机程序产品和密钥管理系统。提供了一种用于在密钥管理系统中拆分交易密钥的方法,密钥管理系统包括用于管理用户组中的用户的用户设备的管理设备和与管理设备相连的硬件安全模块。该方法包括,在硬件安全模块处:获取用户组的用户个数和第一预定值;基于关于用户组中除拆分用户之外的其他用户的消息,随机生成与本次交易的处理权限相关联的交易密钥;将交易密钥拆分成与用户个数相同的多个子密钥,多个子密钥中的每一个子密钥与用户组中的一个用户相对应;以及使用与多个子密钥相对应的用户的公钥对多个子密钥分别进行加密。
Description
技术领域
本公开涉及密钥管理的方法和产品,更具体地,涉及用于拆分和恢复密钥的方法、计算机程序产品、存储介质和密钥管理系统。
背景技术
公开密钥(public key,简称公钥)、私有密钥(private key,简称私钥)来自于密码学的非对称加密算法,是区块链技术的基础。公钥是公开的,而私钥则要进行安全保管。私钥是基于随机数生成的,而公钥是将私钥通过算法推导出来的。
公钥与私钥的使用场景主要有两种:公钥加密、私钥解密;以及私钥签名、公钥验签。公钥加密、私钥解密就是用公钥加密原始数据,只有对应的私钥才能解开原始数据。这样能使得原始数据在网络中传播不被窃取,保护隐私。私钥签名、公钥验签就是用私钥对原始数据进行签名,只有对应的公钥才能验证签名串与原数据是匹配的。私钥相当于中心化记账系统中的密码,是对资产所有权的凭证。
在电子商务、资产分割、资金管理等诸多场景下,需要多个用户对待处理的交易具有支配与管理权限。在传统的权限管理方案中,为了提高安全性,防止密钥被个别拥有权限的用户所泄露,通常会采用多重签名的解决手段。在区块链技术领域,多重签名可以理解为由多个拥有权限的用户分别利用其各自的私钥依次对一个交易进行签名。
在上述传统的权限管理方案中,需要多个拥有权限的用户依次对同一交易进行签名或授权,因此使得整个交易流程比较冗长;另外,各拥有权限的用户持有各自的密钥,当任一用户丢失其密钥或者因故拒绝使用其密钥时,都有可能拖延或阻止交易的进行;另外,由于拥有权限的用户所持有的密钥通常在一段时间内是固定的,因此存在被破译的较高概率;另外,由于密钥的管理在本地进行,因此安全性不高。
有鉴于此,有必要构建一种用于管理密钥的方案,使得涉及多个拥有权限的用户的密钥支配与管理更加安全和易用。
发明内容
本公开提供一种用于管理密钥的方法和设备,能够使得密钥的支配与管理更加安全、可靠与方便使用。
根据本公开的第一方面,提供了一种用于在密钥管理系统中拆分交易密钥的方法,该密钥管理系统包括用于管理用户组中的用户的用户设备的管理设备和与该管理设备相连的硬件安全模块,该方法包括,在该硬件安全模块处:获取用户组的用户个数和第一预定值,其中所述第一预定值指示恢复所述交易密钥的最小用户个数,所述用户组用于管理所述交易密钥;基于关于所述用户组中除被确定为用于拆分交易密钥的拆分用户之外的其他用户的消息,随机生成与本次交易的处理权限相关联的所述交易密钥,所述关于其他用户的消息至少指示其他用户的公钥;将所述交易密钥拆分成与所述用户个数相同的多个子密钥,所述多个子密钥中的每一个子密钥与所述用户组中的一个用户相对应;以及使用与多个子密钥相对应的用户的公钥对所述多个子密钥进行加密。
根据本公开的第二方面,提供一种用于在密钥管理系统中恢复交易密钥的方法,所述密钥管理系统包括用于管理用户组中的用户的用户设备的管理设备和与所述管理设备相连的硬件安全模块,该方法包括,在该硬件安全模块处:获取用于恢复所述交易密钥的恢复消息,其中所述恢复消息包括用户组中同意本次交易的确认用户的个数和所述用户组中被确定为用于恢复所述交易密钥的恢复用户的用户的标识,其中所述用户组用于管理所述交易密钥;响应于确认所述确认用户的个数大于或等于第一预定值,基于所述确认用户的子密钥来恢复所述交易密钥,所述确认用户的子密钥是经由事先拆分所述交易密钥而生成的;以及基于所恢复的所述交易密钥,对关于所述本次交易的交易请求进行签名。
根据本公开的第三方面,还提供一种计算机程序产品,该计算机程序产品被有形地存储在非瞬态计算机可读存储介质上并且包括机器可执行指令,所述机器可执行指令被配置为在被执行时使机器执行上述第一或第二方面的方法的步骤。
根据本公开的第四方面,还提供一种计算机可读存储介质,存储有机器可执行指令,所述机器可执行指令被配置为在被执行时使机器执行上述第一或第二方面的方法的步骤。
根据本公开的第五方面,还提供一种密钥管理系统,包括处理器、存储器以及存储在所述存储器中的计算机程序,所述计算机程序被配置为在被所述处理器执行时使密钥管理系统执行根据上述第一或第二方面的方法的步骤。
提供发明内容部分是为了以简化的形式来介绍对概念的选择,它们在下文的具体实施方式中将被进一步描述。发明内容部分无意标识本公开的关键特征或主要特征,也无意限制本公开的范围。
附图说明
通过结合附图对本公开示例性实施例进行更详细的描述,本公开的上述以及其它目的、特征和优势将变得更加明显,其中,在本公开示例性实施例中,相同的参考标号通常代表相同部件。
图1示出了根据本公开的实施例的用于管理密钥的系统100的架构图;
图2示出了根据本公开的实施例的用于拆分交易密钥的方法200的流程图;
图3示出了根据本公开的实施例的用于恢复交易密钥的方法300的流程图;
图4示出了根据本公开的实施例的硬件安全设备130的框图;
图5示出了根据本公开的实施例的用于管理密钥的方法500的数据流向图;
图6示意性示出了适于用来实现本公开实施例的电子设备600的框图。
具体实施方式
下面将参照附图更详细地描述本公开的优选实施例。虽然附图中显示了本公开的优选实施例,然而应该理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了使本公开更加透彻和完整,并且能够将本公开的范围完整地传达给本领域的技术人员。
在本文中使用的术语“包括”及其变形表示开放性包括,即“包括但不限于”。除非特别申明,术语“或”表示“和/或”。术语“基于”表示“至少部分地基于”。术语“一个示例实施例”和“一个实施例”表示“至少一个示例实施例”。术语“另一实施例”表示“至少一个另外的实施例”。术语“第一”、“第二”等等可以指代不同的或相同的对象。下文还可能包括其他明确的和隐含的定义。不同实施例中的技术方案或者技术特征在不矛盾的情况下可以互相组合。
本文中记载的方法步骤的先后顺序不一定表示方法必须以该出现的先后顺序进行。只有本领域普通技术人员(例如程序员)在阅读本文后直接明确地认为该技术步骤应当按照特定顺序实施时,该步骤顺序才具有限定作用。在现代计算机系统中,方法步骤根据需要可以是并行执行的、或者以不同于出现在文中的顺序执行。
如上文所描述的,传统的权限管理方案中,由于用户所持有的密钥长时间固定不变、并且交易密钥总是由同一本地用户随机产生,存在交易容易被破解或泄露的风险。因此,传统的权限管理方案的签名过程在本地进行,不够安全和方便,而且系统的可靠性较低,容易受制于一些涉及权限使用的不当行为。
为了至少部分地解决上述问题以及其他潜在问题中的一个或者多个,本公开的示例实施例提出了一种用于管理密钥的方案。
在该方案的一个方面中,提供了一种在密钥管理系统中对交易密钥进行拆分的方法,该密钥管理系统包括用于管理用户组中的用户的用户设备的管理设备和与管理设备相连的硬件安全模块,该方法包括,在硬件安全模块处:获取用户组的用户个数和第一预定值,其中所述第一预定值指示恢复所述交易密钥的最小用户个数,所述用户组用于管理所述交易密钥;基于关于所述用户组中除被确定为用于拆分所述交易密钥的拆分用户之外的其他用户的消息,随机生成与本次交易的处理权限相关联的所述交易密钥,所述关于其他用户的消息至少指示其他用户的公钥;将所述交易密钥拆分成与所述用户个数相同的多个子密钥,所述多个子密钥中的每一个子密钥与所述用户组中的一个用户相对应;以及使用与多个子密钥相对应的用户的公钥对所述多个子密钥分别进行加密。在该方案的另一方面中,还提供了一种对交易密钥进行恢复的方法,该方法包括,在硬件安全模块处:获取用于恢复所述交易密钥的恢复消息,其中所述恢复消息包括用户组中同意本次交易的确认用户的个数和用户组中被确定为用于恢复所述交易密钥的恢复用户的用户的标识,其中所述用户组用于管理所述交易密钥;响应于确认所述确认用户的个数大于或等于第一预定值,基于所述确认用户的子密钥来恢复所述交易密钥,所述确认用户的子密钥是经由事先拆分所述交易密钥而生成的;以及基于所恢复的所述交易密钥,对关于所述本次交易的交易请求进行签名。
在本文中,交易是指“区块链交易”,即由区块链网络中的一个节点发起的、基于整个区块链网络的共识机制记录在整个区块链网络的分布式账本中的交易。
在上述方案中,在特定的硬件安全模块中随机生成交易密钥并将该交易密钥拆分成与用户组中的用户个数相同的多个子密钥,并且每一个子密钥经由与子密钥对应的用户的公钥加密。本公开的示例实施例所提出方案降低了因交易密钥固定或者交易密钥总是由同一用户随机产生而导致的易被破解或泄露的风险。而且,由于拥有子密钥的单个用户无法独立恢复交易密钥,需要多个用户一同协作才能恢复交易密钥,因此降低了交易密钥由同一用户恢复和使用所造成的风险,进一步提高了交易密钥的安全性。此外,通过设置恢复交易密钥的最小用户个数,使得能够在个别用户出现问题的情况下(例如丢失子密钥或者拒绝使用子密钥),依然可以通过其他用户的协作而恢复和使用交易密钥,从而提高了权限管理系统的可靠性和强健性。另外,通过将经加密的多个子密钥发送给管理设备,管理设备可以缓存经加密的子密钥,不需要用户组的其他用户同步操作,因而能够实现交易密钥在多个用户之间进行拆分与分发的异步处理,提高了权限管理系统的方便性。另外,密钥的拆分以及恢复都在非本地进行,可以进一步确保密钥系统的安全性。
图1示出了根据本公开的实施例的用于管理密钥的系统100的架构图。如图1所示,系统100包括管理设备110、硬件安全模块(Hardware Security Module,HSM)160、多个用户设备120-1、120-2、120-3、120-4至120-N(以下有时也统称为用户设备120),该多个用户设备例如与多个用户140-1、140-2、140-3、140-4至140-N(以下有时也统称为用户140)相关联。用户140-1至140-N例如对交易或资产处置等事项共同拥有权限,因此可以组建成管理交易密钥的用户组。上述管理设备110和多个用户设备120-1、120-2、120-3、120-4至120-N经由网络150进行数据交互。关于管理设备110,其例如是但不限个人计算机、服务器或其他计算设备。网络150可以是有线网络或者各种无线网络。
硬件安全模块160可以是满足预定的安全认证标准,例如信息技术安全评估统一准则(Common Criteria)、美国联邦信息处理标准(FIPS)140-2等国际认证的硬件安全模块,其包括存储器(图中未示出)和处理器(图中未示出)。根据本发明的硬件安全模块160被进一步定制化开发为能够根据各种密码学算法产生用作交易密钥的密钥、对交易密钥进行拆分和恢复等。这些密码学算法可以使用本领域中公知的算法,在此不再赘述。
管理设备110与硬件安全模块160位于同一安全网域内,以使得只有授权用户才能够通过管理设备110来访问硬件安全模块160。用户设备120或其他外部组件通过管理设备110才能够访问硬件安全模块160,即,管理设备110可以看作访问硬件安全模块160的网关。在不同实施例中,管理设备110和硬件安全模块160可以是物理上分离的硬件且通过安全链路互相连接,但管理设备110与硬件安全模块160的关系不限于此,也可以是管理设备110内置有硬件安全模块160,还可以是管理设备110与硬件安全模块160是一体的硬件但在逻辑上分离。在本文中,为了方便描述起见,也可以将如图1中所示的管理设备110和与该管理设备110相关联的硬件安全设备160的组合称为密钥管理系统170。
管理设备110用于通过与用户设备120交互,实现各用户140的用户设备120的初始化,指定或随机确定用户组中的组队用户、拆分用户或恢复用户,协助组队用户组建用于管理交易密钥的用户组以及缓存并分发由硬件安全模块160拆分产生的子密钥等。
在一些实施例中,管理设备110响应于用户设备的报到请求,确认用户设备是否通过验证,以及通过确认用户组中的每一个用户的用户设备是否通过验证,进而确认整个用户组是否通过验证。在一些实施例中,管理设备110还可以用于从用于组建用户组的组队用户处获取用户组的用户个数和恢复交易密钥的最小用户个数(即第一预定值)。
硬件安全模块160用于交易密钥生成,协助拆分用户将交易密钥拆分成与用户组中用户个数相同的多个子密钥,以及协助恢复用户进行交易密钥的恢复。具体而言,硬件安全模块160可以用于随机生成交易密钥、构建用于拆分交易密钥的多项式以将该交易密钥拆分成多个子密钥以及响应于恢复用户的请求而根据多个子密钥恢复交易密钥等等。管理设备110与硬件安全模块160的功能不限于此处的描述。例如,硬件安全模块160的功能除了此处描述的功能外,还可以承担部分或全部管理设备110的功能,即管理设备110和硬件安全模块160集成在一起的情况。
本文中所述的“非本地”是相对于下文的用户设备120而言的,从用户140的角度来看,用户设备120可以称为本地设备,而管理设备110和硬件安全模块160可以称为非本地设备,例如可以是云端或者服务器端的设备。通过在非本地的硬件安全模块160处对交易密钥进行拆分和恢复,而不是在本地的用户设备处进行,可以确保密钥不被未授权的第三方窃取。其中,所述硬件安全模块可以采用平台安全架构(Platform Security Architecture,PSA)框架。由于采用平台安全架构框架的硬件安全模块(HSM)易于定制,且理论上不能被破解,因此,可以进一步确保整个系统的安全性。
关于用户设备120-1、120-2、120-3、120-4至120-N,其例如是但不限于常规的手机、平板电脑、个人计算机等。每个用户设备120具有与其相关联的硬件安全设备130(例如130-1、130-2、130-3、130-4或130-N)。硬件安全设备130例如而不限于USB KEY,其例如可以即插即用到用户设备120上。硬件安全设备130可以创建自己的用于非对称加密的公钥K和私钥P对。在本文中,硬件安全设备130的公钥K和私钥P主要用于相应的用户设备120的身份认证。例如,公钥K可以作为硬件安全设备130(或相应的用户设备120)在整个系统100中的身份标识符,而私钥P用于执行签名,以使得管理设备110(或相应的硬件安全模块160)能够利用公钥K执行验签。在这种情况下,硬件安全设备130的结构和功能与现有的USB KEY类似。
此外,在另一些实施例中,硬件安全设备130是配置有生物识别模块(图中未示出)的硬件安全设备。在这种情况下,该生物识别模块可以是指纹识别模块和/或虹膜识别模块和/或面部识别模块。通过包括生物识别模块,在密码由于黑客破解或者自己泄露等原因被第三人知晓时,可以进一步验证本人的身份,从而得到更高的安全性。另外,虽然此处例举了指纹识别模块和/或虹膜识别模块和/或面部识别模块作为生物识别模块,但生物识别模块的具体例子不限于此,只要能够利用生物特征进行识别即可。通过采用生物识别模块,可以进一步在本地的USB KEY设备处确认使用者的身份,进一步确保本地的安全性。
为了方便描述起见,在本文中,也将如图1中所示的每个用户设备120和与该用户设备120相关联的硬件安全设备130的组合称为用户设备120。另外,不同的用户设备还可以分别指代与不同用户相关联的硬件安全设备130以及通用的用户设备120的组合。
然而,本发明并不局限于此。本发明中所述的用户设备120也可以是单独设计的、通信和处理功能模块与通用的硬件安全设备130的集成。这样的用户设备120可以创建自己的用于非对称加密的私钥K和公钥P,还通过与管理设备110与硬件安全模块160相互验证来建立互信、以便交换密钥和交易信息。此外,用户设备120还可以被管理设备110指定或随机确定为用户组中的组队用户、拆分用户、恢复用户或其他用户。在一些实施例中,用户设备(例如120-1)被管理设备110随机确定为用于组建用户组的组队用户的用户设备。该用户设备120-1可以确定用户组的业务信息(例如包括用户个数N和用户指示恢复交易密钥的最小用户个数的第一预定值M),以及向管理设备110发送该业务信息。在一些实施例中,用户设备(例如120-2)被管理设备110指定或随机确定为用于拆分交易密钥的拆分用户的用户设备。在一些实施例中,用户设备(例如120-3)被管理设备110指定或随机确定为用于恢复交易密钥的恢复用户的用户设备。组建用户组的组队用户、拆分交易密钥的拆分用户以及恢复交易密钥的恢复用户的确定也可以是由管理设备110指定或随机确定以外的方法进行。
图2示出了根据本公开的实施例的用于拆分交易密钥的方法200的流程图。在图2中,各个动作例如由包括管理设备110和硬件安全模块160的密钥管理系统170执行。方法200包括将密钥进行拆分的阶段的各个动作,此外,还可以包括未示出的附加动作和/或可以省略所示出的动作,本公开的范围在此方面不受限制。
在框202处,响应于某用户被确定为用于拆分交易密钥的拆分用户,硬件安全模块160从管理设备110处获取用户组的用户个数N和第一预定值,其中第一预定值指示恢复交易密钥的最小用户个数M,用户组用于管理交易密钥。用户组的用户个数N和该第一预定值可以是由之前对多个用户执行组队的组队用户的用户设备120预先发送给管理设备110并存储在管理设备110中的。在一些实施例中,M小于用户组中的用户个数N。在一些实施例中,组队用户和拆分用户例如由管理设备110在用户组中指定或随机确定。在一些实施例中,用于拆分交易密钥的拆分用户与用于创建用户组时的组队用户可以是同一用户,也可以是不同的用户。在一些实施例中,用户设备120(更具体地,与用户设备120相关联的硬件安全设备130)包括生物识别模块,所述生物识别模块可以是指纹识别模块和/或虹膜识别模块和/或面部识别模块。
在框204处,硬件安全模块160基于来自管理设备110的关于其他用户的消息,随机生成与本次交易的处理权限相关联的交易密钥,关于其他用户的消息至少指示用户组中除拆分用户之外的其他用户的公钥。
在上述方案中,通过在硬件安全模块160处,随机生成与本次交易的处理权限相关联的交易密钥,能够降低因交易密钥固定不变或者被重复使用而导致的易被破解的风险。另外,由于只有授权用户才能通过管理设备110来访问硬件安全模块160,与在本地用户设备中生成交易密钥相比,这种生成交易密钥的方式可以进一步确保安全性。
在一些实施例中,关于其他用户的消息还指示以下至少一项:用于验证其他用户的公钥的签名信息、其他用户的标识、其他用户的合并数据的哈希值的签名信息、以及关于其他用户的消息的有效期。此外,在一些实施例中,硬件安全模块160从管理设备110接收的关于其他用户的信息还包括管理设备110的证书。在这种情况下,硬件安全模块160能够通过验证管理设备110的证书进一步确认管理设备110的身份,并且只有在管理设备110的证书通过验证时,才执行框204中的操作。
关于其他用户的合并数据的哈希值的签名信息,在一些实施例中,管理设备110首先对用户组中的每一个其他用户哈希计算以下合并数据:其他用户在用户组的编号的哈希值、其他用户的公钥的哈希值和其他用户对用户组密码的签名哈希值(以及可能的管理设备110的证书的哈希值);然后利用管理设备的私钥对该合并数据的哈希值进行签名,以便硬件安全模块160对关于其他用户的消息中各项数据进行验证。在上述方案中,通过在关于其他用户的消息中包括经签名的其他用户合并数据的哈希值,能够方便硬件安全模块160验证所接收的该关于其他用户的消息的各项数据是否经过篡改。
关于随机生成交易密钥,在一些实施例中,其包括:响应于确认管理设备110的证书通过验证,基于其他用户的公钥的签名信息,确认其他用户的公钥是否通过验证;以及响应于其他用户的公钥通过验证,随机生成与第一预定值相同的多个用于构建拆分多项式的随机数,该随机数包括交易密钥。
在框206处,在硬件安全模块160处,将交易密钥拆分成与用户个数相同的多个子密钥,多个子密钥中的每一个子密钥与用户组中的一个用户相对应。在一些实施例中,其中将交易密钥拆分成多个子密钥包括:基于用户组用户个数和多个用于构建拆分多项式的随机数,确定多个子密钥,其中每一个子密钥包括第一子密钥分量和第二子密钥分量。关于交易密钥的拆分,可以采用多种方式,例如有众多已知的算法可以对密钥进行拆分。在一些实施例中,可以而不限于基于以下拆分多项式(1),将交易密钥拆分成多个子密钥。
Y=A0+A1*X+A2*X2+……+AN-1*XM-1 (1)
在上述拆分多项式中,M表示恢复所述交易密钥的最小用户个数。A0、A1……AM-1表示用于构建拆分多项式的随机数,上述随机数是由硬件安全模块160随机生成的与恢复所述交易密钥的最小用户个数M相同的随机数。例如,A0可以表示用于本次交易的交易密钥。当A0至AM-1、M已经确定时,可以用于构建N个(X,Y)对,例如确定与用户组的用户个数N相同的X1至XN,可以基于上述拆分多项式获得N个确定的Y值,例如是Y1至YN。上述基于多项式所确定N个(X,Y)对,即:(X1,Y1)、(X2,Y2)……(XN,YN)表示被拆分的与用户组的N个用户对应的N个子密钥。基于上述拆分多项式、用户组的用户个数N、恢复所述交易密钥的最小用户个数M和硬件安全模块160随机生成的随机数A0至AM-1,硬件安全模块160可以将交易密钥A0拆分成与用户组中的用户个数相同的N个子密钥(X1,Y1)、(X2,Y2)……(XN,YN)。其中,每一个子密钥(X,Y)包括第一子密钥分量X和第二子密钥分量Y。在上述方案中,通过硬件安全模块160将其随机生成的交易密钥A0拆分成与用户组中的用户个数相同的多个子密钥,不仅能够有效避免因交易密钥固定而导致的易被破解的风险,而且由于如下所述,拥有子密钥的单个用户无法独立恢复交易密钥,只有最小用户个数(M)个用户协作才能恢复交易密钥,因此显著地提高了交易密钥的安全性。在一些实施例中,M可以小于用户组中的用户个数N。通过设置恢复交易密钥的最小用户个数M,并且使得M<N,能够使得本公开的示例实施例所提出的用于管理密钥的方案即便在个别用户出现问题的情况下,依然可以通过M个用户的协作而恢复交易密钥。因而提高了权限管理系统的可靠性。另外,除了满足数量之外,条件还可以是M个用户中必须包括某一或某些特定用户。此处的条件可以根据实际需要任意设置。
在框208处,在硬件安全模块160处,使用与子密钥相对应的用户的公钥对多个子密钥分别进行加密。在一些实施例中,使用与子密钥相对应的用户的公钥对多个子密钥分别进行加密包括:基于与子密钥对应的用户的公钥和关于其他用户的消息的有效期来加密子密钥。这里,在一种实施例中,每个用户的公钥可以存储在管理设备110或者硬件安全模块160处。在上述方案中,通过利用对应用户的公钥加密相应的子密钥,提高了每个子密钥的安全性,即便他人获知该经加密的子密钥,也会因为无法获得对应用户的私钥,而不能破译该子密钥。因此提高了交易密钥的安全性。
在另一种实施例中,用户的公钥可以不存储在管理设备110或者硬件安全模块160处,而是在每次需要使用时由硬件安全模块160基于用户的标识和管理设备110(或其拥有者)的标识,根据分层确定性规则产生。通过这种方式,在保证安全性的前提下免去了系统管理每个用户的公钥的负担。
此外,方法200还可以包括:硬件安全模块160存储各个加密后的子密钥,或者将其发送给管理设备110进行存储,或者经由管理设备110将其分别发送给用户组中的相应的用户设备以进行存储。在后两种情况下,硬件安全模块160中不存储拆分产生的各个子密钥。
在一些实施例中,方法200还包括管理设备110帮助用户设备执行初始化。在一些实施例中,管理设备110利用其私钥对一随机数进行签名以产生签名数据,并将所产生的签名数据发送给用于组建用户组的组队用户。组队用户的用户设备120对该签名数据进行验证,并且在验证通过时基于预置在该用户设备120中的私钥,对签名数据进行签名。此外,在一些实施例中,管理设备110还从组队用户的用户设备120接收关于用户组的业务信息、该用户设备120的公钥和经由该用户设备120的私钥签名的上述签名数据,这里,业务信息至少包括用户组的用户个数和第一预定值。在上述方案中,通过组队用户的用户设备120对管理设备110的签名信息进行验证以及管理设备110对经由组队用户的用户设备120私钥签名的签名信息进行验证,能够实现组队用户的用户设备120与管理设备110之间的互信,提高整个系统100的安全性。另外,通过将包括用户组的用户个数N和第一预定值M的业务信息发送给管理设备110,以方便管理设备110协助硬件安全模块160进行交易密钥的拆分与恢复过程。
图3示出了根据本公开的实施例的用于恢复交易密钥的方法300的流程图。在图3中,各个动作例如由包括管理设备110和硬件安全模块160的密钥管理系统170执行。方法300包括对密钥进行恢复的阶段的各个动作,此外,还可以包括未示出的附加动作和/或可以省略所示出的动作,本公开的范围在此方面不受限制。
在框302处,硬件安全模块160从管理设备110获取用于恢复交易密钥的恢复消息,其中恢复消息至少指示用户组中同意本次交易的确认用户的个数和用户组中被确定为用于恢复该交易密钥的恢复用户的用户的标识,其中用户组用于管理交易密钥。在一些实施例中,恢复用户由管理设备110在用户组中指定或随机确定。在一些实施例中,恢复消息还指示以下至少一项:与本次交易相关联的关联随机数、经由恢复用户的公钥加密的确认用户的子密钥和关联随机数、确认用户的签名信息以及恢复消息的哈希值的签名。此外,在一些实施例中,恢复消息还可以包括管理设备110的证书。在这种情况下,硬件安全模块160能够通过验证管理设备110的证书进一步确认管理设备110的身份,并且只有在管理设备110的证书通过验证时,才执行框304中的操作。
在框304处,响应于确认该确认用户的个数大于或等于第一预定值,硬件安全模块160基于确认用户的子密钥来恢复交易密钥,确认用户的子密钥是经由事先拆分交易密钥而生成的(例如通过如方法200所述的方法)。在一些实施例中,硬件安全模块160基于其中存储的确认用户的子密钥或者从管理设备110获取的、存储在管理设备110中的确认用户的子密钥来恢复交易密钥。在另一些实施例中,硬件安全设备160基于各个确认用户经由管理设备110发送的子密钥来恢复交易密钥。在这种情况下,确认用户的子密钥可以是经由恢复用户的公钥加密的。在一些实施例中,确认用户的子密钥和与本次交易相关联的关联随机数一起经由恢复用户的公钥进行加密。在上述方案中,通过利用与本次交易相关联的关联随机数和子密钥一起加密,使得子密钥仅能用于本次交易的交易密钥的恢复,而不能被重复用在其他交易的交易密钥的恢复。
在一些实施例中,可以而不限于基于上文提及的拆分多项式(1)来恢复交易密钥。鉴于拆分多项式(1)中随机数的个数为M个,即A0至AM-1。因此在获取至少M个确认用户的子密钥(X1,Y1)、(X2,Y2)……(XM,YM)的情况下,可以通过求解M个随机数A0至AM-1,进而获取交易密钥A0。
在框306处,基于所恢复的交易密钥,对关于本次交易的交易请求进行签名。在一些实施例中,硬件安全模块160经由管理设备110向恢复用户的用户设备120发送该经签名的本次交易请求,以使得恢复用户的用户设备120能够将该交易请求发布到区块链的节点(图中未示出)以执行本次交易。或者,硬件安全模块160也可以经由管理设备110直接将该交易请求发布或者广播给区块链的节点(图中未示出)。在上述方案中,通过设置恢复交易密钥的最小用户个数(即,第一预定值),并响应于确认用户的个数大于或等于第一预定值,基于恢复用户的子密钥(或者,与确认用户的子密钥一起)来恢复交易密钥,使得能够基于用户组中部分用户的协作而恢复交易密钥,因而,提高了权限管理系统的可靠性和强健性,使其能够抵抗一些涉及权限使用的不当行为。
图4示出了根据本公开的实施例的硬件安全设备130的框图。
硬件安全设备130是配置有生物识别模块的硬件安全设备,用于识别用户的身份。识别用户的身份的过程分为两步:第一步,识别当前用户的生物特征;以及第二步,基于生物特征确认当前用户是否为授权用户。
该生物识别模块可以是指纹识别模块131和/或虹膜识别模块132和/或面部识别模块133。指纹识别模块131按其指纹识别方式可以分为:靠光的折射和反射原理来识别指纹的光学指纹模块、通过电容的数值变化来采集指纹的电容指纹模块、以及利用微量射频信号来探测纹路的射频指纹模块。虹膜识别模块132可以识别出人眼的虹膜图像特征,其过程一般来说包含:虹膜图像获取步骤、图像预处理步骤、虹膜定位步骤(确定虹膜与瞳孔的边界、以及虹膜与巩膜的边界、虹膜与上下眼皮的边界)、特征提取步骤、以及特征匹配步骤。面部识别模块133又称人脸识别模块、面像识别模块、面容识别模块等等,使用通用的摄像机作为识别信息获取装置,以非接触的方式获取识别对象的面部图像。生物识别模块的例子不限于此处的例举,只要能够识别出用户的生物特征即可。
利用本发明的硬件安全设备130的生物识别模块,能够进一步确定当前操作者是否是硬件安全设备130的授权用户。例如,在诸如管理设备110的所有者之类的提供商向授权用户提供了硬件安全设备130之后,授权用户可以在硬件安全设备130初始化时,通过该生物识别模块采集其生物特征并将其记录在硬件安全设备130中。此后,在操作者对包含该硬件安全设备130的用户设备120进行操作时,首先要求操作者输入其生物信息(如指纹、虹膜、面容等),由该生物识别模块对输入的生物信息进行识别以确定操作者的生物特征,并将其与硬件安全设备130内记录的生物特征进行比较以确定操作者是否是硬件安全设备130的授权用户。硬件安全设备130的生物识别模块可以单独用来识别操作者身份,也可以与诸如密码之类的其他方式相结合来增强操作者身份识别。例如,可以在如图5中所示的用户设备504、506和508的初始化阶段调用硬件安全设备130的生物识别模块,或者可以在如图5中所示的拆分交易密钥和/或恢复交易密钥的阶段调用硬件安全设备130的生物识别模块,或者可以在图5所示的流程的末尾对交易签名时调用恢复用户的用户设备的生物识别模块。
图5示出了根据本公开的实施例的用于管理密钥的方法500的数据流向图。在图5中,各个动作例如由密钥管理系统502、组队用户的用户设备504、恢复用户的用户设备506和其他用户的用户设备508来实现。方法500主要包括用户组组队(例如包括组队用户初始化、其他用户初始化)、交易密钥拆分和交易密钥恢复的阶段。应当理解,方法500还可以包括未示出的附加动作和/或可以省略所示出的动作,本公开的范围在此方面不受限制。这里,密钥管理系统502例如是如上结合图1所描述的密钥管理系统170,即管理设备110和硬件安全设备160的组合,用户设备504、506、508例如可以是如上结合图1所描述的用户设备120。
以下示例用户组组队阶段的各个动作。用户组组队阶段主要包括组队用户的初始化、用户组的其他用户的初始化的阶段。
以下示例用户组组队阶段的组队用户的初始化阶段的各个动作。
在组队用户的用户设备504处,在510,创建组队用户的私钥K1和公钥P1。在512,创建用户组的密码。在514,向密钥管理系统502发送验证请求。其中组队用户例如是被密钥管理系统502(如管理设备110)指定或随机确定为用于组建用户组的组队用户。
在密钥管理系统502处,在516,利用管理设备110的私钥KO对所生成的、用于组队用户身份验证的随机数R1进行签名。在518,向组队用户的用户设备504发送签名数据,该签名数据例如包括随机数R1、经签名的随机数R1和管理设备110的证书,其中管理设备110的证书例如包括管理设备110的公钥PO。
在组队用户的用户设备504处,在520,确认来自密钥管理系统502的签名数据是否通过验证。例如,确认所接收的管理设备110的证书和经管理设备110签名的随机数是否通过验证。在522,响应于确认来自密钥管理系统502的签名数据通过验证,利用组队用户的用户设备504的私钥K1对随机数R1和用户组的密码进行签名。在524,向密钥管理系统502发送关于用户组的业务信息、用户设备504的公钥P1、经由用户设备504的私钥K1签名的签名数据,其中该业务信息至少包括用户组的用户个数N和第一预定值M。
在密钥管理系统502处,在526,基于所获取的用户设备504的公钥P1,验证经由用户设备504的私钥K1签名的随机数R1,以及缓存用户组的密码。
以下示例用户组组队阶段的其他用户的初始化阶段的各个动作。
在一些实施例中,组队用户的用户设备504可以通过多种方式向用户组的其他用户分享所组建的用户组的链接和用户组的密码。例如,组队用户的用户设备504通过局域网将用户组的链接和用户组的密码分享给用户组中的其他用户。例如,其他用户的用户设备508是用户组中除组队用户之外的任一用户的用户设备。
在其他用户的用户设备508处,在530,创建其他用户的用户设备508的私钥K2和公钥P2。在532,基于用户组的链接和用户组的密码,与密钥管理系统502建立联系,以及向密钥管理系统502发送验证请求。
在密钥管理系统502处,在534,管理设备110合并以下数据:管理设备的证书的哈希值、组队用户的用户设备504的公钥P1的哈希值、组队用户对用户组密码的签名的哈希值和用于其他用户身份验证的随机数R2。在536,利用管理设备110的私钥KO对该合并数据的哈希值进行签名。在538,管理设备110向其他用户设备508发送管理设备110的证书、组队用户的用户设备504的公钥P1、组队用户对用户组密码的签名和随机数R2、以及对合并数据的哈希值的签名。
在用户设备508处,在540,确认管理设备110是否通过验证。在542,确认组队用户的用户设备504的公钥P1是否通过验证。在544,利用用户设备508的私钥K2对用户组的密码签名,以及利用用户设备508的私钥K2对随机数R2签名。在546,向密钥管理系统502发送用户设备508的公钥P2和经由私钥K2签名的签名数据,该签名数据例如包括经由私钥K2签名的用户组密码和随机数R2。
在密钥管理系统502处,在548,管理设备110基于所获取的用户设备508的公钥P2,验证经由用户设备508的私钥K2签名的随机数R2,以及缓存用户组的密码。在550,管理设备110对用户组的所有用户进行编号。
以下示例拆分交易密钥的阶段的各个动作。
在密钥管理系统502处,在552,管理设备110响应于接收到拆分交易密钥的请求,在用户组中随机确定用于拆分交易密钥的拆分用户。该用于拆分交易密钥的拆分用户与创建用户组的组队用户可以是同一用户,也可以是不同的用户,以下示例为同一用户,其为用户设备504。在554,管理设备110对用户组中的每一个其他用户哈希计算以下合并数据:管理设备110的证书的哈希值、其他用户在用户组中的编号的哈希值、其他用户的公钥的哈希值和其他用户对用户组密码的签名的哈希值。在556,硬件安全模块160从管理设备110获取关于其他用户的消息,该关于其他用户的消息至少指示用户组中除拆分用户之外的其他用户的公钥。在一些实施例中,关于其他用户的消息还指示以下各项中的至少一项:管理设备110的证书、其他用户的公钥、其他用户对用户组密码的签名、合并数据哈希值的签名以及关于其他用户的消息的有效期。在560,硬件安全模块160响应于确认管理设备110的证书通过验证,基于其他用户的公钥的签名信息,确认其他用户的公钥是否通过验证。在562,响应于其他用户的公钥通过验证,硬件安全模块160随机生成与恢复所述交易密钥的最小用户个数M相同的随机数A0至AM-1。A0表示用于本次交易的交易密钥。在564,硬件安全模块160基于恢复所述交易密钥的最小用户个数M和上述随机生成的随机数A0至AM-1,构建用于拆分交易密钥的多项式。在566,硬件安全模块160将交易密钥A0拆分成与用户组中的用户个数相同的N个子密钥(X1,Y1)、(X2,Y2)……(XN,YN),其中每一个子密钥与用户组中的一个用户相对应。在568,硬件安全模块160基于与子密钥对应的用户的公钥和有效期,分别加密各子密钥。在密钥管理系统502处,在572,管理设备110缓存多个经加密的子密钥(X1,Y1)、(X2,Y2)……(XN,YN)。在一些实施例中,在574,管理设备110通知其他用户的用户设备508,例如可以通知用户设备508插入相对应的硬件安全设备(如USB KEY)130以接收相应的子密钥。在576,管理设备110响应于接收到来自其他用户设备508的关于下发子密钥的请求,向其他用户的用户设备508发送以下至少一项:管理设备110的证书、其他用户的编号、拆分用户的公钥、与用户设备508相对应的子密钥、有效期和上述合并数据的哈希值签名。在上述方案中,由于在密钥管理系统502的管理设备110中缓存经加密的子密钥,以及响应于用户组的其他用户的下发子密钥的请求而发送相应子密钥,因此能够实现交易密钥拆分与分发的异步。不需要用户组的其他用户同步或实时操作,因而提高了权限管理系统的方便性。其他用户的用户设备508处,在578,验证管理设备110的证书和公钥,以及保存经解密的相应的子密钥。
以下示例恢复交易密钥的阶段的各个动作。
在密钥管理系统502处,在580,管理设备110在用户组中指定或者随机确定恢复用户。在582,响应于接收到关于本次交易的请求,管理设备110向用户组的用户发送用于确认是否同意本次交易的交易信息,其中交易信息至少指示本次交易的交易内容和恢复用户的标识。在584,获取所述用户组中同意本次交易的每个确认用户的子密钥,其中确认用户的子密钥经由恢复用户的公钥签名。在硬件安全模块160处,从管理设备110获取用于恢复交易密钥的恢复消息,该恢复消息至少包括以下一项:确认用户的个数和恢复用户的标识、管理设备110的证书、交易数据、与本次交易相关联的关联随机数、经由恢复用户的公钥签名的其他用户的子密钥和关联随机数、用于验证恢复消息的哈希值。在588,硬件安全模块160响应于确认了确认用户的个数大于或等于第一预定值,基于确认用户的子密钥来恢复交易密钥,确认用户的子密钥是经由事先拆分交易密钥而生成的(如在上述拆分交易密钥的阶段拆分的)。在590,硬件安全模块160基于所确定的交易密钥,对关于本次交易的交易请求进行签名,以用于本次交易的执行。通过采用上述方法500,不仅能够显著地提高交易密钥的安全性,而且能够在个别用户出现问题的情况下,依然可以通过M个用户的协作而恢复交易密钥,因而提高了权限管理系统的可靠性。
另外,由于交易密钥的拆分和恢复均在远程(硬件安全模块160)进行,因此,避免了在本地拆分并恢复密钥时可能带来的安全性问题。
在上述图5的数据流向中,硬件安全模块160负责交易密钥的生成、拆分和恢复,而管理设备110负责用户的初始化、用户组以及用户的确定、子密钥的缓存、验证等。但如上所述,硬件安全模块160可以承担部分或全部管理设备110的功能,在不必刻意区分二者的功能的情况下,将二者的组合称为密钥管理系统502。
图6示意性示出了适于用来实现本公开实施例的电子设备600的框图。设备600可以用于实现图1和图5的用户设备和管理设备中的一个或多个主机。如图所示,设备600包括中央处理单元(CPU)601,其可以根据存储在只读存储器(ROM)602中的计算机程序指令或者从存储单元608加载到随机访问存储器(RAM)603中的计算机程序指令,来执行各种适当的动作和处理。在RAM603中,还可存储设备600操作所需的各种程序和数据。CPU601、ROM602以及RAM603通过总线604彼此相连。输入/输出(I/O)接口605也连接至总线604。
设备600中的多个部件连接至I/O接口605,包括:输入单元606,例如键盘、鼠标等;输出单元607,例如各种类型的显示器、扬声器等;存储单元608,例如磁盘、光盘等;以及通信单元609,例如网卡、调制解调器、无线通信收发机等。通信单元609允许设备600通过诸如因特网的计算机网络和/或各种电信网络与其他设备交换信息/数据。
处理单元601执行上文所描述的各个方法和处理,例如执行用于管理密钥的方法200、300、400、500。例如,在一些实施例中,方法200、300、400和500可被实现为计算机软件程序,其被存储于机器可读介质,例如存储单元608。在一些实施例中,计算机程序的部分或者全部可以经由ROM602和/或通信单元609而被载入和/或安装到设备600上。当计算机程序加载到RAM603并由CPU601执行时,可以执行上文描述的方法200、300、500的一个或多个操作。备选地,在其他实施例中,CPU601可以通过其他任何适当的方式(例如,借助于固件)而被配置为执行方法200、300、400和500的一个或多个动作。
然而,本领域技术人员可以理解,在根据本公开中所述的用户设备是集成有通信和处理功能模块的硬件安全设备130的情况下,该用户设备可以不包含如上结合图6所述的一个或多个组件。
类似的,结合图1至图5所述的硬件安全模块160也可以具有如图6中所示的电子设备600的结构的一部分。例如,在最简化的情况下,硬件安全模块160可以包括如图6所示的处理器601和存储器602和/或603。
本公开可以是方法、装置、系统和/或计算机程序产品。计算机程序产品可以包括计算机可读存储介质,其上载有用于执行本公开的各个方面的计算机可读程序指令。
计算机可读存储介质可以是可以保持和存储由指令执行设备使用的指令的有形设备。计算机可读存储介质例如可以是但不限于电存储设备、磁存储设备、光存储设备、电磁存储设备、半导体存储设备或者上述的任意合适的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、静态随机存取存储器(SRAM)、便携式压缩盘只读存储器(CD-ROM)、数字多功能盘(DVD)、记忆棒、软盘、机械编码设备、例如其上存储有指令的打孔卡或凹槽内凸起结构、以及上述的任意合适的组合。这里所使用的计算机可读存储介质不被解释为瞬时信号本身,诸如无线电波或者其他自由传播的电磁波、通过波导或其他传输媒介传播的电磁波(例如,通过光纤电缆的光脉冲)、或者通过电线传输的电信号。
这里所描述的计算机可读程序指令可以从计算机可读存储介质下载到各个计算/处理设备,或者通过网络、例如因特网、局域网、广域网和/或无线网下载到外部计算机或外部存储设备。网络可以包括铜传输电缆、光纤传输、无线传输、路由器、防火墙、交换机、网关计算机和/或边缘服务器。每个计算/处理设备中的网络适配卡或者网络接口从网络接收计算机可读程序指令,并转发该计算机可读程序指令,以供存储在各个计算/处理设备中的计算机可读存储介质中。
用于执行本公开操作的计算机程序指令可以是汇编指令、指令集架构(ISA)指令、机器指令、机器相关指令、微代码、固件指令、状态设置数据、或者以一种或多种编程语言的任意组合编写的源代码或目标代码,所述编程语言包括面向对象的编程语言—诸如Smalltalk、C++等,以及常规的过程式编程语言—诸如“C”语言或类似的编程语言。计算机可读程序指令可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络—包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。在一些实施例中,通过利用计算机可读程序指令的状态信息来个性化定制电子电路,例如可编程逻辑电路、现场可编程门阵列(FPGA)或可编程逻辑阵列(PLA),该电子电路可以执行计算机可读程序指令,从而实现本公开的各个方面。
这里参照根据本公开实施例的方法、装置(系统)和计算机程序产品的流程图和/或框图描述了本公开的各个方面。应当理解,流程图和/或框图的每个方框以及流程图和/或框图中各方框的组合,都可以由计算机可读程序指令实现。
这些计算机可读程序指令可以提供给通用计算机、专用计算机或其它可编程数据处理装置的处理单元,从而生产出一种机器,使得这些指令在通过计算机或其它可编程数据处理装置的处理单元执行时,产生了实现流程图和/或框图中的一个或多个方框中规定的功能/动作的装置。也可以把这些计算机可读程序指令存储在计算机可读存储介质中,这些指令使得计算机、可编程数据处理装置和/或其他设备以特定方式工作,从而,存储有指令的计算机可读介质则包括一个制造品,其包括实现流程图和/或框图中的一个或多个方框中规定的功能/动作的各个方面的指令。
也可以把计算机可读程序指令加载到计算机、其它可编程数据处理装置、或其它设备上,使得在计算机、其它可编程数据处理装置或其它设备上执行一系列操作步骤,以产生计算机实现的过程,从而使得在计算机、其它可编程数据处理装置、或其它设备上执行的指令实现流程图和/或框图中的一个或多个方框中规定的功能/动作。
附图中的流程图和框图显示了根据本公开的多个实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或指令的一部分,所述模块、程序段或指令的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
以上已经描述了本公开的各实施例,上述说明是示例性的,并非穷尽性的,并且也不限于所披露的各实施例。在不偏离所说明的各实施例的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。本文中所用术语的选择,旨在最好地解释各实施例的原理、实际应用或对市场中的技术改进,或者使本技术领域的其它普通技术人员能理解本文披露的各实施例。
以上所述仅为本公开的可选实施例,并不用于限制本公开,对于本领域的技术人员来说,本公开可以有各种更改和变化。凡在本公开的精神和原则之内,所作的任何修改、等效替换、改进等,均应包含在本公开的保护范围之内。
Claims (18)
1.一种用于在密钥管理系统中拆分交易密钥的方法,所述密钥管理系统包括用于管理用户组中的用户的用户设备的管理设备和与所述管理设备相连的硬件安全模块,所述方法包括,在所述硬件安全模块处:
获取所述用户组的用户个数和第一预定值,其中所述第一预定值指示恢复所述交易密钥的最小用户个数,所述用户组用于管理所述交易密钥;
基于关于所述用户组中除被确定为用于拆分所述交易密钥的拆分用户之外的其他用户的消息,随机生成与本次交易的处理权限相关联的所述交易密钥,所述关于其他用户的消息至少指示其他用户的公钥;
将所述交易密钥拆分成与所述用户个数相同的多个子密钥,所述多个子密钥中的每一个子密钥与所述用户组中的一个用户相对应;以及
使用与所述多个子密钥相对应的用户的公钥对所述多个子密钥分别进行加密。
2.根据权利要求1所述的方法,还包括,在所述管理设备处:
在所述用户组中指定或随机确定所述拆分用户。
3.根据权利要求1所述的方法,其中,所述关于其他用户的消息还指示以下各项中的至少一项:
用于验证所述其他用户的公钥的签名信息;
所述其他用户的标识;
所述其他用户的合并数据的哈希值的签名信息;以及
所述关于其他用户的消息的有效期。
4.根据权利要求3所述的方法,其中,随机生成与本次交易的处理权限相关联的所述交易密钥包括:
基于所述其他用户的公钥的签名信息,确认所述其他用户的公钥是否通过验证;以及
响应于所述其他用户的公钥通过验证,随机生成与所述第一预定值相同的多个用于构建拆分多项式的随机数,所述多个用于构建拆分多项式的随机数包括所述交易密钥。
5.根据权利要求4所述的方法,其中所述关于其他用户的消息还指示所述管理设备的证书,并且其中基于所述其他用户的公钥的签名信息,确认所述其他用户的公钥是否通过验证还包括:
确认所述管理设备的证书是否通过验证,以及
响应于确认所述管理设备的证书通过验证,基于所述其他用户的公钥的签名信息,确认所述其他用户的公钥是否通过验证。
6.根据权利要求4所述的方法,其中,将所述交易密钥拆分成与所述用户个数相同的多个子密钥包括:
基于所述用户组的所述用户个数和所述多个用于构建拆分多项式的随机数,确定所述多个子密钥,其中每一个子密钥包括第一子密钥分量和第二子密钥分量。
7.根据权利要求1所述的方法,其中,使用与所述多个子密钥相对应的用户的公钥对所述多个子密钥分别进行加密包括:
基于与所述子密钥对应的用户的公钥和所述关于其他用户的消息的有效期,加密所述子密钥。
8.根据权利要求1所述的方法,还包括,在所述管理设备处:
利用所述管理设备的私钥对一随机数进行签名以产生签名数据,并将所产生的签名数据发送给被确定为用于组建所述用户组的组队用户;以及
从所述组队用户接收关于所述用户组的业务信息、所述用户设备的公钥和经由所述组队用户的用户设备的私钥签名的所述签名数据,所述业务信息至少包括所述用户组的用户个数和所述第一预定值。
9.一种用于在密钥管理系统中恢复交易密钥的方法,所述密钥管理系统包括用于管理用户组中的用户的用户设备的管理设备和与所述管理设备相连的硬件安全模块,所述方法包括,在所述硬件安全模块处:
获取用于恢复所述交易密钥的恢复消息,其中所述恢复消息包括所述用户组中同意本次交易的确认用户的个数和所述用户组中被确定为用于恢复所述交易密钥的恢复用户的用户的标识,其中所述用户组用于管理所述交易密钥;
响应于确认所述确认用户的个数大于或等于第一预定值,基于所述确认用户的子密钥来恢复所述交易密钥,所述确认用户的子密钥是经由事先拆分所述交易密钥而生成的;以及
基于所恢复的所述交易密钥,对关于所述本次交易的交易请求进行签名。
10.根据权利要求9所述的方法,还包括,在所述管理设备处:
在所述用户组中指定或随机确定所述恢复用户。
11.根据权利要求9所述的方法,其中,所述确认用户的子密钥经由所述恢复用户的公钥加密。
12.根据权利要求11所述的方法,其中,所述确认用户的子密钥和与所述本次交易相关联的关联随机数一起经由所述恢复用户的公钥加密。
13.根据权利要求9所述的方法,其中,所述恢复消息还指示以下至少一项:
与所述本次交易相关联的关联随机数;
经由所述恢复用户的公钥加密的所述确认用户的子密钥和所述关联随机数;
所述确认用户的签名信息;
所述管理设备的证书;以及
所述恢复消息的哈希值的签名信息。
14.根据权利要求9所述的方法,还包括,在所述管理设备处:
响应于接收到所述本次交易的请求,向所述用户组的用户发送用于确认是否同意所述本次交易的交易信息,其中所述交易信息至少指示所述本次交易的交易内容和所述恢复用户的标识;
获取所述用户组中同意所述本次交易的每个确认用户的子密钥,其中所述确认用户的所述子密钥经由所述恢复用户的公钥加密;以及
响应于确认满足本次交易的条件,向所述硬件安全模块发送所述恢复消息。
15.根据权利要求1或9所述的方法,其中,所述用户的用户设备还包括生物识别模块,基于预先存储的授权用户的生物特征,确定操作所述用户设备的操作者是否是所述用户设备的授权用户。
16.一种计算机程序产品,所述计算机程序产品被有形地存储在非瞬态计算机可读存储介质上并且包括机器可执行指令,所述机器可执行指令被配置为在被执行时使机器执行根据权利要求1-14中任一项所述的方法的步骤。
17.一种计算机可读存储介质,存储有机器可执行指令,所述机器可执行指令被配置为在被执行时使机器执行根据权利要求1-14中任一项所述的方法的步骤。
18.一种密钥管理系统,包括处理器、存储器以及存储在所述存储器中的计算机程序,所述计算机程序被配置为在被所述处理器执行时使所述密钥管理系统执行根据权利要求1-14中任一项所述的方法的步骤。
Priority Applications (6)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910179156.3A CN110009346A (zh) | 2019-03-11 | 2019-03-11 | 用于拆分和恢复密钥的方法、程序产品、存储介质和系统 |
PCT/CN2020/078801 WO2020182151A1 (zh) | 2019-03-11 | 2020-03-11 | 用于拆分和恢复密钥的方法、程序产品、存储介质和系统 |
EP20770739.9A EP3920119A4 (en) | 2019-03-11 | 2020-03-11 | KEY DIVISION AND RECOVERY METHODS, PROGRAM PRODUCT, INFORMATION HOLDER AND SYSTEM |
SG11202109357VA SG11202109357VA (en) | 2019-03-11 | 2020-03-11 | Methods for splitting and recovering key, program product, storage medium, and system |
US17/593,075 US20220191012A1 (en) | 2019-03-11 | 2020-03-11 | Methods For Splitting and Recovering Key, Program Product, Storage Medium, and System |
JP2021553757A JP2022523595A (ja) | 2019-03-11 | 2020-03-11 | 鍵を分割及び復元するための方法、プログラム製品、記憶媒体、並びにシステム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910179156.3A CN110009346A (zh) | 2019-03-11 | 2019-03-11 | 用于拆分和恢复密钥的方法、程序产品、存储介质和系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110009346A true CN110009346A (zh) | 2019-07-12 |
Family
ID=67166674
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910179156.3A Pending CN110009346A (zh) | 2019-03-11 | 2019-03-11 | 用于拆分和恢复密钥的方法、程序产品、存储介质和系统 |
Country Status (6)
Country | Link |
---|---|
US (1) | US20220191012A1 (zh) |
EP (1) | EP3920119A4 (zh) |
JP (1) | JP2022523595A (zh) |
CN (1) | CN110009346A (zh) |
SG (1) | SG11202109357VA (zh) |
WO (1) | WO2020182151A1 (zh) |
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110912703A (zh) * | 2019-10-29 | 2020-03-24 | 上海唯链信息科技有限公司 | 一种基于网络安全的多级密钥管理方法、装置及系统 |
CN111062058A (zh) * | 2019-12-26 | 2020-04-24 | 江西宜月鑫网络科技有限公司 | 基于区块链的密钥对处理方法、装置、终端及可读存储介质 |
WO2020182151A1 (zh) * | 2019-03-11 | 2020-09-17 | 上海唯链信息科技有限公司 | 用于拆分和恢复密钥的方法、程序产品、存储介质和系统 |
CN112311718A (zh) * | 2019-07-24 | 2021-02-02 | 华为技术有限公司 | 检测硬件的方法、装置、设备及存储介质 |
CN112418853A (zh) * | 2020-09-22 | 2021-02-26 | 上海哔哩哔哩科技有限公司 | 基于区块链的交易数据加密方法及装置 |
CN113098696A (zh) * | 2021-06-08 | 2021-07-09 | 清华大学 | 一种区块链数据写入、访问方法及装置 |
CN113360859A (zh) * | 2021-05-28 | 2021-09-07 | 湖南大学 | 基于Python解释器的加密文件安全控制方法和装置 |
CN113517980A (zh) * | 2020-04-09 | 2021-10-19 | 中国移动通信有限公司研究院 | 一种密钥处理方法、装置和存储介质 |
CN114070640A (zh) * | 2021-11-25 | 2022-02-18 | 航天新通科技有限公司 | 一种安全通信方法及系统 |
CN115632890A (zh) * | 2022-12-23 | 2023-01-20 | 北京锘崴信息科技有限公司 | 隐私数据及金融隐私数据的安全解密方法和装置 |
CN117349895A (zh) * | 2023-12-05 | 2024-01-05 | 北京极致车网科技有限公司 | 基于区块链的汽车金融数字档案管理方法及装置 |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113162766B (zh) * | 2021-04-25 | 2022-06-24 | 亿次网联(杭州)科技有限公司 | 一种密钥分量的密钥管理方法和系统 |
US11575508B2 (en) | 2021-06-02 | 2023-02-07 | International Business Machines Corporation | Unified HSM and key management service |
WO2023201262A1 (en) * | 2022-04-12 | 2023-10-19 | Coremeleon, Inc. | System and method for distributed custody access token management |
CN115622821B (zh) * | 2022-12-20 | 2023-04-28 | 北京佳芯信息科技有限公司 | 一种加密通信方法及加密通信系统 |
CN116089988B (zh) * | 2023-04-10 | 2023-06-23 | 航天万源云数据河北有限公司 | 一种服务器数据托管管理方法、装置、设备及存储介质 |
CN117032908B (zh) * | 2023-10-10 | 2023-12-08 | 中国船舶集团有限公司第七〇七研究所 | 基于冗余架构的集成计算设备部署运行方法及系统 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105243306A (zh) * | 2015-09-17 | 2016-01-13 | 深圳市亚略特生物识别科技有限公司 | 生物识别usb key装置及设备 |
CN109194465A (zh) * | 2018-09-30 | 2019-01-11 | 巍乾全球技术集团有限责任公司 | 用于管理密钥的方法、用户设备、管理设备、存储介质和计算机程序产品 |
Family Cites Families (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070016791A1 (en) * | 2005-07-14 | 2007-01-18 | Smita Bodepudi | Issuing a command and multiple user credentials to a remote system |
AU2012225621B2 (en) * | 2011-03-07 | 2015-10-29 | Security First Corp. | Secure file sharing method and system |
US10699031B2 (en) * | 2014-10-30 | 2020-06-30 | Hewlett Packard Enterprise Development Lp | Secure transactions in a memory fabric |
US10778439B2 (en) * | 2015-07-14 | 2020-09-15 | Fmr Llc | Seed splitting and firmware extension for secure cryptocurrency key backup, restore, and transaction signing platform apparatuses, methods and systems |
CN105429752B (zh) * | 2015-11-10 | 2019-10-22 | 中国电子科技集团公司第三十研究所 | 一种云环境下用户密钥的处理方法及系统 |
WO2017147696A1 (en) * | 2016-02-29 | 2017-09-08 | Troy Jacob Ronda | Systems and methods for distributed identity verification |
US20180268386A1 (en) * | 2016-09-13 | 2018-09-20 | C. Jay Wack | Identity Management Distributed Ledger and Blockchain |
GB201711878D0 (en) * | 2017-07-24 | 2017-09-06 | Nchain Holdings Ltd | Computer - implemented system and method |
CN108833093A (zh) * | 2018-06-14 | 2018-11-16 | 百度在线网络技术(北京)有限公司 | 账户密钥的确定方法、装置、设备及存储介质 |
JP6571890B1 (ja) * | 2019-01-21 | 2019-09-04 | Gmoグローバルサイン株式会社 | 電子署名システム、証明書発行システム、証明書発行方法及びプログラム |
CN109389498A (zh) * | 2018-09-18 | 2019-02-26 | 上海诚频信息科技合伙企业(有限合伙) | 区块链用户身份管理方法、系统、设备及存储介质 |
CN110009346A (zh) * | 2019-03-11 | 2019-07-12 | 巍乾全球技术有限责任公司 | 用于拆分和恢复密钥的方法、程序产品、存储介质和系统 |
-
2019
- 2019-03-11 CN CN201910179156.3A patent/CN110009346A/zh active Pending
-
2020
- 2020-03-11 SG SG11202109357VA patent/SG11202109357VA/en unknown
- 2020-03-11 WO PCT/CN2020/078801 patent/WO2020182151A1/zh unknown
- 2020-03-11 JP JP2021553757A patent/JP2022523595A/ja active Pending
- 2020-03-11 EP EP20770739.9A patent/EP3920119A4/en active Pending
- 2020-03-11 US US17/593,075 patent/US20220191012A1/en active Pending
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105243306A (zh) * | 2015-09-17 | 2016-01-13 | 深圳市亚略特生物识别科技有限公司 | 生物识别usb key装置及设备 |
CN109194465A (zh) * | 2018-09-30 | 2019-01-11 | 巍乾全球技术集团有限责任公司 | 用于管理密钥的方法、用户设备、管理设备、存储介质和计算机程序产品 |
Cited By (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2020182151A1 (zh) * | 2019-03-11 | 2020-09-17 | 上海唯链信息科技有限公司 | 用于拆分和恢复密钥的方法、程序产品、存储介质和系统 |
CN112311718A (zh) * | 2019-07-24 | 2021-02-02 | 华为技术有限公司 | 检测硬件的方法、装置、设备及存储介质 |
CN112311718B (zh) * | 2019-07-24 | 2023-08-22 | 华为技术有限公司 | 检测硬件的方法、装置、设备及存储介质 |
CN110912703A (zh) * | 2019-10-29 | 2020-03-24 | 上海唯链信息科技有限公司 | 一种基于网络安全的多级密钥管理方法、装置及系统 |
CN110912703B (zh) * | 2019-10-29 | 2022-09-09 | 上海唯链信息科技有限公司 | 一种基于网络安全的多级密钥管理方法、装置及系统 |
CN111062058A (zh) * | 2019-12-26 | 2020-04-24 | 江西宜月鑫网络科技有限公司 | 基于区块链的密钥对处理方法、装置、终端及可读存储介质 |
CN113517980A (zh) * | 2020-04-09 | 2021-10-19 | 中国移动通信有限公司研究院 | 一种密钥处理方法、装置和存储介质 |
CN112418853A (zh) * | 2020-09-22 | 2021-02-26 | 上海哔哩哔哩科技有限公司 | 基于区块链的交易数据加密方法及装置 |
CN113360859B (zh) * | 2021-05-28 | 2022-08-09 | 湖南大学 | 基于Python解释器的加密文件安全控制方法和装置 |
CN113360859A (zh) * | 2021-05-28 | 2021-09-07 | 湖南大学 | 基于Python解释器的加密文件安全控制方法和装置 |
CN113098696A (zh) * | 2021-06-08 | 2021-07-09 | 清华大学 | 一种区块链数据写入、访问方法及装置 |
CN114070640A (zh) * | 2021-11-25 | 2022-02-18 | 航天新通科技有限公司 | 一种安全通信方法及系统 |
CN114070640B (zh) * | 2021-11-25 | 2024-02-06 | 航天新通科技有限公司 | 一种安全通信方法及系统 |
CN115632890A (zh) * | 2022-12-23 | 2023-01-20 | 北京锘崴信息科技有限公司 | 隐私数据及金融隐私数据的安全解密方法和装置 |
CN117349895A (zh) * | 2023-12-05 | 2024-01-05 | 北京极致车网科技有限公司 | 基于区块链的汽车金融数字档案管理方法及装置 |
CN117349895B (zh) * | 2023-12-05 | 2024-03-01 | 北京极致车网科技有限公司 | 基于区块链的汽车金融数字档案管理方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
SG11202109357VA (en) | 2021-09-29 |
EP3920119A4 (en) | 2022-11-30 |
US20220191012A1 (en) | 2022-06-16 |
WO2020182151A1 (zh) | 2020-09-17 |
JP2022523595A (ja) | 2022-04-25 |
EP3920119A1 (en) | 2021-12-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110009346A (zh) | 用于拆分和恢复密钥的方法、程序产品、存储介质和系统 | |
US11689366B2 (en) | Cryptoasset custodial system with vault-specific rules governing different actions allowed for different vaults | |
US11301845B2 (en) | Cryptoasset custodial system with proof-of-stake blockchain support | |
US9397839B2 (en) | Non-hierarchical infrastructure for managing twin-security keys of physical persons or of elements (IGCP/PKI) | |
CN109194465A (zh) | 用于管理密钥的方法、用户设备、管理设备、存储介质和计算机程序产品 | |
KR102171568B1 (ko) | 투표자 단말, 인증서버, 투표서버, 및 전자투표 시스템 | |
EP3997606B1 (en) | Cryptoasset custodial system with custom logic | |
CN109087056A (zh) | 电子合同签署方法、装置及服务器 | |
CN109479001A (zh) | 安全通道建立 | |
CN108171486B (zh) | 一种具有电子印章功能的终端 | |
KR20150052261A (ko) | 액세스 요청을 검증하기 위한 방법 및 시스템 | |
Bergquist | Blockchain technology and smart contracts: privacy-preserving tools | |
Cheng et al. | Identity based encryption and biometric authentication scheme for secure data access in cloud computing | |
JP2013084034A (ja) | テンプレート配信型キャンセラブル生体認証システムおよびその方法 | |
CN110505055A (zh) | 基于非对称密钥池对和密钥卡的外网接入身份认证方法和系统 | |
CN110138548A (zh) | 基于非对称密钥池对和dh协议的量子通信服务站密钥协商方法和系统 | |
CN108696518A (zh) | 区块链上用户通信加密方法、装置、终端设备及存储介质 | |
CN202455386U (zh) | 一种用于云存储的安全系统 | |
CN109547208A (zh) | 金融电子设备主密钥在线分发方法及系统 | |
Ahmed et al. | A self-sovereign identity architecture based on blockchain and the utilization of customer’s banking cards: The case of bank scam calls prevention | |
CN110519222A (zh) | 基于一次性非对称密钥对和密钥卡的外网接入身份认证方法和系统 | |
CN110266483A (zh) | 基于非对称密钥池对和qkd的量子通信服务站密钥协商方法、系统、设备 | |
CN110363528A (zh) | 协同地址的生成、交易签名方法及装置、存储介质 | |
JP7375918B2 (ja) | 認証サーバ、認証システム、認証サーバの制御方法及びプログラム | |
KR20130048532A (ko) | 차세대 금융 거래 시스템 |
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 | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20190712 |
|
RJ01 | Rejection of invention patent application after publication |