CN110380845B - 基于群组对称密钥池的量子保密通信联盟链交易方法、系统、设备 - Google Patents
基于群组对称密钥池的量子保密通信联盟链交易方法、系统、设备 Download PDFInfo
- Publication number
- CN110380845B CN110380845B CN201910554860.2A CN201910554860A CN110380845B CN 110380845 B CN110380845 B CN 110380845B CN 201910554860 A CN201910554860 A CN 201910554860A CN 110380845 B CN110380845 B CN 110380845B
- Authority
- CN
- China
- Prior art keywords
- key
- service station
- user
- transaction
- message
- 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
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/04—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
- H04L63/0428—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
-
- 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
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/12—Applying verification of the received information
-
- 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/0838—Key agreement, i.e. key establishment technique in which a shared key is derived by parties as a function of information contributed by, or associated with, each of these
-
- 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/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/0852—Quantum cryptography
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)
- Physics & Mathematics (AREA)
- Electromagnetism (AREA)
- Theoretical Computer Science (AREA)
- Computer And Data Communications (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
本发明公开了一种基于群组对称密钥池的量子保密通信联盟链交易方法、系统、设备,参与方包括用户U和服务站QD,所述用户U为服务站QU的子设备,本发明中区块链客户端与己方所隶属的量子通信服务站以外的量子通信服务站可通过密钥协商分别获取会话密钥,在联盟链流程中使用会话密钥进行加密通信和消息认证等。区块链客户端仅需维护与己方所隶属的量子通信服务站之间的群组对称密钥池,而无需预置与其他大量量子通信服务站之间的密钥,大大方便了区块链客户端,并简化了密钥管理流程。每个量子通信服务站只需要存储1个群组对称密钥池,使用群组对称密钥池缩减了存储的密钥量,可节省容量,并将密钥全部置于自身更安全的密钥卡内。
Description
技术领域
本申请属于联盟链领域,具体涉及一种基于群组对称密钥池的量子保密通信联盟链交易方法、系统、设备。
背景技术
区块链是一种全新的分布式基础架构与计算范式,利用有序的链式数据结构存储数据,利用共识算法更新数据,利用密码学技术保障数据安全。在基于区块链的交易中,确保交易的数据安全和客户的隐私是区块链能够进一步发展的必要条件。为此,密码学技术尤其是公钥密钥学在区块链中得到了广泛的应用。而联盟链是区块链的一个分支,所以它本身也是一个分布式的,去中心化的公共数据库,跟其他链的区别就是它是针对特定群体的成员和有限的第三方,其内部指定多个预选节点为记账人,其共识过程受到预选节点控制的区块链。
正如大多数人所了解的,量子计算机在密码破解上有着巨大潜力。当今主流的非对称(公钥)加密算法,如RSA加密算法,大多数都是基于大整数的因式分解或者有限域上的离散对数的计算这两个数学难题。他们的破解难度也就依赖于解决这些问题的效率。传统计算机上,要求解这两个数学难题,花费时间为指数时间(即破解时间随着公钥长度的增长以指数级增长),这在实际应用中是无法接受的。而为量子计算机量身定做的秀尔算法可以在多项式时间内(即破解时间随着公钥长度的增长以k次方的速度增长,其中k为与公钥长度无关的常数)进行整数因式分解或者离散对数计算,从而为RSA、离散对数加密算法的破解提供可能。
现有技术存在的问题:
1、现有基于对称密钥池进行身份认证的方案,量子通信服务站与量子密钥卡之间使用对称密钥池,其容量巨大,对量子通信服务站的密钥存储带来压力;
2、现有基于对称密钥池进行身份认证的方案,由于对称密钥池密钥容量巨大,量子通信服务站不得不将密钥加密存储于普通存储介质例如硬盘内,而无法存储于量子通信服务站的密钥卡内;
3、现有基于对称密钥池进行身份认证的方案,由于对称密钥池密钥容量巨大,给密钥备份造成麻烦;
4、现有技术中,联盟链的存储和传输均未加密,而且建立在公私钥基础之上的联盟链交易方法由于暴露了公钥和数字签名,容易被量子计算机破解;
5、联盟链客户端完成一次业务一般需要与多个联盟链服务端进行安全通信。由于联盟链客户端与联盟链服务端之间通信联系众多,一般需要预置一对特有的对称密钥于每两个联盟链客户端与联盟链服务端之间,因此预置密钥的数量将非常庞大;而且这种密钥配对关系极其难以维护,例如每个联盟链客户端需要去多个联盟链服务端接受密钥预置服务;
6、现有联盟链的CA系统,由于暴露了公钥和数字签名,容易被量子计算机破解。
发明内容
基于此,有必要针对上述技术问题,提供一种基于群组对称密钥池的量子保密通信联盟链交易方法、系统、设备。
本申请公开了基于群组对称密钥池的量子保密通信联盟链交易方法,参与方包括用户U和服务站QD,所述用户U为服务站QU的子设备,所述量子保密通信联盟链交易方法实施在用户U,包括:
生成交易;
向服务站QD发送利用与服务站QD密钥协商后所得的会话密钥KsUE加密的所述交易;所述交易用于供服务站QD响应后向用户U返回若干个交易应答;
获取来自服务站QD的若干个交易应答,并选取至少一部分所述交易应答生成背书;
向服务站QD发送利用与服务站QD密钥协商后所得的会话密钥KsUO加密的所述背书;所述背书用于供服务站QD响应后向用户U返回加密的交易结果;
获取来自服务站QD的加密的交易结果,利用与服务站QD密钥协商后所得的会话密钥KsUC解密后得到所述交易结果,并对所述交易结果进行验证。
本申请公开了基于群组对称密钥池的量子保密通信联盟链交易方法,参与方包括用户U和服务站QD,所述用户U为服务站QU的子设备,所述量子保密通信联盟链交易方法实施在服务站QD,包括:
获取来自用户U的加密的交易;
利用与用户U密钥协商后所得的会话密钥KsUE解密后得到所述交易,根据所述交易生成若干个交易应答;
向所述用户U发送若干个交易应答,所述交易应答用于供用户U生成背书;
获取来自用户U的加密的背书;
利用与用户U密钥协商后所得的会话密钥KsUO解密后得到所述背书,根据所述背书得到交易结果;
向用户U发送利用与用户U密钥协商后所得的会话密钥KsUC加密的交易结果,所述交易结果用于供用户U进行验证。
本申请公开了基于群组对称密钥池的量子保密通信联盟链交易方法,参与方包括用户U和服务站QD,所述用户U为服务站QU的子设备,所述量子保密通信联盟链交易方法,包括:
所述用户U生成交易,并向服务站QD发送利用与服务站QD密钥协商后所得的会话密钥KsUE加密的所述交易;
所述服务站QD获取来自用户U的加密的交易,利用所述会话密钥KsUE解密后得到所述交易,根据所述交易生成若干个交易应答并发送至用户U;
所述用户U获取来自服务站QD的若干个交易应答,并选取至少一部分所述交易应答生成背书,向服务站QD发送利用与服务站QD密钥协商后所得的会话密钥KsUO加密的所述背书;
所述服务站QD获取来自用户U的加密的背书,利用所述会话密钥KsUO解密后得到所述背书,根据所述背书得到交易结果,向用户U发送利用与用户U密钥协商后所得的会话密钥KsUC加密的交易结果;
所述用户U获取来自服务站QD的加密的交易结果,利用所述会话密钥KsUC解密后得到所述交易结果,并对所述交易结果进行验证。
进一步的,所述服务站QD和服务站QU分别配置有服务站密钥卡,所述服务站密钥卡内存储包括群组对称密钥池、服务站公钥和服务站私钥;所述用户U配置有量子密钥卡,所述量子密钥卡内存储包括群组对称密钥池、客户端公钥和客户端私钥;所述用户U与服务站QU之间共享群组对称密钥池。
进一步的,所述用户U与服务站QD密钥协商后得到会话密钥Ks,包括:
所述用户U根据随机数N0从己方密钥卡内取出参数K0,向服务站QD发送消息M0,所述消息M0包括用户U的编码IDU、所述随机数N0、参数K0加密的用户U的公钥PKU;
所述服务站QD接收消息M0,根据所述IDU得到服务站QU的编码IDQU,根据所述IDQU通过量子通信网络找到服务站QU,并与服务站QU通过QKD协商得到带有密钥参数KID的密钥K,所述密钥K包括参数Kreq、参数Ks和参数Ru,向服务站QU发送消息M1,所述消息M1包括KID、参数Kreq加密的消息M0、参数Kreq加密的服务站QD的编码IDQD;
所述服务站QU接收消息M1,根据KID得到参数Kreq、参数Ks和参数Ru,利用参数Kreq解密得到消息M0和IDQD,根据随机数N0和IDU得到参数K0,利用所述参数K0解密后得到公钥PKU,利用公钥PKU和服务站QU的私钥SKQU得到DH密钥KDH,根据IDQD、消息M0、服务站QU的公钥PKQU、参数Ks和密钥KDH制作包含两部分的票据Ticket,向服务站QD发送消息M2,所述消息M2包括KID、IDQU、M1和票据Ticket;
所述服务站QD接收消息M2,并向用户U发送消息M3,所述消息M3包括IDQU、参数Ru和票据Ticket;
所述用户U接收消息M3,解密票据Ticket的第二部分得到PKQU,利用PKQU和用户U的私钥SKU得到DH密钥KDH,利用密钥KDH解密票据Ticket的第二部分得到消息M0和参数Ks,对消息M0验证通过后信任参数Ks,并向服务站QD发送消息M4,所述消息M4包括利用参数Ks加密的随机数N2;
所述服务站QD接收消息M4,并根据随机数N2生成认证消息M5,向所述用户U发送认证消息M5,所述认证消息M5用于供用户U验证通过后信任服务站QD并选取参数Ks作为与服务站QD之间的会话密钥Ks。
进一步的,服务站配置有Endorser、Orderer和Committer;
所述用户U与所述服务站QD的Endorser密钥协商后得到会话密钥KsUE;所述用户U与所述服务站QD的Orderer密钥协商后得到会话密钥KsUO;所述用户U与所述服务站QD的Committer密钥协商后得到会话密钥KsUC。
进一步的,所述量子保密通信联盟链交易方法,包括:
所述用户U生成交易,并向若干个Endorser发送利用所述会话密钥KsUE加密的所述交易;
每个Endorser获取来自用户U的加密的交易,利用所述会话密钥KsUE解密后得到所述交易,根据所述交易生成交易应答并发送至用户U;
所述用户U获取来自若干个Endorser的若干个交易应答,并选取至少一部分所述交易应答生成背书,向Orderer发送利用会话密钥KsUO加密的所述背书;
所述Orderer获取来自用户U的加密的背书,利用所述会话密钥KsUO解密后得到所述背书,所述Orderer对多个背书进行排序后生成背书集合,并且所述Orderer向若干个所述Committer发送背书集合;
各所述Committer根据所述背书集合得到交易结果,向用户U发送利用所述会话密钥KsUC加密的交易结果;
所述用户U获取来自各所述Committer的加密的交易结果,利用所述会话密钥KsUC解密后得到所述交易结果,并对所述交易结果进行验证。
本申请还公开了一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现所述的基于群组对称密钥池的量子保密通信联盟链交易方法的步骤。
本申请还公开了基于群组对称密钥池的量子保密通信联盟链交易系统,所述量子保密通信联盟链交易系统包括用户U和服务站QD,所述用户U为服务站QU的子设备,所述服务站QD和服务站QU分别配置有服务站密钥卡,所述服务站密钥卡内存储包括群组对称密钥池、服务站公钥和服务站私钥;所述用户U配置有量子密钥卡,所述量子密钥卡内存储包括群组对称密钥池、客户端公钥和客户端私钥;所述用户U与服务站QU之间共享群组对称密钥池;
所述用户U和服务站QD通过通信网络实现所述的基于群组对称密钥池的量子保密通信联盟链交易方法的步骤。
本申请提供的基于群组对称密钥池的量子保密通信联盟链交易方法、系统、设备,包括区块链客户端和量子通信服务站。每个区块链客户端与多个量子通信服务站进行通信。区块链客户端与己方所隶属的量子通信服务站以外的量子通信服务站可通过密钥协商分别获取会话密钥,在联盟链流程中使用会话密钥进行加密通信和消息认证等。因此对区块链客户端来说,仅需维护与己方所隶属的量子通信服务站之间的群组对称密钥池,而无需预置与其他大量量子通信服务站之间的密钥,大大方便了区块链客户端,并简化了密钥管理流程。对每个量子通信服务站来说,因为只需要存储1个群组对称密钥池,所以使用群组对称密钥池缩减了量子通信服务站存储的密钥量,可节省量子通信服务站所需要的容量,并将密钥全部置于自身更安全的密钥卡内。
附图说明
图1为本申请实施例提供的系统结构图;
图2为密钥协商过程的结构示意图;
图3为密钥协商过程流程图;
图4为对称密钥提取过程示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
除非另有定义,本申请所使用的所有的技术和科学术语与属于本申请的技术领域的技术人员通常理解的含义相同。本申请中在本申请的说明书中所使用的术语只是为了描述具体的实施例的目的,不是在于限制本申请。
应该理解的是,除非本申请中有明确的说明,各步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
其中一实施例中,提供了一种基于群组对称密钥池的量子保密通信联盟链交易方法,参与方包括用户U和服务站QD,用户U为服务站QU的子设备,量子保密通信联盟链交易方法,包括:
用户U生成交易,并向服务站QD发送利用与服务站QD密钥协商后所得的会话密钥KsUE加密的交易;
服务站QD获取来自用户U的加密的交易,利用会话密钥KsUE解密后得到交易,根据交易生成若干个交易应答并发送至用户U;
用户U获取来自服务站QD的若干个交易应答,并选取至少一部分交易应答生成背书,向服务站QD发送利用与服务站QD密钥协商后所得的会话密钥KsUO加密的背书;
服务站QD获取来自用户U的加密的背书,利用会话密钥KsUO解密后得到背书,根据背书得到交易结果,向用户U发送利用与用户U密钥协商后所得的会话密钥KsUC加密的交易结果;
用户U获取来自服务站QD的加密的交易结果,利用会话密钥KsUC解密后得到交易结果,并对交易结果进行验证。
本实施例中区块链客户端与己方所隶属的量子通信服务站以外的量子通信服务站可通过密钥协商分别获取会话密钥,在联盟链流程中使用会话密钥进行加密通信和消息认证等。因此对区块链客户端来说,仅需维护与己方所隶属的量子通信服务站之间的群组对称密钥池,而无需预置与其他大量量子通信服务站之间的密钥,大大方便了区块链客户端,并简化了密钥管理流程。对每个量子通信服务站来说,因为只需要存储1个群组对称密钥池,所以使用群组对称密钥池缩减了量子通信服务站存储的密钥量,可节省量子通信服务站所需要的容量,并将密钥全部置于自身更安全的密钥卡内。
为了进一步说明在量子保密通信联盟链交易过程中各参与方的工作流程,以下通过实施在单侧方的方式对基于群组对称密钥池的量子保密通信联盟链交易方法予以描述。
其中一实施例中,基于群组对称密钥池的量子保密通信联盟链交易方法,参与方包括用户U和服务站QD,用户U为服务站QU的子设备,量子保密通信联盟链交易方法实施在用户U,包括:
生成交易;
向服务站QD发送利用与服务站QD密钥协商后所得的会话密钥KsUE加密的交易;交易用于供服务站QD响应后向用户U返回若干个交易应答;
获取来自服务站QD的若干个交易应答,并选取至少一部分交易应答生成背书;
向服务站QD发送利用与服务站QD密钥协商后所得的会话密钥KsUO加密的背书;背书用于供服务站QD响应后向用户U返回加密的交易结果;
获取来自服务站QD的加密的交易结果,利用与服务站QD密钥协商后所得的会话密钥KsUC解密后得到交易结果,并对交易结果进行验证。
其中一实施例中,基于群组对称密钥池的量子保密通信联盟链交易方法,参与方包括用户U和服务站QD,用户U为服务站QU的子设备,量子保密通信联盟链交易方法实施在服务站QD,包括:
获取来自用户U的加密的交易;
利用与用户U密钥协商后所得的会话密钥KsUE解密后得到交易,根据交易生成若干个交易应答;
向用户U发送若干个交易应答,交易应答用于供用户U生成背书;
获取来自用户U的加密的背书;
利用与用户U密钥协商后所得的会话密钥KsUO解密后得到背书,根据背书得到交易结果;
向用户U发送利用与用户U密钥协商后所得的会话密钥KsUC加密的交易结果,交易结果用于供用户U进行验证。
在另一实施例中,服务站QD和服务站QU分别配置有服务站密钥卡,服务站密钥卡内存储包括群组对称密钥池、服务站公钥和服务站私钥;用户U配置有量子密钥卡,量子密钥卡内存储包括群组对称密钥池、客户端公钥和客户端私钥;用户U与服务站QU之间共享群组对称密钥池。
本实施例中,客户端仅需维护与己方所隶属的量子通信服务站之间的群组对称密钥池,而无需预置与其他大量量子通信服务站之间的密钥,大大方便了区块链客户端,并简化了密钥管理流程;同时每个量子通信服务站只需要存储1个群组对称密钥池,所以使用群组对称密钥池缩减了量子通信服务站存储的密钥量,可节省量子通信服务站所需要的容量,并将密钥全部置于自身更安全的密钥卡内。
在另一实施例中,用户U与服务站QD密钥协商后得到会话密钥Ks,包括:
用户U根据随机数N0从己方密钥卡内取出参数K0,向服务站QD发送消息M0,消息M0包括用户U的编码IDU、随机数N0、参数K0加密的用户U的公钥PKU;
服务站QD接收消息M0,根据IDU得到服务站QU的编码IDQU,根据IDQU通过量子通信网络找到服务站QU,并与服务站QU通过QKD协商得到带有密钥参数KID的密钥K,密钥K包括参数Kreq、参数Ks和参数Ru,向服务站QU发送消息M1,消息M1包括KID、参数Kreq加密的消息M0、参数Kreq加密的服务站QD的编码IDQD;
服务站QU接收消息M1,根据KID得到参数Kreq、参数Ks和参数Ru,利用参数Kreq解密得到消息M0和IDQD,根据随机数N0和IDU得到参数K0,利用参数K0解密后得到公钥PKU,利用公钥PKU和服务站QU的私钥SKQU得到DH密钥KDH,根据IDQD、消息M0、服务站QU的公钥PKQU、参数Ks和密钥KDH制作包含两部分的票据Ticket,向服务站QD发送消息M2,消息M2包括KID、IDQU、M1和票据Ticket;
服务站QD接收消息M2,并向用户U发送消息M3,消息M3包括IDQU、参数Ru和票据Ticket;
用户U接收消息M3,解密票据Ticket的第二部分得到PKQU,利用PKQU和用户U的私钥SKU得到DH密钥KDH,利用密钥KDH解密票据Ticket的第二部分得到消息M0和参数Ks,对消息M0验证通过后信任参数Ks,并向服务站QD发送消息M4,消息M4包括利用参数Ks加密的随机数N2;
服务站QD接收消息M4,并根据随机数N2生成认证消息M5,向用户U发送认证消息M5,认证消息M5用于供用户U验证通过后信任服务站QD并选取参数Ks作为与服务站QD之间的会话密钥Ks。
本实施例中,区块链客户端与己方所隶属的量子通信服务站以外的量子通信服务站可通过密钥协商分别获取会话密钥,在联盟链流程中使用会话密钥进行加密通信和消息认证等,即可实现每个区块链客户端与多个量子通信服务站进行通信,又可简化密钥管理流程,缩减量子通信服务站存储的密钥量。
在另一实施例中,服务站配置有Endorser、Orderer和Committer;
用户U与服务站QD的Endorser密钥协商后得到会话密钥KsUE;用户U与服务站QD的Orderer密钥协商后得到会话密钥KsUO;用户U与服务站QD的Committer密钥协商后得到会话密钥KsUC。
在另一实施例中,量子保密通信联盟链交易方法,包括:
用户U生成交易,并向若干个Endorser发送利用会话密钥KsUE加密的交易;
每个Endorser获取来自用户U的加密的交易,利用会话密钥KsUE解密后得到交易,根据交易生成交易应答并发送至用户U;
用户U获取来自若干个Endorser的若干个交易应答,并选取至少一部分交易应答生成背书,向Orderer发送利用会话密钥KsUO加密的背书;
Orderer获取来自用户U的加密的背书,利用会话密钥KsUO解密后得到背书,Orderer对多个背书进行排序后生成背书集合,并且Orderer向若干个Committer发送背书集合;
各Committer根据背书集合得到交易结果,向用户U发送利用会话密钥KsUC加密的交易结果;
用户U获取来自各Committer的加密的交易结果,利用会话密钥KsUC解密后得到交易结果,并对交易结果进行验证。
本实施例中,区块链客户端与己方所隶属的量子通信服务站以外的量子通信服务站可通过密钥协商分别获取会话密钥,在联盟链流程中使用会话密钥进行加密通信和消息认证等,即可实现每个区块链客户端与多个量子通信服务站进行通信,又可简化密钥管理流程,缩减量子通信服务站存储的密钥量。
本实施例在处理联盟链中的交易过程,对区块链交易中各个消息进行对称密钥加密,包括对用户公钥、消息的签名进行相应的对称密钥加密。
本实施例系统结构如图1所示。
量子通信服务站包括:
(1)区块链服务:包括Peer服务,Order服务等。其中Peer服务分为Committer和Endorser;Order服务由多个Orderer组成。每个量子通信服务站拥有1个或多个服务。每个服务有1个或多个CA证书。由于所有服务均位于量子通信服务站内部,因此任意两个服务之间可以安全通信:两个服务位于同一个量子通信服务站,则可以直接安全通信;两个服务位于两个不同量子通信服务站,则可以使用量子通信服务站之间的QKD网络分配无条件安全的量子保密通信密钥,并用量子保密通信密钥对消息进行消息认证及加密,从而实现安全通信。
(2)量子随机数密钥:每个量子通信服务站拥有多个用户端量子密钥卡,与每个用户端量子密钥卡共享有群组型对称密钥池。
(3)量子随机数发生器:用于密码学协议、颁发量子密钥卡、量子密钥分发(QKD)。
(4)量子通信网关:包含量子密钥分发功能。
区块链客户端即User有1个或多个CA证书。区块链客户端与量子通信服务站上的区块链服务通信,2者组成区块链系统。
CA机构与量子通信服务站直接安全连接,例如:两者部署在一起。其余网络成员与CA通过QKD网络提供的QKD密钥进行安全通信,即对所有证书用户与CA之间的业务消息进行对称密钥加密,包括对用户公钥、消息的签名进行相应的对称密钥加密。
本申请中,各用户采用对称加密的方式存储联盟链交易的有关数据,对称加密所采用的对称密钥为真随机数,该真随机数生成且存储于各用户的密钥卡中。对用户的区块链客户端、联盟链成员的区块链服务中存储的区块链有关数据进行存储加密可进一步提高安全性。
其中有关数据包括区块链客户端中存储的区块链有关数据和区块链服务中存储的区块链、数据库等。区块链存储的数据分别用存储对称密钥(该密钥存储于密钥卡内部,一直保持不变且密钥卡之间不重复)加密,均为真随机数,优选为量子随机数。各区块链客户端、区块链服务使用区块链数据时先对加密的区块链有关数据进行解密。服务站的存储对称密钥可以用主板上的TPM芯片保存,并保证安全。
CA证书均存储于量子密钥卡内,可以通过安全通信方法进行网络传输。
量子密钥卡为线下获得。量子密钥卡与其颁发者即其所隶属的量子通信服务站之间共享有群组对称密钥池,该密钥池容量巨大,且可以更新。关于群组对称密钥池的说明可见专利申请号为“201810385109.X”的文献。群组对称密钥池的更新是指,量子通信服务站为客户端密钥卡颁发新的群组对称密钥池。具体可由量子通信服务站召回所有合法密钥卡进行密钥池更新;或者所有希望更新群组对称密钥池的密钥卡的拥有者主动找量子通信服务站进行密钥池更新;或者可以在线更新,即量子通信服务站使用异或加密算法,使用原有的密钥加密新的密钥,向密钥卡在线发送密钥。量子密钥卡与其他量子通信服务站之间均没有预置共享密钥。
下文设User,Endorser,Orderer,Committer,量子通信服务站S的标记如下:
(1)各自的ID分别为IDU,IDE,IDO,IDC,IDS。对于客户端,其ID内包含有该客户端密钥卡所隶属的量子通信服务站的ID,表示密钥卡颁发关系,可用于指定对称密钥池。对于区块链服务,由于其为某量子通信服务站内部的一个服务,则其ID内包含有该量子通信服务站的ID,表示隶属关系。
(2)各自的公钥分别为PKU,PKE,PKO,PKC,PKS。
(3)各自的私钥分别为SKU,SKE,SKO,SKC,SKS。
用户U、U所隶属的量子通信服务站QU(简称为服务站QU)以及任意另一个量子通信服务站QD(简称为服务站QD)结构如图2所示,其中,用户U是服务站QU匹配的客户端。
根据Diffie-Hellman协议,定义一个大素数p和一个数g,g为模p的原根,g和p均为Diffie-Hellman协议的参数。以User和服务站QU为例,User根据匹配的密钥卡产生真随机大整数SKU作为User的DH私钥,通过计算得到DH公钥PKU=gSKU mod p。服务站QU根据匹配的密钥卡产生真随机大整数SKQU作为服务站QU的DH私钥,通过计算得到DH公钥PKQU=gSKQUmod p。
根据Diffie-Hellman协议,PKQUSKU mod p=PKUSKQU mod p。下文中,省略了mod p的部分,使用PKQUSKU指代PKQUSKU mod p,其余同理。
在未做特殊说明的情况下本申请中的各名称以字母和数字组合为准,例如QD,服务站QD,量子通信服务站QD在本申请中表示同一含义,即量子通信服务站QD;又如随机数N1、N1在本申请中表示同一含义,即随机数N1;其余名称同理。且本申请中的密钥K、参数Ks等表述中的K、Ks仅仅是为了便于区分和叙述,并不对参数本身有额外限定,例如量子通信服务站QU、用户U中的QU、U;又如会话密钥KsUE、公钥PKU中的KsUE、PKU;其他同理。
在一实施例中,用户U与客户端QD完成密钥协商的过程如图3所示,步骤文字描述如下:
步骤1:用户U发起请求。
用户U根据匹配的密钥卡中的随机数发生器生成随机数N0,根据N0和IDU从群组对称密钥池中得到K0。具体过程如图4所示,文字描述如下:
由随机数R结合特定的指针函数FKP得到指针KP,从相应的群组对称密钥池中提取Kseed,将Kseed与ID一起经过函数FK计算得到密钥K。
根据N0和IDU得到K0后,使用K0对U的公钥PKU制作消息认证码MAC(PKU,K0)。其中,MAC(m,k)表示以m为消息、以k为密钥的消息认证码。使用K0加密PKU及其消息认证码,连同IKU、请求Request以及N0一起作为M0发送至服务站QD。M0可表示为IDU||Request||N0||{PKU||MAC(PKU,K0)}K0。Request可包含多种信息,包括对业务的描述、对协商算法的描述、对协商密钥的长度要求、本次协商所用的Diffie-Hellman协议参数等信息,具体内容可根据区块链应用系统确定,本申请不做规定。Diffie-Hellman协议参数也可以预置于所有拥有同一个群组对称密钥池的密钥卡内,即Diffie-Hellman协议参数为固定参数。
步骤2:服务站QD将密钥协商请求发送至服务站QU。
服务站QD收到M0后,根据U的请求内容进行判断是否需要进行处理,如需要处理则根据IDU得到IDQU,并根据IDQU通过量子通信网络找到QU。QD与服务站QU通过QKD协商获得密钥K,该K带有KID,密钥K可表示为Kreq+Kresp+Ks+Ru。服务站QD根据匹配的量子密钥卡生成随机数N1,再使用Kreq加密IDQD、M0以及N1,并使用Kreq对其计算消息认证码MAC(IDQD||M0||N1,Kreq)。连同KID一起作为M1发送至服务站QU。M1可表示为KID||{IDQD||M0||N1||MAC(IDQD||M0||N1,Kreq)}Kreq。
步骤3:服务站QU制作TICKET并发送至服务站QD。
服务站QU收到M1后,根据KID找到K=Kreq+Kresp+Ks+Ru。使用Kreq解得IDQD、M0以及N1。使用Kreq对IDQD||M0||N1计算得到消息认证码。对比验证通过后,由M0中IDU找到对应的对称密钥池。根据Ru和IDQD从群组对称密钥池中得到Ku,根据N0和IDU从群组对称密钥池中得到K0,具体过程如图4所示,文字描述与上文相同。使用K0解密得到PKU及其消息认证码。验证消息认证码后,计算DH密钥KDH=PKUSKQU。
服务站QU使用KDH加密IDQD、M0以及Ks作为Ticket的第一部分。使用Ku加密PKQU,再使用Ku加密PKQU,并使用Ku对其计算消息认证码MAC(PKQU,Ku)。将PKQU及其消息认证码作为Ticket的第二部分。Ticket可表示为{IDQD||M0||Ks}KDH||{PKQU||MAC(PKQU,Ku)}Ku。再使用Kresp加密IDQU、M1以及Ticket,连同KID一起作为M2发送至服务站QD。M2可表示为KID||{IDQU||M1||Ticket}Kresp。
步骤4:服务站QD转发票据。
服务站QD收到M2后,根据KID找到K=Kreq+Kresp+Ks+Ru。使用Kresp解得IDQU、M1和Ticket。验证M1与本地M1是否相同。若验证通过,则将IDQD、IDQU、Ru以及Ticket作为M3发送至用户U。M3可表示为IDQD||IDQU||Ru||Ticket。
步骤5:用户U验证Ticket。
用户U收到M3后,根据IDQU找到群组对称密钥池,根据Ru和IDQD从群组对称密钥池得到Ku。具体过程如图4所示,文字描述与上文相同。用户U使用Ku解密Ticket的第二部分得到PKQU及其验证码,使用Ku对PKQU计算得到消息认证码。对比验证通过后,计算KDH'=PKQUSKU,使用KDH'解密Ticket的第一部分,验证M0与本地M0是否相同。验证通过后,信任Ks作为与服务站QD的会话密钥。用户U根据匹配的量子密钥卡中的随机数发生器生成随机数N2,使用Ks加密N2作为M4发送至服务站QD。M4可表示为{N2}Ks。
步骤6:服务站QD验证用户U。
服务站QD收到M4后,使用Ks解密得到N2。服务站QD使用Ks加密f(N2)作为M5发送至用户U。f(x)为某种变换函数,例如f(x)=x+1。
用户U收到M5后,使用Ks解密得到f(N2),将f(N2)与本地计算得到的f(N2)进行对比,若通过,则完成对服务站QD的认证。
用户U与服务站QD可利用密钥Ks作为会话密钥进行消息加解密和消息认证。优选为,将Ks拆分成Kse和Ksa,分别作为消息加解密和消息认证密钥。
本实施例就每个步骤而言可视为针对前述相应的实施例,就所有步骤而言也可视为前述相应实施例的结合。
在一实施例中,在用户U与服务站QD完成密钥协商后,联盟链流程包括:
步骤1:User提出交易。
User向多个Endorser发送交易,交易tx可表示为{IDU,ΣIDE,proposal},表示IDU发给多个IDE。其中,proposal包括链码chaincodeID,即使用智能合约函数的编号。还包括txPayload即函数的参数以及一个时间戳timestamp。proposal可表示为{chaincodeID,txPayload,timestamp}。userSig即User对proposal的签名,得到签名SIGN(proposal,SKU)。SIGN(m,sk)表示对消息m使用私钥sk进行签名。
User和Endorser事先协商得到会话密钥KsUE,协商方式如前文。User使用KsUE对tx进行加密及消息认证,然后发送至Endorser。
步骤2:Endorser执行交易。
Endorser收到交易后,使用KsUE完成对tx的解密和消息认证。验证通过后,使用User的公钥PKU并对签名SIGN(proposal)进行验证。公钥的来源是数字证书,数字证书由拥有者即User主动发送给接收方Endorser,发送时使用双方之间的会话密钥KsUE加密。Endorser使用CA根证书中的CA公钥对此数字证书进行验证。验证后,如对此数字证书还存在疑问,Endorser可对CA发起询问以明确该证书是否有效,该询问过程的所有消息由Endorser与CA之间的量子通信网络提供的QKD密钥所加密保护。下文所提及的其他公钥来源与此类似。验证通过后,对该交易进行处理,即根据chaincodeID执行chaincode,生成读写操作集readset和writeset。
步骤3:Endorser发送交易应答。
Endorser将包含读写操作集的交易应答rtx返回给User。交易应答rtx可表示为{IDE,IDU,tran-proposal}。其中,tran-proposal即申请应答包括交易的序号tid(一般为proposal的哈希值,可表示为tid=HASH(proposal)),chaincodeID和txPayload,以及读写操作集readset和writeset。Endorser使用自己的私钥SKE对rtx进行签名后得到SIGN(rtx,SKE)。Endorser使用KsUE对{IDE||rtx||SIGN(rtx,SKE)}进行加密和消息认证,然后发送至User。
步骤4:User发送背书(Endorsement)etx到Orderer。
User收到交易应答后,根据KsUE完成对收到的消息的解密和消息认证。验证通过后,使用Endorser的公钥PKE对签名SIGN(rtx,SKE)进行验证通过后,信任该交易应答。
User收到多个交易应答并分别验证通过后,将rtx进行选择,例如选择所有符合条件的交易应答的全部或者随机选择其中的3/5;将选择得到的rtx集合组成一个集合etx即背书,可表示为{IDU,IDO,∑rtx}。User使用私钥SKU对etx进行数字签名算法计算得到SIGN(etx,SKU)。User与Orderer已事先协商得到会话密钥KsUO,使用KsUO对{IDS||etx||SIGN(etx,SKU)}进行加密及消息认证,然后发送至Orderer。
步骤5:Orderer发送排序后的etx集合到Committer。
Orderer收到背书后,根据KsUO完成对收到的消息的解密和消息认证。验证通过后,使用User的公钥PKU对签名SIGN(etx,SKU)进行验证,通过后信任该背书。在积累到一定数量的etx后,Orderer对etx进行排序。Orderer生成排序后的背书集合即etxs,etxs包括序列号seqno以及上个联盟链区块的哈希值prevhash。背书集合etxs可表示为{seqno,prevhash,∑etx}。使用Orderer的联盟链私钥SKO对etxs进行数字签名算法计算得到SIGN(etxs,SKO)。Orderer与Committer实现QKD密钥共享后,使用QKD密钥对{IDO||etxs||SIGN(etxs,SKO)}加密发送给Committer。
步骤6:每个Committer验证交易。
每个Committer收到排序后的背书集合后,使用QKD密钥解密,使用Orderer的公钥PKO并对签名SIGN(etxs,SKO)进行验证,通过后信任该背书集合。Committer根据背书策略对etx集合进行验证,包括对读写操作集进行检查等。检查完成后,Committer对本地的联盟链数据库进行读写操作集的实际执行(读写操作集检查失败的交易除外),并记录每一笔交易的交易结果到区块链中。完成后即表示Committer执行完毕。
步骤7:Committer发送交易通知。
多个Committer执行完毕后,将交易结果(成功或失败)的通知发送至User。Committer仅将通知发送至已与自身进行密钥协商的User,协商流程如前文;双方会话密钥为KsUC。每个Committer生成交易通知ntx,包括tid和result。result包括交易结果(成功/失败)以及其他必要信息。ntx可表示为{IDC,IDU,tid,result}。使用Committer的联盟链私钥SKC对ntx进行数字签名算法计算得到SIGN(ntx,SKC)。Committer使用KsUC对{IDC||ntx||SIGN(ntx,SKC)}进行加密及消息认证,然后发送至User。
User收到后,根据KsUC完成对收到的消息的解密和消息认证。验证通过后,使用C的公钥PKC并对签名SIGN(ntx,SKC)进行验证,通过后信任该交易通知。
本实施例就每个步骤而言可视为针对前述相应的实施例,就所有步骤而言也可视为前述相应实施例的结合。
本申请中,使用的量子密钥卡是独立的硬件隔离设备。群组对称密钥池均存储在密钥卡中的数据安全区,被恶意软件或恶意操作窃取密钥的可能性大大降低,也不会被量子计算机获取并破解。由于在经典网络中均无涉及公私钥及算法参数的明文传递,因此非对称密钥被破解的风险很低,另外,服务站与服务站之间采用QKD进行加密传输消息,所以区块链服务之间消息的安全性得到极大的保障。量子密钥卡保障了通信双方在群组中的通信安全,也极大的提高了身份认证的安全性。
实施例中提供一种基于群组对称密钥池的量子保密通信联盟链交易系统,包括区块链客户端和量子通信服务站。每个区块链客户端与多个量子通信服务站进行通信。区块链客户端与己方所隶属的量子通信服务站以外的量子通信服务站可通过密钥协商分别获取会话密钥,在联盟链流程中使用会话密钥进行加密通信和消息认证等。因此对区块链客户端来说,仅需维护与己方所隶属的量子通信服务站之间的群组对称密钥池,而无需预置与其他大量量子通信服务站之间的密钥,大大方便了区块链客户端,并简化了密钥管理流程。对每个量子通信服务站来说,因为只需要存储1个群组对称密钥池,所以使用群组对称密钥池缩减了量子通信服务站存储的密钥量,可节省量子通信服务站所需要的容量,并将密钥全部置于自身更安全的密钥卡内。
本申请对基于对称密钥算法的认证流程进行改进,使得认证流程中的数据如TICKET被DH算法得到的对称密钥加密保护。DH算法得到的对称密钥只能被通信双方计算所得,即认证流程中的数据只能被DH私钥拥有者解密,其他任何人均无法解密;而且双方的DH公私钥不是固定的,每次密钥协商均为新的公私钥对。因此提升了基于对称密钥算法的认证流程的安全性。本申请DH算法也可以替换为ECDH算法,相应地需要将DH参数替换为ECDH参数,但均可以实现本申请的密钥协商流程。
本申请对联盟链中的每一条消息都进行了加密和消息认证,提高了安全性。特别地,对所有证书用户与CA之间的业务消息进行对称密钥加密和消息认证,包括对用户公钥、消息的签名等容易被量子计算机破解的内容进行相应的对称密钥加密。因此本申请可以保证现有CA系统在量子计算时代依然可以正常运行,解决了联盟链系统针对预防量子计算所面临的对现有CA系统的整改难题。
在一实施例中,本申请还提供一种计算机设备,包括存储器和处理器,存储器存储有计算机程序,其特征在于,处理器执行计算机程序时实现的基于群组对称密钥池的量子保密通信联盟链交易方法的步骤。
关于计算机设备的具体限定可以参见上文中对量子通信服务站数字签名方法的限定,在此不再赘述。上述计算机设备中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
计算机设备可以是终端,其内部结构可以包括通过系统总线连接的处理器、存储器、网络接口、显示屏和输入装置。其中,计算机设备的处理器用于提供计算和控制能力。计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统和计算机程序。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现上述基于非对称密钥池对的量子通信服务站数字签名方法。计算机设备的显示屏可以是液晶显示屏或者电子墨水显示屏,各设备的输入装置可以是显示屏上覆盖的触摸层,也可以是计算机设备外壳上设置的按键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等。
在另一实施例中,提供了一种基于群组对称密钥池的量子保密通信联盟链交易系统,其特征在于,量子保密通信联盟链交易系统包括用户U和服务站QD,用户U为服务站QU的子设备,服务站QD和服务站QU分别配置有服务站密钥卡,服务站密钥卡内存储包括群组对称密钥池、服务站公钥和服务站私钥;用户U配置有量子密钥卡,量子密钥卡内存储包括群组对称密钥池、客户端公钥和客户端私钥;用户U与服务站QU之间共享群组对称密钥池;
用户U和服务站QD通过通信网络实现的基于群组对称密钥池的量子保密通信联盟链交易方法的步骤。
关于基于群组对称密钥池的量子保密通信联盟链交易系统的具体限定可以参见上文中对于基于群组对称密钥池的量子保密通信联盟链交易方法的限定,在此不再赘述。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请的保护范围应以所附权利要求为准。
Claims (5)
1.基于群组对称密钥池的量子保密通信联盟链交易方法,其特征在于,参与方包括用户U和服务站QD,所述用户U为服务站QU的子设备,所述量子保密通信联盟链交易方法实施在用户U,包括:
生成交易;
向服务站QD发送利用与服务站QD密钥协商后所得的会话密钥KsUE加密的所述交易;所述交易用于供服务站QD响应后向用户U返回若干个交易应答;
获取来自服务站QD的若干个交易应答,并选取至少一部分所述交易应答生成背书;
向服务站QD发送利用与服务站QD密钥协商后所得的会话密钥KsUO加密的所述背书;所述背书用于供服务站QD响应后向用户U返回加密的交易结果;
获取来自服务站QD的加密的交易结果,利用与服务站QD密钥协商后所得的会话密钥KsUC解密后得到所述交易结果,并对所述交易结果进行验证;
所述服务站QD和服务站QU分别配置有服务站密钥卡,所述服务站密钥卡内存储包括群组对称密钥池、服务站公钥和服务站私钥;所述用户U配置有量子密钥卡,所述量子密钥卡内存储包括群组对称密钥池、客户端公钥和客户端私钥;所述用户U与服务站QU之间共享群组对称密钥池;
所述用户U与服务站QD密钥协商后得到会话密钥Ks,包括:
所述用户U根据随机数N0从己方密钥卡内取出参数K0,向服务站QD发送消息M0,所述消息M0包括用户U的编码IDU、所述随机数N0、参数K0加密的用户U的公钥PKU;
所述服务站QD接收消息M0,根据所述IDU得到服务站QU的编码IDQU,根据所述IDQU通过量子通信网络找到服务站QU,并与服务站QU通过QKD协商得到带有密钥参数KID的密钥K,所述密钥K包括参数Kreq、参数Ks和参数Ru,向服务站QU发送消息M1,所述消息M1包括KID、参数Kreq加密的消息M0、参数Kreq加密的服务站QD的编码IDQD;
所述服务站QU接收消息M1,根据KID得到参数Kreq、参数Ks和参数Ru,利用参数Kreq解密得到消息M0和IDQD,根据随机数N0和IDU得到参数K0,利用所述参数K0解密后得到公钥PKU,利用公钥PKU和服务站QU的私钥SKQU得到DH密钥KDH,根据IDQD、消息M0、服务站QU的公钥PKQU、参数Ks和密钥KDH制作包含两部分的票据Ticket,向服务站QD发送消息M2,所述消息M2包括KID、IDQU、M1和票据Ticket;
所述服务站QD接收消息M2,并向用户U发送消息M3,所述消息M3包括IDQU、参数Ru和票据Ticket;
所述用户U接收消息M3,解密票据Ticket的第二部分得到PKQU,利用PKQU和用户U的私钥SKU得到DH密钥KDH,利用密钥KDH解密票据Ticket的第二部分得到消息M0和参数Ks,对消息M0验证通过后信任参数Ks,并向服务站QD发送消息M4,所述消息M4包括利用参数Ks加密的随机数N2;
所述服务站QD接收消息M4,并根据随机数N2生成认证消息M5,向所述用户U发送认证消息M5,所述认证消息M5用于供用户U验证通过后信任服务站QD并选取参数Ks作为与服务站QD之间的会话密钥Ks;
服务站配置有Endorser、Orderer和Committer;
所述用户U与所述服务站QD的Endorser密钥协商后得到会话密钥KsUE;所述用户U与所述服务站QD的Orderer密钥协商后得到会话密钥KsUO;所述用户U与所述服务站QD的Committer密钥协商后得到会话密钥KsUC;
所述量子保密通信联盟链交易方法,包括:
所述用户U生成交易,并向若干个Endorser发送利用所述会话密钥KsUE加密的所述交易;
每个Endorser获取来自用户U的加密的交易,利用所述会话密钥KsUE解密后得到所述交易,根据所述交易生成交易应答并发送至用户U;
所述用户U获取来自若干个Endorser的若干个交易应答,并选取至少一部分所述交易应答生成背书,向Orderer发送利用会话密钥KsUO加密的所述背书;
所述Orderer获取来自用户U的加密的背书,利用所述会话密钥KsUO解密后得到所述背书,所述Orderer对多个背书进行排序后生成背书集合,并且所述Orderer向若干个所述Committer发送背书集合;
各所述Committer根据所述背书集合得到交易结果,向用户U发送利用所述会话密钥KsUC加密的交易结果;
所述用户U获取来自各所述Committer的加密的交易结果,利用所述会话密钥KsUC解密后得到所述交易结果,并对所述交易结果进行验证。
2.基于群组对称密钥池的量子保密通信联盟链交易方法,其特征在于,参与方包括用户U和服务站QD,所述用户U为服务站QU的子设备,所述量子保密通信联盟链交易方法实施在服务站QD,包括:
获取来自用户U的加密的交易;
利用与用户U密钥协商后所得的会话密钥KsUE解密后得到所述交易,根据所述交易生成若干个交易应答;
向所述用户U发送若干个交易应答,所述交易应答用于供用户U生成背书;
获取来自用户U的加密的背书;
利用与用户U密钥协商后所得的会话密钥KsUO解密后得到所述背书,根据所述背书得到交易结果;
向用户U发送利用与用户U密钥协商后所得的会话密钥KsUC加密的交易结果,所述交易结果用于供用户U进行验证;
所述服务站QD和服务站QU分别配置有服务站密钥卡,所述服务站密钥卡内存储包括群组对称密钥池、服务站公钥和服务站私钥;所述用户U配置有量子密钥卡,所述量子密钥卡内存储包括群组对称密钥池、客户端公钥和客户端私钥;所述用户U与服务站QU之间共享群组对称密钥池;
所述用户U与服务站QD密钥协商后得到会话密钥Ks,包括:
所述用户U根据随机数N0从己方密钥卡内取出参数K0,向服务站QD发送消息M0,所述消息M0包括用户U的编码IDU、所述随机数N0、参数K0加密的用户U的公钥PKU;
所述服务站QD接收消息M0,根据所述IDU得到服务站QU的编码IDQU,根据所述IDQU通过量子通信网络找到服务站QU,并与服务站QU通过QKD协商得到带有密钥参数KID的密钥K,所述密钥K包括参数Kreq、参数Ks和参数Ru,向服务站QU发送消息M1,所述消息M1包括KID、参数Kreq加密的消息M0、参数Kreq加密的服务站QD的编码IDQD;
所述服务站QU接收消息M1,根据KID得到参数Kreq、参数Ks和参数Ru,利用参数Kreq解密得到消息M0和IDQD,根据随机数N0和IDU得到参数K0,利用所述参数K0解密后得到公钥PKU,利用公钥PKU和服务站QU的私钥SKQU得到DH密钥KDH,根据IDQD、消息M0、服务站QU的公钥PKQU、参数Ks和密钥KDH制作包含两部分的票据Ticket,向服务站QD发送消息M2,所述消息M2包括KID、IDQU、M1和票据Ticket;
所述服务站QD接收消息M2,并向用户U发送消息M3,所述消息M3包括IDQU、参数Ru和票据Ticket;
所述用户U接收消息M3,解密票据Ticket的第二部分得到PKQU,利用PKQU和用户U的私钥SKU得到DH密钥KDH,利用密钥KDH解密票据Ticket的第二部分得到消息M0和参数Ks,对消息M0验证通过后信任参数Ks,并向服务站QD发送消息M4,所述消息M4包括利用参数Ks加密的随机数N2;
所述服务站QD接收消息M4,并根据随机数N2生成认证消息M5,向所述用户U发送认证消息M5,所述认证消息M5用于供用户U验证通过后信任服务站QD并选取参数Ks作为与服务站QD之间的会话密钥Ks;
服务站配置有Endorser、Orderer和Committer;
所述用户U与所述服务站QD的Endorser密钥协商后得到会话密钥KsUE;所述用户U与所述服务站QD的Orderer密钥协商后得到会话密钥KsUO;所述用户U与所述服务站QD的Committer密钥协商后得到会话密钥KsUC;
所述量子保密通信联盟链交易方法,包括:
所述用户U生成交易,并向若干个Endorser发送利用所述会话密钥KsUE加密的所述交易;
每个Endorser获取来自用户U的加密的交易,利用所述会话密钥KsUE解密后得到所述交易,根据所述交易生成交易应答并发送至用户U;
所述用户U获取来自若干个Endorser的若干个交易应答,并选取至少一部分所述交易应答生成背书,向Orderer发送利用会话密钥KsUO加密的所述背书;
所述Orderer获取来自用户U的加密的背书,利用所述会话密钥KsUO解密后得到所述背书,所述Orderer对多个背书进行排序后生成背书集合,并且所述Orderer向若干个所述Committer发送背书集合;
各所述Committer根据所述背书集合得到交易结果,向用户U发送利用所述会话密钥KsUC加密的交易结果;
所述用户U获取来自各所述Committer的加密的交易结果,利用所述会话密钥KsUC解密后得到所述交易结果,并对所述交易结果进行验证。
3.基于群组对称密钥池的量子保密通信联盟链交易方法,其特征在于,参与方包括用户U和服务站QD,所述用户U为服务站QU的子设备,所述量子保密通信联盟链交易方法,包括:
所述用户U生成交易,并向服务站QD发送利用与服务站QD密钥协商后所得的会话密钥KsUE加密的所述交易;
所述服务站QD获取来自用户U的加密的交易,利用所述会话密钥KsUE解密后得到所述交易,根据所述交易生成若干个交易应答并发送至用户U;
所述用户U获取来自服务站QD的若干个交易应答,并选取至少一部分所述交易应答生成背书,向服务站QD发送利用与服务站QD密钥协商后所得的会话密钥KsUO加密的所述背书;
所述服务站QD获取来自用户U的加密的背书,利用所述会话密钥KsUO解密后得到所述背书,根据所述背书得到交易结果,向用户U发送利用与用户U密钥协商后所得的会话密钥KsUC加密的交易结果;
所述用户U获取来自服务站QD的加密的交易结果,利用所述会话密钥KsUC解密后得到所述交易结果,并对所述交易结果进行验证;
所述服务站QD和服务站QU分别配置有服务站密钥卡,所述服务站密钥卡内存储包括群组对称密钥池、服务站公钥和服务站私钥;所述用户U配置有量子密钥卡,所述量子密钥卡内存储包括群组对称密钥池、客户端公钥和客户端私钥;所述用户U与服务站QU之间共享群组对称密钥池;
所述用户U与服务站QD密钥协商后得到会话密钥Ks,包括:
所述用户U根据随机数N0从己方密钥卡内取出参数K0,向服务站QD发送消息M0,所述消息M0包括用户U的编码IDU、所述随机数N0、参数K0加密的用户U的公钥PKU;
所述服务站QD接收消息M0,根据所述IDU得到服务站QU的编码IDQU,根据所述IDQU通过量子通信网络找到服务站QU,并与服务站QU通过QKD协商得到带有密钥参数KID的密钥K,所述密钥K包括参数Kreq、参数Ks和参数Ru,向服务站QU发送消息M1,所述消息M1包括KID、参数Kreq加密的消息M0、参数Kreq加密的服务站QD的编码IDQD;
所述服务站QU接收消息M1,根据KID得到参数Kreq、参数Ks和参数Ru,利用参数Kreq解密得到消息M0和IDQD,根据随机数N0和IDU得到参数K0,利用所述参数K0解密后得到公钥PKU,利用公钥PKU和服务站QU的私钥SKQU得到DH密钥KDH,根据IDQD、消息M0、服务站QU的公钥PKQU、参数Ks和密钥KDH制作包含两部分的票据Ticket,向服务站QD发送消息M2,所述消息M2包括KID、IDQU、M1和票据Ticket;
所述服务站QD接收消息M2,并向用户U发送消息M3,所述消息M3包括IDQU、参数Ru和票据Ticket;
所述用户U接收消息M3,解密票据Ticket的第二部分得到PKQU,利用PKQU和用户U的私钥SKU得到DH密钥KDH,利用密钥KDH解密票据Ticket的第二部分得到消息M0和参数Ks,对消息M0验证通过后信任参数Ks,并向服务站QD发送消息M4,所述消息M4包括利用参数Ks加密的随机数N2;
所述服务站QD接收消息M4,并根据随机数N2生成认证消息M5,向所述用户U发送认证消息M5,所述认证消息M5用于供用户U验证通过后信任服务站QD并选取参数Ks作为与服务站QD之间的会话密钥Ks;
服务站配置有Endorser、Orderer和Committer;
所述用户U与所述服务站QD的Endorser密钥协商后得到会话密钥KsUE;所述用户U与所述服务站QD的Orderer密钥协商后得到会话密钥KsUO;所述用户U与所述服务站QD的Committer密钥协商后得到会话密钥KsUC;
所述量子保密通信联盟链交易方法,包括:
所述用户U生成交易,并向若干个Endorser发送利用所述会话密钥KsUE加密的所述交易;
每个Endorser获取来自用户U的加密的交易,利用所述会话密钥KsUE解密后得到所述交易,根据所述交易生成交易应答并发送至用户U;
所述用户U获取来自若干个Endorser的若干个交易应答,并选取至少一部分所述交易应答生成背书,向Orderer发送利用会话密钥KsUO加密的所述背书;
所述Orderer获取来自用户U的加密的背书,利用所述会话密钥KsUO解密后得到所述背书,所述Orderer对多个背书进行排序后生成背书集合,并且所述Orderer向若干个所述Committer发送背书集合;
各所述Committer根据所述背书集合得到交易结果,向用户U发送利用所述会话密钥KsUC加密的交易结果;
所述用户U获取来自各所述Committer的加密的交易结果,利用所述会话密钥KsUC解密后得到所述交易结果,并对所述交易结果进行验证。
4.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至2中任一项所述的基于群组对称密钥池的量子保密通信联盟链交易方法的步骤。
5.基于群组对称密钥池的量子保密通信联盟链交易系统,其特征在于,所述量子保密通信联盟链交易系统包括用户U和服务站QD,所述用户U为服务站QU的子设备,所述服务站QD和服务站QU分别配置有服务站密钥卡,所述服务站密钥卡内存储包括群组对称密钥池、服务站公钥和服务站私钥;所述用户U配置有量子密钥卡,所述量子密钥卡内存储包括群组对称密钥池、客户端公钥和客户端私钥;所述用户U与服务站QU之间共享群组对称密钥池;
所述用户U和服务站QD通过通信网络实现权利要求3所述的基于群组对称密钥池的量子保密通信联盟链交易方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910554860.2A CN110380845B (zh) | 2019-06-25 | 2019-06-25 | 基于群组对称密钥池的量子保密通信联盟链交易方法、系统、设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910554860.2A CN110380845B (zh) | 2019-06-25 | 2019-06-25 | 基于群组对称密钥池的量子保密通信联盟链交易方法、系统、设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110380845A CN110380845A (zh) | 2019-10-25 |
CN110380845B true CN110380845B (zh) | 2023-06-09 |
Family
ID=68249272
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910554860.2A Active CN110380845B (zh) | 2019-06-25 | 2019-06-25 | 基于群组对称密钥池的量子保密通信联盟链交易方法、系统、设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110380845B (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111181718A (zh) * | 2019-12-30 | 2020-05-19 | 南京如般量子科技有限公司 | 一种基于联盟链的抗量子计算ike系统和协商通信方法 |
CN114172639B (zh) * | 2020-09-11 | 2023-06-27 | 军事科学院系统工程研究院网络信息研究所 | 基于区块链的量子加密通信方法 |
CN114362923B (zh) * | 2020-09-28 | 2024-05-17 | 如般量子科技有限公司 | 一种量子保密通信系统中的密钥刷新系统及方法 |
CN113765665B (zh) * | 2021-11-10 | 2022-02-08 | 济南量子技术研究院 | 基于量子密钥的区块链网络及数据安全传输方法 |
CN116896443A (zh) * | 2023-09-08 | 2023-10-17 | 江苏微知量子科技有限公司 | 量子安全区块链系统 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108964896A (zh) * | 2018-06-28 | 2018-12-07 | 如般量子科技有限公司 | 一种基于群组密钥池的Kerberos身份认证系统和方法 |
CN109687963A (zh) * | 2019-01-15 | 2019-04-26 | 如般量子科技有限公司 | 基于公钥池的抗量子计算联盟链交易方法和系统 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP3860037A1 (en) * | 2016-02-23 | 2021-08-04 | Nchain Holdings Limited | Cryptographic method and system for secure extraction of data from a blockchain |
-
2019
- 2019-06-25 CN CN201910554860.2A patent/CN110380845B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108964896A (zh) * | 2018-06-28 | 2018-12-07 | 如般量子科技有限公司 | 一种基于群组密钥池的Kerberos身份认证系统和方法 |
CN109687963A (zh) * | 2019-01-15 | 2019-04-26 | 如般量子科技有限公司 | 基于公钥池的抗量子计算联盟链交易方法和系统 |
Also Published As
Publication number | Publication date |
---|---|
CN110380845A (zh) | 2019-10-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11621833B2 (en) | Secure multiparty loss resistant storage and transfer of cryptographic keys for blockchain based systems in conjunction with a wallet management system | |
CN109687963B (zh) | 基于公钥池的抗量子计算联盟链交易方法和系统 | |
CN110086626B (zh) | 基于非对称密钥池对的量子保密通信联盟链交易方法和系统 | |
CN110380845B (zh) | 基于群组对称密钥池的量子保密通信联盟链交易方法、系统、设备 | |
CN110519046B (zh) | 基于一次性非对称密钥对和qkd的量子通信服务站密钥协商方法和系统 | |
CN115549887A (zh) | 用于信息的安全交换的公共秘密的确定和层级确定性密钥 | |
CN109728906B (zh) | 基于非对称密钥池的抗量子计算非对称加密方法和系统 | |
CN109064324A (zh) | 基于联盟链的交易方法、电子装置及可读存储介质 | |
CN110138548B (zh) | 基于非对称密钥池对和dh协议的量子通信服务站密钥协商方法和系统 | |
US20050105735A1 (en) | Information processing system and method, information processing device and method, recording medium, and program | |
CN109919611B (zh) | 基于对称密钥池服务器的抗量子计算区块链交易方法和系统 | |
CN110830244B (zh) | 基于身份秘密共享和联盟链的抗量子计算车联网方法及系统 | |
CN109921905B (zh) | 基于私钥池的抗量子计算密钥协商方法和系统 | |
CN110930251B (zh) | 基于联盟链和隐式证书的抗量子计算云存储方法及系统 | |
CN110535626B (zh) | 基于身份的量子通信服务站保密通信方法和系统 | |
CN110380859B (zh) | 基于非对称密钥池对和dh协议的量子通信服务站身份认证方法和系统 | |
CN110224816B (zh) | 基于密钥卡和序列号的抗量子计算应用系统以及近距离节能通信方法和计算机设备 | |
CN113225302B (zh) | 一种基于代理重加密的数据共享系统及方法 | |
CN109905229B (zh) | 基于群组非对称密钥池的抗量子计算Elgamal加解密方法和系统 | |
CN110768781A (zh) | 基于联盟链且抗量子计算的公私钥颁发方法及系统 | |
Ray et al. | A Certificate Authority (CA)-based cryptographic solution for HIPAA privacy/security regulations | |
CN110365472B (zh) | 基于非对称密钥池对的量子通信服务站数字签名方法、系统 | |
CN110098925B (zh) | 基于非对称密钥池对和随机数的量子通信服务站密钥协商方法和系统 | |
CN110176989B (zh) | 基于非对称密钥池的量子通信服务站身份认证方法和系统 | |
CN109687961B (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 |