CN110740034B - 基于联盟链的qkd网络认证密钥生成方法及系统 - Google Patents
基于联盟链的qkd网络认证密钥生成方法及系统 Download PDFInfo
- Publication number
- CN110740034B CN110740034B CN201910916930.4A CN201910916930A CN110740034B CN 110740034 B CN110740034 B CN 110740034B CN 201910916930 A CN201910916930 A CN 201910916930A CN 110740034 B CN110740034 B CN 110740034B
- Authority
- CN
- China
- Prior art keywords
- public key
- transaction
- key
- ciphertext
- authentication key
- 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
- 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
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Physics & Mathematics (AREA)
- Electromagnetism (AREA)
- Theoretical Computer Science (AREA)
- Storage Device Security (AREA)
Abstract
本申请涉及一种基于联盟链的QKD网络认证密钥生成方法,实施在相互通信的联盟链成员之间,所述联盟成员包括User以及多个提供相应服务的Endorser,Orderer和Committer,其特征在于,各方均配置有密钥卡,所有密钥卡均存储有各自的私钥、公钥池以及系统管理公钥;所述公钥池中存储有与各所述联盟成员一一对应的公钥单元,所述公钥单元中存储有公钥随机数。各方通信时利用密钥卡基于ID密码学进行加密通信,进一步提高了安全性。
Description
技术领域
本申请涉及联盟链领域,特别是涉及一种基于联盟链的QKD网络认证密钥生成方法及系统。
背景技术
区块链是一种全新的分布式基础架构与计算范式,利用有序的链式数据结构存储数据,利用共识算法更新数据,利用密码学技术保障数据安全。在基于区块链的交易中,确保交易的数据安全和客户的隐私是区块链能够进一步发展的必要条件。为此,密码学技术尤其是公钥密钥学在区块链中得到了广泛的应用。而联盟链是区块链的一个分支,所以它本身也是一个分布式的,去中心化的公共数据库,跟其他链的区别就是它是针对特定群体的成员和有限的第三方,其内部指定多个预选节点为记账人,其共识过程受到预选节点控制的区块链。
量子通信技术是基于量子物理学建立起来的新兴安全通信技术。我国的量子通信技术已经进入了实用化的阶段,其应用前景和战略意义也引起了地方政府和重要行业对其产业发展的广泛关注。除建立量子通信干线以外,一些规模化城域量子通信网络也已经建设成功并运行。基于城域量子通信网络,量子通信技术也有了初步的应用,可实现高保密性的视频语音通信等应用。量子通信干线和量子通信城域网等量子通信网络,组成量子通信网络,其本质是量子密钥分发(QKD)。因此以QKD技术为基础建立起来的量子通信网络可称为QKD网络。
正如大多数人所了解的,量子计算机在密码破解上有着巨大潜力。当今主流的非对称(公钥)加密算法,如RSA加密算法,大多数都是基于大整数的因式分解或者有限域上的离散对数的计算这两个数学难题。他们的破解难度也就依赖于解决这些问题的效率。传统计算机上,要求解这两个数学难题,花费时间为指数时间(即破解时间随着公钥长度的增长以指数级增长),这在实际应用中是无法接受的。而为量子计算机量身定做的秀尔算法可以在多项式时间内(即破解时间随着公钥长度的增长以k次方的速度增长,其中k为与公钥长度无关的常数)进行整数因式分解或者离散对数计算,从而为RSA、离散对数加密算法的破解提供可能。
现有技术存在的问题:
1.当前QKD网络组网繁琐,其中的一个表现为:组网后需要给相邻的两个QKD设备人工颁发一对绝密的对称密钥作为QKD设备的认证密钥。由于QKD设备的成对关系数量巨大,人工颁发认证密钥的工作量也非常巨大。
2.当前QKD网络由一个密钥管理中心统一管理和控制密钥分发。该密钥管理中心容易遭受攻击导致整个QKD网络瘫痪。该密钥管理中心独立于QKD网络之外,增加了部署和维护的成本。该密钥管理中心记录QKD网络的密钥使用情况以用于计费等业务活动,但记录的防篡改、防抵赖能力不高。
发明内容
基于此,有必要针对上述技术问题,提供一种基于联盟链的QKD网络认证密钥生成方法及系统。
一种基于联盟链的QKD网络认证密钥生成方法,实施在相互通信的联盟链成员之间,所述联盟成员包括User以及多个提供相应服务的Endorser,Orderer和Committer,各方均配置有密钥卡,所有密钥卡均存储有各自的私钥、公钥池以及系统管理公钥;所述公钥池中存储有与各所述联盟成员一一对应的公钥单元,所述公钥单元中存储有公钥随机数;
所述User为QKD网络设备,任意两个User,分别为User1及User2,两者之间的QKD网络认证密钥生成方法具体包括:
所述User1向多个Endorser提出交易,所述交易信息中包含有User2的身份标识;
多个所述Endorser接收到交易后,均生成一组认证密钥分量以及分量参数,并将所述认证密钥分量以及分量参数进行加密,得到第一密文以及第二密文,并将所述第一密文以及第二密文写入交易应答发送至User1;
User1接收多个交易应答后,对各交易应答进行验证,从验证为有效的交易应答中获取第一密文,还利用有效的交易应答制作背书并经由Orderer发送给Committer;
Committer收到背书后,相应生成交易通知发送给User1,还根据所述第一密文以及第二密文对世界状态进行更新;
User1接收交易通知后将多个所述第一密文进行解密后,得到多组认证密钥分量以及分量参数,并根据多组认证密钥分量以及分量参数基于秘密共享的理论生成与User2之间的QKD网络认证密钥。
可选的,所述User1接收交易通知后将多个所述第一密文进行解密后,得到多组认证密钥分量以及分量参数,并根据多组认证密钥分量以及分量参数基于秘密共享的理论生成与User2之间的QKD网络认证密钥之后,所述User2获取所述QKD网络认证密钥,获取方法包括:
所述User2向多个Endorser提出交易,所述交易信息中包含有User1的身份标识;
多个所述Endorser接收到交易后,根据所述User1以及User2的身份标识读取世界状态,获取所述第二密文,并将所述第二密文写入交易应答发送至User2;
User2接收多个交易应答后,对各交易应答进行验证,从验证为有效的交易应答中获取第二密文,将多个所述第二密文进行解密后,得到多组认证密钥分量以及分量参数,并根据多组认证密钥分量以及分量参数基于秘密共享的理论获取与User1之间的QKD网络认证密钥。
可选的,User向Endorser提出交易,Endorser响应于该交易并进行相应操作,再将与交易结果相应的交易通知发送给User的过程中,交互的消息中携带有供验证时使用的签名,所述签名基于ID密码学的方式生成。
可选的,所述ID密码学的方式具体包括:
根据交易内容以及哈希函数计算得到的值作为密钥指针随机数;
根据所述密钥指针随机数在公钥池中获取相应的公钥单元,并从所述公钥单元中获取签名公钥随机数;
根据所述交易内容以及签名公钥随机数进行MAC计算,得到MAC值;
根据密钥卡中生成的随机数参数、User1的公钥以及所述MAC值得到签名参数,再根据所述签名参数以及己方私钥生成签名。
可选的,所述多个所述Endorser接收到交易后,均生成一组认证密钥分量以及分量参数,并将所述认证密钥分量以及分量参数进行加密,得到第一密文以及第二密文,并将所述第一密文以及第二密文以及写入交易应答发送至User1,其中将所述认证密钥分量以及参数进行加密,得到第一密文的方法包括:
根据所述User1身份标识在所述公钥池中获取相应的公钥随机数,并利用所述User1身份标识以及相对应的公钥随机数,计算得到User1的公钥;
根据所述User1的公钥和系统管理公钥对所述认证密钥分量以及分量参数进行加密,得到第一消息;
根据交易内容进行哈希计算,得到交易哈希值;
根据所述User1的身份标识、交易哈希值以及相应的公钥随机数进行哈希计算得到第一偏移量;
根据所述第一消息以及第一偏移量进行偏移加密,得到第一密文。
可选的,其中将所述认证密钥分量以及参数进行加密,得到第二密文的方法包括:
根据所述User2身份标识分别在所述公钥池中获取相应的公钥随机数,利用所述User2身份标识以及相对应的公钥随机数,计算得到User2的公钥;
根据所述User2的公钥对所述认证密钥分量以及分量参数进行加密,得到第二消息;
根据所述User2的身份标识、交易哈希值以及相应的公钥随机数进行哈希计算得到第二偏移量;
根据所述第二消息以及第二偏移量进行偏移加密,得到第二密文。
可选的,所述User1接收多个交易应答后,对各交易应答进行验证,从验证为有效的交易应答中获取认第一密文还包括:
对所述交易应答中的消息进行相应解密,得到所述第一密文;
对所述交易应答进行验证,并保留验证正确的交易应答中的第一密文。
可选的,所述User利用有效的交易应答制作背书发送给Orderer还包括:
依据所述Orderer身份标识在所述公钥池中获取相应的公钥随机数,并利用所述公钥随机数以及Orderer身份标识,计算得到Orderer公钥;
根据所述Orderer公钥对背书进行加密,得到经加密后的背书。
可选的,所述Orderer收到背书后,经排序再发送给Committer包括:
根据己方私钥对所述加密后的背书进行相应解密,得到解密后的背书;
对所述背书进行排序,得到背书集合;
依据所述Committer身份标识在所述公钥池中获取相应的公钥随机数,并利用所述公钥随机数以及Committer身份标识,计算得到Committer公钥;
根据所述Committer公钥对背书集合进行加密,得到经加密后的背书集合。
可选的,Committer收到背书后还包括:
根据己方私钥对所述加密后的背书集合进行相应解密,得到解密后的背书集合。
本发明还提供了一种基于联盟链的QKD网络认证密钥生成系统,包括相互通信的联盟链成员,所述联盟成员包括User以及多个提供相应服务的Endorser,Orderer和Committer,各方均配置有密钥卡,所有密钥卡均存储有各自的私钥、公钥池以及系统管理公钥;所述公钥池中存储有与各所述联盟成员一一对应的公钥单元,所述公钥单元中存储有公钥随机数;所述User为QKD网络设备,任意两个User,分别为User1及User2;
所述联盟链和用户包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现上述的基于联盟链的QKD网络认证密钥生成方法。
上述基于联盟链的QKD网络认证密钥生成方法及系统,通过使用联盟链为两个QKD设备颁发一对绝密的对称密钥作为QKD设备的认证密钥。由于QKD设备的成对关系数量巨大,因此减少了大量人工颁发认证密钥的工作量。在本发明中,2个QKD设备之间的认证密钥是通过秘密共享进行分布式存储并生成的,敌方通过各种手段获取少于秘密共享阈值t个秘密,均无法得到最终的认证密钥,因此提升了认证密钥网络分发的安全性。
附图说明
图1为一个实施例中QKD网络认证密钥生成系统的结构示意图;
图2为一个实施例中服务端密钥卡的内部结构图;
图3为一个实施例中客户密钥卡的内部结构图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
为了更好地描述和说明本申请的实施例,可参考一幅或多幅附图,但用于描述附图的附加细节或示例不应当被认为是对本申请的发明创造、目前所描述的实施例或优选方式中任何一者的范围的限制。
应该理解的是,除非本文中有明确的说明,各步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
如图1所示,提供了一种基于联盟链的QKD网络认证密钥生成方法,实施在相互通信的联盟链成员之间,所述联盟成员包括User以及多个提供相应服务的Endorser,Orderer和Committer,各方均配置有密钥卡,所有密钥卡均存储有各自的私钥、公钥池以及系统管理公钥;所述公钥池中存储有与各所述联盟成员一一对应的公钥单元,所述公钥单元中存储有公钥随机数。
在本实施例中,将认证密钥基于ID密码学计算得到的多个与认证密钥相关的分量分别放置在不同的Endorser的密钥卡中。用户在需要与相邻的用户之间通过QKD网络进行沟通时,需要获取认证密钥。此时,通过多个Endorser的密钥卡生成与认证密钥相关的分量,并将该分量放入交易应答中,发送给User。User收到多个Endorser发送的交易应答,并从交易应答中获取多个分量,再根据多个分量计算得到认证密钥。
在本实施例中,利用到的ID密码学的相关内容包括:假设G是一个群,从G中取生成元P,再选一个随机数作为私钥生成服务器的私钥s,有私钥生成服务器的系统管理公钥Ppub=sP。
在本实施例中,2个QKD设备之间的认证密钥AK是通过秘密共享进行分布式存储并生成的,由其中的n个Endorser组成基于ID密码学的分布式密钥生成服务。下面简单介绍秘密共享的原理和流程。
从素数阶q的有限域GF(q)中随机选取n个不同的非零元素x1,x2,…,xn,分配给参与者Pi(i=1,2,…,n)。把认证密钥AK作为共享的秘密信息,从GF(q)中选取t-1个元素a1,a2,…,a(t-1),构造多项式则有AKi=f(xi)(1≤i≤n)。(xi,AKi)作为参与者Pi的影子秘密。
联盟链成员还包括相应的区块链服务,每个服务有1个或多个ID。区块链服务包括Peer服务,Order服务等。其中Peer服务分为Committer和Endorser;Order服务由多个Orderer组成。联盟链所有成员均带有Committer功能,保存有区块链数据,Endorser还存有智能合约,智能合约运行于密钥卡内。
下文设User Client,Endorser,Orderer,Committer的标记如下:
1)ID分别为IDU,IDE,IDO,IDC。可以根据ID找到对应的公钥池单元
2)公钥分别为PKU,PKE,PKO,PKC
3)私钥分别为SKU,SKE,SKO,SKC
在本实施例中,任意两个QKD设备,设双方分别为Client和Client2。只要二者之间存在QKD线路(量子线路)且想要通过QKD方式获取密钥,则二者之间需要首先获得认证密钥。
如图2和图3所示,在本实施例中,联盟链服务端和客户端的密钥卡中包含各自的私钥和公钥随机数池(也称为公钥池),服务端公钥池中有所有联盟链服务端和客户端对应的公钥单元,客户端公钥池中有客户端自己的公钥单元和所有联盟链服务端对应的公钥单元,每个公钥单元存有ID和一个公钥随机数R。对于所有的密钥卡,可以根据ID在密钥卡中找到对应的公钥单元从而得到R,并且公钥随机数R与该用户公钥PK的对应关系如下:PK=H(ID||R)。所有密钥卡均为某组织颁发,各个用户的密钥卡保留各自的私钥并且永不公开,密钥系统采用基于ID密码学的理论。本实施例中,Endorser、Orderer和Committer等区块链服务端拥有图2所示的服务端密钥卡,Client拥有图3所示的客户端密钥卡。
在本实施例中,各联盟链成员的私钥SK=s*PK。所有的密钥卡中都还存储有系统管理公钥Ppub。
在本实施例中,所述User为QKD网络设备,任意两个User,分别为User1及User2,两者之间的QKD网络认证密钥生成方法具体包括:
所述User1向多个Endorser提出交易,所述交易信息中包含有User2的身份标识;
多个所述Endorser接收到交易后,均生成一组认证密钥分量以及分量参数,并将所述认证密钥分量以及分量参数进行加密,得到第一密文以及第二密文,并将所述第一密文以及第二密文以及写入交易应答发送至User1;
User1接收多个交易应答后,对各交易应答进行验证,从验证为有效的交易应答中获取第一密文,还利用有效的交易应答制作背书并经由Orderer发送给Committer;
Committer收到背书后,相应生成交易通知发送给User1,还根据所述第一密文以及第二密文对世界状态进行更新;
User1接收交易通知后将多个所述第一密文进行解密后,得到多组认证密钥分量以及分量参数,并根据多组认证密钥分量以及分量参数基于秘密共享的理论生成与User2之间的QKD网络认证密钥。
进一步的,User向Endorser提出交易,Endorser响应于该交易并进行相应操作,再将与交易结果相应的交易通知发送给User的过程中,交互的消息中携带有供验证时使用的签名,所述签名基于ID密码学的方式生成。
具体的,所述ID密码学的方式具体包括:根据交易内容以及哈希函数计算得到的值作为密钥指针随机数;根据所述密钥指针随机数在公钥池中获取相应的公钥单元,并从所述公钥单元中获取签名公钥随机数;根据所述交易内容以及签名公钥随机数进行MAC计算,得到MAC值;根据密钥卡中生成的随机数参数、User1的公钥以及所述MAC值得到签名参数,再根据所述签名参数以及己方私钥生成签名。
在本实施例中,所述多个所述Endorser接收到交易后,均生成一组认证密钥分量以及分量参数,并将所述认证密钥分量以及分量参数进行加密,得到第一密文以及第二密文,并将所述第一密文以及第二密文以及写入交易应答发送至User1,其中将所述认证密钥分量以及参数进行加密,得到第一密文的方法包括:根据所述User1身份标识在所述公钥池中获取相应的公钥随机数,并利用所述User1身份标识以及相对应的公钥随机数,计算得到User1的公钥;根据所述User1的公钥和系统管理公钥对所述认证密钥分量以及分量参数进行加密,得到第一消息;根据交易内容进行哈希计算,得到交易哈希值;根据所述User1的身份标识、交易哈希值以及相应的公钥随机数进行哈希计算得到第一偏移量;根据所述第一消息以及第一偏移量进行偏移加密,得到第一密文。
进一步的,其中将所述认证密钥分量以及参数进行加密,得到第二密文的方法包括:根据所述User2身份标识分别在所述公钥池中获取相应的公钥随机数,利用所述User2身份标识以及相对应的公钥随机数,计算得到User2的公钥,根据所述User2的公钥对所述认证密钥分量以及分量参数进行加密,得到第二消息;根据所述User2的身份标识、交易哈希值以及相应的公钥随机数进行哈希计算得到第二偏移量;根据所述第二消息以及第二偏移量进行偏移加密,得到第二密文。
在本实施例中,所述User1接收多个交易应答后,对各交易应答进行验证,从验证为有效的交易应答中获取第一密文还包括:对所述交易应答中的消息进行相应解密,得到所述第一密文;对所述交易应答进行验证,并保留验证正确的交易应答中的第一密文。
在本实施例中,所述User利用有效的交易应答制作背书发送给Orderer还包括:依据所述Orderer身份标识在所述公钥池中获取相应的公钥随机数,并利用所述公钥随机数以及Orderer身份标识,计算得到Orderer公钥;根据所述Orderer公钥对背书进行加密,得到经加密后的背书。
在本实施例中,所述Orderer收到背书后,经排序再发送给Committer包括:根据己方私钥对所述加密后的背书进行相应解密,得到解密后的背书;对所述背书进行排序,得到背书集合;依据所述Committer身份标识在所述公钥池中获取相应的公钥随机数,并利用所述公钥随机数以及Committer身份标识,计算得到Committer公钥;根据所述Committer公钥对背书集合进行加密,得到经加密后的背书集合。
在本实施例中,Committer收到背书后还包括:根据己方私钥对所述加密后的背书集合进行相应解密,得到解密后的背书集合。
在本实施例中,在生成User1和User2之间的QKD网络认证密钥后,User2获取该认证密钥的方法包括:所述User2向多个Endorser提出交易,所述交易信息中包含有User1的身份标识;多个所述Endorser接收到交易后,根据所述User1以及User2的身份标识读取世界状态,获取所述第二密文,并将所述第二密文写入交易应答发送至User2;User2接收多个交易应答后,对各交易应答进行验证,从验证为有效的交易应答中获取第二密文,将多个所述第二密文进行解密后,得到多组认证密钥分量以及分量参数,并根据多组认证密钥分量以及分量参数基于秘密共享的理论获取与User1之间的QKD网络认证密钥。
就各步骤细节进一步描述基于联盟链的QKD网络认证密钥生成方法的具体流程如下所示:
一.生成QKD网络认证密钥
步骤1:Client提出交易。
用户Client提出交易tx,Client的ID值是是IDU,Client2的ID值是IDU2。tx由proposal和clientSig组成,即tx={proposal,clientSig},其中proposal包括IDU、生成认证密钥的链码chaincodeID(即使用智能合约函数的编号)、txPayload(即函数的参数)和时间戳timestamp,此处txPayload的值为IDU2,即proposal={IDU,chaincodeID,txPayload=IDU2,timestamp}。
计算proposal的基于ID密码学的签名,得到签名SIGN(proposal,SKU),即clientSig,过程如下。Client用哈希函数作用于proposal得到Hm,用Hm作为密钥指针随机数,在密钥卡中找到一个公钥单元并从该单元取出公钥随机数Rm。求得Rm和proposal的MAC值MAC(proposal,Rm),又取随机数参数r,求得r和Client公钥PKU的乘积r*PKU,再用函数H1作用于MAC(proposal,Rm)和r*PKU,可得到签名参数h=H1(MAC(proposal,Rm),r*PKU)。则可以得到proposal的签名clientSig=SIGN(proposal,SKU)=(r*PKU,(r+h)*SKU),其中SKU为Client的私钥。
由于本专利的公钥随机数R不公开,敌方无法得到PKU;因此敌方无法通过r*PKU和PKU得到随机数r。由于签名的对象为消息认证码,因此无法被敌方所知,因此敌方无法通过签名的对象得到h。由于敌方无法得到r和h,因此敌方无法通过(r+h)*SKU得到SKU。综上所述,公开的数字签名能抵抗敌方量子计算机对基于身份的公钥密码学的攻击。
Client将tx即{{IDU,chaincodeID,txPayload=IDU2,timestamp},(r*PKU,(r+h)*SKU)}发送给Endorser。
步骤2:Endorser执行交易。
Endorser收到交易后,取出{{IDU,chaincodeID,txPayload=IDU2,timestamp},(r*PKU,(r+h)*SKU)}中各个部分。Endorser根据IDU在密钥卡中找到公钥单元并从中取出公钥随机数RU,根据公式PKU=H(IDU||RU)可以计算得到公钥PKU,然后用PKU来验证得到的签名。
要验证该签名,根据《An Identity-Based Signature from Gap Diffie-HellmanGroups》的数字签名验证理论,只需要验证(P,Ppub,r*PKU+h*PKU,(r+h)*SKU))是一个有效的Diffie-Hellman元组。
验证签名成功之后,Endorser判断Client是否具有生成认证密钥的权限,判断timestamp与本地时间的差异是否位于合理范围内。如果所有判断都通过,则Endorser认可该交易tx,否则Endorser不认可该交易。
步骤3:Endorser发送交易应答。
Endorser对proposal作哈希运算得到tid,又有tran-proposal包含{IDE,tid,chaincodeID,txPayload,readset,writeset}。Endorser取随机数AKi作为认证密钥的秘密共享分量,取随机数xi为参数,其中每个Endorser有各不相同的xi的取值范围,可保证任意两个Endorser获取的xi不相等;
并用PKU对Aki||xi进行加密,过程如下。根据公式gU=e(PKU,Ppub)可以计算得到gU。取随机数r,计算EUi=rP,EVi=(Aki||xi)⊕H2((gU)r),进而可以得到加密密文EAKi=<EUi,EVi>。
然后Endorser根据IDU2在密钥卡中找到公钥单元并从中取出公钥随机数RU2,根据公式PKU2=H(IDU2||RU2)可以计算得到公钥PKU2。同理,可以用PKU2对Aki||xi进行加密,得到加密密文EAKi2=<EUi2,EVi2>。
Endorser用哈希函数作用于IDE||tid||RU得到H(IDE||tid||RU),也称为PKEU;用哈希函数作用于IDE||tid||RU2得到H(IDE||tid||RU2),也称为PKEU2。对EAKi和EAKi2做偏移得到EAKi’=<EUi-PKEU,EVi>,EAKi2’=<EUi2-PKEU2,EVi2>。如果Endorser认可该交易tx的话,将IDU2赋值给readset,将IDU||IDU2||timestamp||tid||IDE||EAKi’||EAKi2’赋值给writeset;如果Endorser不认可该交易tx的话,则readset和writeset的值为无效值。
将tran-proposal作为原文,用步骤1中的签名方法用私钥SKE对其进行签名得到epSig,Endorser得到交易应答rtx={tran-propasal,epSig},并将rtx发送给Client。
步骤4:Client发送加密后的背书到Orderer。
Client收到交易应答后,取出rtx即{tran-propasal,epSig}中各个部分。
首先按照步骤2中的方法对签名epSig进行验证,如果验证成功了则进行后面的步骤,如果验证失败了该rtx就会被丢弃。取出readset和writeset的值,如果readset与IDU2相等,且writeset不是无效值的话,则说明该交易是被Endorser认可的交易。
Client判断收到的被认可的交易不少于t个,则达到了秘密共享的要求。Client用哈希函数作用于IDE||tid||RU得到H(IDE||tid||RU),即PKEU。对EAKi’做偏移恢复得到EAKi=<EUi-PKEU+PKEU,EVi>=<EUi,EVi>。Client对多个收到的认可的交易进行上述处理,并将得到的多组EAKi在本地保留。
Client将认可的交易的rtx组成背书,即背书etx=∑rtx。用Orderer的ID值IDO在密钥卡中读取公钥随机数RO,再根据公式PKO=H(IDO||RO)计算得到公钥PKO。
按照步骤3中的方法使用PKO对背书etx进行加密得到密文UC=<UU-H(IDU||tid||RO),UV>,并将密文UC发送给Orderer。如etx长度太大,则使用一个随机数密钥对称加密etx,并对该随机数密钥非对称加密得到UC;后续解密时,可先非对称解密UC得到随机数密钥,然后使用随机数密钥对称解密etx。本文其他涉及长消息的加密均可按照此方法。
步骤5:Orderer加密并发送排序后的etx集合到Committer。
Orderer收到各个Client发送的UC后,得到UC中的各个部分,并用前文所述恢复偏移量的方法得到<UU,UV>。取出自己的私钥SKO,根据公式 计算得到解密后的背书etx。在积累到一定数量的etx后,Orderer对etx进行排序。在达到block的最大大小或者达到超时时间后,Orderer将序列号seqno、上个联盟链区块的哈希值prevhash、∑etx组合起来,可以得到etx集合={seqno,prevhash,∑etx}。
接着Orderer用Committer的ID值IDC在密钥卡中读取公钥随机数RC,再根据公式PKC=H(IDC||RC)计算得到公钥PKC。按照步骤3中的方法使用PKC对etx集合进行加密得到密文OC=<OU-H(IDO||tid||RC),OV>,并将密文OC发送给该Committer。按照这种方法将etx集合用所有Committer的公钥分别加密并分别发送给所有的Committer。
步骤6:每个Committer验证交易,并更新世界状态。
每个Committer收到OC后,取出OC中的各个部分,并用前文所述恢复偏移量的方法得到<OU,OV>。取出自己的私钥SKC,根据公式etx集合=OV⊕H2(e(SKC,OU))计算得到解密后的etx集合。再取出{seqno,prevhash,∑etx}中的各个部分。分别取出每个etx,查看其中的rtx,即{tran-propasal,epSig}。首先按照步骤2中的方法对签名epSig进行验证,如果验证成功了则进行后面的步骤,如果验证失败了该rtx就会被丢弃。取出readset和writeset的值,如果readset与IDU2相等,且writeset不是无效值的话,则说明该交易是被认可的。
Committer查看通过验证的rtx是否达到秘密共享的要求,例如是否达到了t个有效的背书。如果认可该etx为有效交易就做出标记以示有效;否则Committer将不认可etx为有效交易,并做出标记以示无效。接下来,Committer将区块写入区块链,并且根据区块链中的有效交易,更新本地的世界状态。即取出每个etx中所有rtx所包含的writeset的值
IDU||IDU2||timestamp||tid||IDE||EAKi’||EAKi2’,组成集合
IDU||IDU2||timestamp||tid||∑{IDE||EAKi’||EAKi2’}并存储在本地。
步骤7:Committer发送交易通知。
Committer发送交易通知给Client。如果tx有效,将success作为result的值;如果tx无效则将failure作为result的值。将result、tid、committerSig组合来起到得到ntx={tid,result,committerSig}。其中committerSig是Committer按照步骤1中的方法对result的签名,即可以得到committerSig=SIGN(result,SKC)。
Committer将组合ntx发送给Client。
Client收到ntx后,得到{tid,result,committerSig}中的各个部分。按照步骤2中的方法来验证签名committerSig。验证签名成功之后,取出result查看其值,如果result的值是success,则进行以下计算:对步骤4中保留在本地的EAKi进行解密。对密文EAKi即<EUi,EVi>进行解密,根据公式(Aki||xi)=EVi⊕H2(e(SKU,EUi))计算得到解密后的原文Aki||xi。解密多个EAKi得到多组Aki||xi,即多组(xi,AKi),作为(t,n)秘密共享的秘密,由秘密共享的理论可以计算拉格朗日参数然后可以得到AK=∑λi*AKi,至此生成了认证密钥。如果result的值是failure,则说明生成认证密钥失败。
二.获取QKD网络认证密钥
步骤1:Client提出交易。
用户Client2提出交易tx,Client的ID值是是IDU,Client2的ID值是IDU2。tx由proposal和clientSig组成,即tx={proposal,clientSig},其中proposal包括IDU2、获取认证密钥的链码chaincodeID(即使用智能合约函数的编号)、txPayload(即函数的参数)和时间戳timestamp,此处txPayload的值为IDU,即proposal={IDU2,chaincodeID,txPayload=IDU,timestamp}。
计算proposal的基于ID密码学的签名,得到签名SIGN(proposal,SKU2),即clientSig,过程如下。Client2用哈希函数作用于proposal得到Hm,用Hm作为密钥指针随机数,在密钥卡中找到一个公钥单元并从该单元取出公钥随机数Rm。求得Rm和proposal的MAC值MAC(proposal,Rm),又取随机数参数r,求得r和Client公钥PKU2的乘积r*PKU2,再用函数H1作用于MAC(proposal,Rm)和r*PKU2,可得到签名参数h=H1(MAC(proposal,Rm),r*PKU2)。则可以得到proposal的签名clientSig=SIGN(proposal,SKU2)=(r*PKU2,(r+h)*SKU2),其中SKU2为Client2的私钥。
由于本专利的公钥随机数R不公开,敌方无法得到PKU2;因此敌方无法通过r*PKU2和PKU2得到随机数r。由于签名的对象为消息认证码,因此无法被敌方所知,因此敌方无法通过签名的对象得到h。由于敌方无法得到r和h,因此敌方无法通过(r+h)*SKU2得到SKU2。综上所述,公开的数字签名能抵抗敌方量子计算机对基于身份的公钥密码学的攻击。
Client2将tx即{{IDU2,chaincodeID,txPayload=IDU,timestamp},(r*PKU2,(r+h)*SKU2)}发送给Endorser。
步骤2:Endorser执行交易。
Endorser收到交易后,取出{{IDU2,chaincodeID,txPayload=IDU,timestamp},(r*PKU2,(r+h)*SKU2)}中各个部分。Endorser根据IDU2在密钥卡中找到公钥单元并从中取出公钥随机数RU2,根据公式PKU2=H(IDU2||RU2)可以计算得到公钥PKU2,然后用PKU2来验证得到的签名。
要验证该签名,只需要验证(P,Ppub,r*PKU2+h*PKU2,(r+h)*SKU2))是一个有效的Diffie-Hellman元组。
验证签名成功之后,Endorser判断Client2是否具有获取认证密钥的权限,读取本地世界状态判断Client2和Client之间是否存在会话密钥,判断Client2的proposal中的timestamp与本地时间的差异是否位于合理范围内。如果所有判断都通过,则Endorser认可该交易tx,否则Endorser不认可该交易。
步骤3:Endorser发送交易应答。
Endorser对proposal作哈希运算得到tid,又有tran-proposal包含{IDE,tid,chaincodeID,txPayload,readset,writeset}。如果Endorser认可该交易tx的话,Endorser根据IDU||IDU2读取本地世界状态,根据时间戳读取最近的记录,即获取最近的tid||∑{IDE||EAKi2’},并将其赋值给readset,将NULL赋值给writeset;如果Endorser不认可该交易tx的话,则readset和writeset的值为无效值。
将tran-proposal作为原文,用步骤1中的签名方法用私钥SKE对其进行签名得到epSig,Endorser得到交易应答rtx={tran-propasal,epSig},并将rtx发送给Client。
步骤4:Client收到结果
Client收到交易应答后,取出rtx即{tran-propasal,epSig}中各个部分。
首先按照步骤2中的方法对签名epSig进行验证,如果验证成功了则进行后面的步骤,如果验证失败了该rtx就会被丢弃。对验证成功的多个rtx,分别取出其中的readset并比较它们的值是否相等,相等的话则对其值即tid||∑{IDE||EAKi2’}进行解密。取出当中的EAKi2’,并恢复偏移:用哈希函数作用于IDE||tid||RU2得到H(IDE||tid||RU2),即PKEU2。对EAKi2’做偏移恢复得到EAKi2=<EUi2-PKEU2+PKEU2,EVi2>=<EUi2,EVi2>。然后对<EUi2,EVi2>进行解密,根据公式计算得到解密后的原文Aki||xi。照此解密多个EAKi2’可得到多组Aki||xi。
三.QKD设备相互认证
2个QKD设备使用AK作为认证密钥,互相认证,并进行QKD流程。
上述基于联盟链的QKD网络认证密钥生成方法及系统,通过使用密钥卡存储公钥随机数和私钥,其中公钥随机数存储在密钥卡的公钥池中。密钥卡是独立的硬件隔离设备,被恶意软件或恶意操作窃取密钥的可能性大大降低。由于量子计算机无法得到用户公钥,于是也无法得到对应的私钥。另外,本发明中,基于公私钥的抗量子计算签名和加密也保证了所传输消息及密钥自身的安全性,即使在量子计算机存在的情况下,也难以被推导出私钥。因此该方案不容易被量子计算机破解。
本发明中将基于ID密码学中的ID改为了ID加上公钥随机数或者部分公钥的形式,并对签名参数h也做了相应的改进使得签名参数h无法被敌方计算得到,使得数字签名具有很高的抗量子安全性。
同时,本专利在流程中的不同场合用到了偏移量,这些偏移量都需要密钥卡中的公钥池的参与才能计算得到,没有密钥卡的其他方将无法破解这些被偏移量保护的数据。偏移量的使用对数据进行了加密,使得传输过程更加安全,具有抗量子的特性;并且该加密方式比普通加密方式的计算量更小,因此避免了使用普通加密方式来抵抗量子计算机的攻击,降低了各方的设备负担。
本发明使用联盟链为两个QKD设备颁发一对绝密的对称密钥作为QKD设备的认证密钥。由于QKD设备的成对关系数量巨大,因此减少了大量人工颁发认证密钥的工作量。
本发明中,2个QKD设备之间的认证密钥AK是通过秘密共享进行分布式存储并生成的,敌方通过各种手段获取少于秘密共享阈值t个秘密,均无法得到最终的认证密钥,因此提升了认证密钥网络分发的安全性。
本专利不存在密钥管理中心来统一管理和控制密钥分发,而由QKD设备自主发起认证密钥的生成。由于不存在密钥管理中心,因此整个系统不容易遭受攻击而导致整个QKD网络瘫痪。由于联盟链服务可以分布式存在于多个QKD机房中,因此密钥管理功能不需要独立于QKD网络之外,减少了部署和维护的成本。由于使用联盟链来记录QKD网络的密钥使用情况以用于计费等业务活动,因此记录的防篡改、防抵赖能力比传统的密钥管理中心有所提高。
在其中一个实施例中,提供了一种计算机设备,即一种基于联盟链的QKD网络认证密钥生成系统,该计算机设备可以是终端,其内部结构可以包括通过系统总线连接的处理器、存储器、网络接口、显示屏和输入装置。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统和计算机程序。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现上述基于联盟链的QKD网络认证密钥生成方法。该计算机设备的显示屏可以是液晶显示屏或者电子墨水显示屏,该计算机设备的输入装置可以是显示屏上覆盖的触摸层,也可以是计算机设备外壳上设置的按键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等。
在其中一个实施例中,提供了一种基于联盟链的QKD网络认证密钥生成系统,包括相互通信的联盟链成员,所述联盟成员包括User以及多个提供相应服务的Endorser,Orderer和Committer,各方均配置有密钥卡,所有密钥卡均存储有各自的私钥、公钥池以及系统管理公钥;所述公钥池中存储有与各所述联盟成员一一对应的公钥单元,所述公钥单元中存储有公钥随机数;所述User为QKD网络设备,任意两个User,分别为User1及User2;
所述联盟链和用户包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现上述的基于联盟链的QKD网络认证密钥生成方法。
以上所述实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明的保护范围应以所附权利要求为准。
Claims (8)
1.基于联盟链的QKD网络认证密钥生成方法,实施在相互通信的联盟链成员之间,所述联盟链成员包括User以及多个提供相应服务的Endorser,Orderer和Committer,其特征在于,各方均配置有密钥卡,所有密钥卡均存储有各自的私钥、公钥池以及系统管理公钥;所述公钥池中存储有与各所述联盟链成员一一对应的公钥单元,所述公钥单元中存储有公钥随机数;
所述User为QKD网络设备,任意两个User,分别为User1及User2,两者之间的QKD网络认证密钥生成方法具体包括:
所述User1向多个Endorser提出交易,所述交易信息中包含有User2的身份标识;
多个所述Endorser接收到交易后,均生成一组认证密钥分量以及分量参数,并将所述认证密钥分量以及分量参数进行加密,得到第一密文以及第二密文,并将所述第一密文以及第二密文写入交易应答发送至User1,其中得到第一密文的方法包括:
根据所述User1身份标识在所述公钥池中获取相应的公钥随机数,并利用所述User1身份标识以及相对应的公钥随机数,计算得到User1的公钥;
根据所述User1的公钥和系统管理公钥对所述认证密钥分量以及分量参数进行加密,得到第一消息;
根据交易内容进行哈希计算,得到交易哈希值;
根据所述User1的身份标识、交易哈希值以及相应的公钥随机数进行哈希计算得到第一偏移量;
根据所述第一消息以及第一偏移量进行偏移加密,得到第一密文;
得到第二密文的方法包括:
根据所述User2身份标识分别在所述公钥池中获取相应的公钥随机数,利用所述User2身份标识以及相对应的公钥随机数,计算得到User2的公钥;
根据所述User2的公钥对所述认证密钥分量以及分量参数进行加密,得到第二消息;
根据所述User2的身份标识、交易哈希值以及相应的公钥随机数进行哈希计算得到第二偏移量;
根据所述第二消息以及第二偏移量进行偏移加密,得到第二密文;
User1接收多个交易应答后,对各交易应答进行验证,从验证为有效的交易应答中获取第一密文,还利用有效的交易应答制作背书并经由Orderer发送给Committer;
Committer收到背书后,相应生成交易通知发送给User1,还根据所述第一密文以及第二密文对世界状态进行更新;
User1接收交易通知后将多个所述第一密文进行解密后,得到多组认证密钥分量以及分量参数,并根据多组认证密钥分量以及分量参数基于秘密共享的理论生成与User2之间的QKD网络认证密钥。
2.根据权利要求1所述的QKD网络认证密钥生成方法,其特征在于,所述User1接收交易通知后将多个所述第一密文进行解密后,得到多组认证密钥分量以及分量参数,并根据多组认证密钥分量以及分量参数基于秘密共享的理论生成与User2之间的QKD网络认证密钥之后,所述User2获取所述QKD网络认证密钥,获取方法包括:
所述User2向多个Endorser提出交易,所述交易信息中包含有User1的身份标识;
多个所述Endorser接收到交易后,根据所述User1以及User2的身份标识读取世界状态,获取所述第二密文,并将所述第二密文写入交易应答发送至User2;
User2接收多个交易应答后,对各交易应答进行验证,从验证为有效的交易应答中获取第二密文,将多个所述第二密文进行解密后,得到多组认证密钥分量以及分量参数,并根据多组认证密钥分量以及分量参数基于秘密共享的理论获取与User1之间的QKD网络认证密钥。
3.根据权利要求1所述的QKD网络认证密钥生成方法,其特征在于,User向Endorser提出交易,Endorser响应于该交易并进行相应操作,再将与交易结果相应的交易通知发送给User的过程中,交互的消息中携带有供验证时使用的签名,所述签名基于ID密码学的方式生成。
4.根据权利要求3所述的QKD网络认证密钥生成方法,其特征在于,所述ID密码学签名的方式具体包括:
根据交易内容以及哈希函数计算得到的值作为密钥指针随机数;
根据所述密钥指针随机数在公钥池中获取相应的公钥单元,并从所述公钥单元中获取签名公钥随机数;
根据所述交易内容以及签名公钥随机数进行MAC计算,得到MAC值;
根据密钥卡中生成的随机数参数、User1的公钥以及所述MAC值得到签名参数,再根据所述签名参数以及己方私钥生成签名。
5.根据权利要求1所述的QKD网络认证密钥生成方法,其特征在于,所述User1接收多个交易应答后,对各交易应答进行验证,从验证为有效的交易应答中获取第一密文还包括:
对所述交易应答中的消息进行相应解密,得到所述第一密文;
对所述交易应答进行验证,并保留验证正确的交易应答中的第一密文。
6.根据权利要求5所述的QKD网络认证密钥生成方法,其特征在于,所述User利用有效的交易应答制作背书发送给Orderer还包括:
依据所述Orderer身份标识在所述公钥池中获取相应的公钥随机数,并利用所述公钥随机数以及Orderer身份标识,计算得到Orderer公钥;
根据所述Orderer公钥对背书进行加密,得到经加密后的背书。
7.根据权利要求6所述的QKD网络认证密钥生成方法,其特征在于,所述Orderer收到背书后,经排序再发送给Committer包括:
根据己方私钥对所述加密后的背书进行相应解密,得到解密后的背书;
对所述背书进行排序,得到背书集合;
依据所述Committer身份标识在所述公钥池中获取相应的公钥随机数,并利用所述公钥随机数以及Committer身份标识,计算得到Committer公钥;
根据所述Committer公钥对背书集合进行加密,得到经加密后的背书集合。
8.基于联盟链的QKD网络认证密钥生成系统,包括相互通信的联盟链成员,所述联盟链成员包括User以及多个提供相应服务的Endorser,Orderer和Committer,其特征在于,各方均配置有密钥卡,所有密钥卡均存储有各自的私钥、公钥池以及系统管理公钥;所述公钥池中存储有与各所述联盟链成员一一对应的公钥单元,所述公钥单元中存储有公钥随机数;所述User为QKD网络设备,任意两个User,分别为User1及User2;
所述联盟链和用户包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现权利要求1~7任一项所述的基于联盟链的QKD网络认证密钥生成方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910916930.4A CN110740034B (zh) | 2019-09-26 | 2019-09-26 | 基于联盟链的qkd网络认证密钥生成方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910916930.4A CN110740034B (zh) | 2019-09-26 | 2019-09-26 | 基于联盟链的qkd网络认证密钥生成方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110740034A CN110740034A (zh) | 2020-01-31 |
CN110740034B true CN110740034B (zh) | 2021-08-31 |
Family
ID=69269676
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910916930.4A Active CN110740034B (zh) | 2019-09-26 | 2019-09-26 | 基于联盟链的qkd网络认证密钥生成方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110740034B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112152817B (zh) * | 2020-09-25 | 2022-07-12 | 国科量子通信网络有限公司 | 基于后量子密码算法进行认证的量子密钥分发方法及系统 |
CN114448701B (zh) * | 2022-01-28 | 2023-10-13 | 矩阵时光数字科技有限公司 | 一种基于量子密钥的联盟区块链数据加密方法 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108234129A (zh) * | 2017-09-12 | 2018-06-29 | 北京电子科技学院 | 一种基于格密码的双向认证密钥协商方法与系统 |
CN109660345A (zh) * | 2019-01-17 | 2019-04-19 | 如般量子科技有限公司 | 基于非对称密钥池服务器的抗量子计算区块链交易方法和系统 |
CN109687963A (zh) * | 2019-01-15 | 2019-04-26 | 如般量子科技有限公司 | 基于公钥池的抗量子计算联盟链交易方法和系统 |
CN110266482A (zh) * | 2019-06-21 | 2019-09-20 | 郑州轻工业学院 | 一种基于区块链的非对称群组密钥协商方法 |
-
2019
- 2019-09-26 CN CN201910916930.4A patent/CN110740034B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108234129A (zh) * | 2017-09-12 | 2018-06-29 | 北京电子科技学院 | 一种基于格密码的双向认证密钥协商方法与系统 |
CN109687963A (zh) * | 2019-01-15 | 2019-04-26 | 如般量子科技有限公司 | 基于公钥池的抗量子计算联盟链交易方法和系统 |
CN109660345A (zh) * | 2019-01-17 | 2019-04-19 | 如般量子科技有限公司 | 基于非对称密钥池服务器的抗量子计算区块链交易方法和系统 |
CN110266482A (zh) * | 2019-06-21 | 2019-09-20 | 郑州轻工业学院 | 一种基于区块链的非对称群组密钥协商方法 |
Also Published As
Publication number | Publication date |
---|---|
CN110740034A (zh) | 2020-01-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111639361B (zh) | 一种区块链密钥管理方法、多人共同签名方法及电子装置 | |
CN109687963B (zh) | 基于公钥池的抗量子计算联盟链交易方法和系统 | |
CN113364576B (zh) | 一种基于区块链的数据加密存证与共享方法 | |
CN110519046B (zh) | 基于一次性非对称密钥对和qkd的量子通信服务站密钥协商方法和系统 | |
CN110768781B (zh) | 基于联盟链且抗量子计算的公私钥颁发方法及系统 | |
CN109919611B (zh) | 基于对称密钥池服务器的抗量子计算区块链交易方法和系统 | |
CN110830244B (zh) | 基于身份秘密共享和联盟链的抗量子计算车联网方法及系统 | |
CN111416715B (zh) | 基于秘密共享的量子保密通信身份认证系统及方法 | |
CN110380845B (zh) | 基于群组对称密钥池的量子保密通信联盟链交易方法、系统、设备 | |
US20220021526A1 (en) | Certificateless public key encryption using pairings | |
CN110690957A (zh) | 基于联盟链和隐式证书的抗量子计算私钥备份、挂失及恢复方法及系统 | |
CN110930251A (zh) | 基于联盟链和隐式证书的抗量子计算云存储方法及系统 | |
CN110661613A (zh) | 基于联盟链的抗量子计算隐式证书颁发方法及系统 | |
CN111416712B (zh) | 基于多个移动设备的量子保密通信身份认证系统及方法 | |
CN111181718A (zh) | 一种基于联盟链的抗量子计算ike系统和协商通信方法 | |
CN110740034B (zh) | 基于联盟链的qkd网络认证密钥生成方法及系统 | |
CN110266490B (zh) | 云存储数据的关键词密文生成方法及装置 | |
CN112529573A (zh) | 一种组合式区块链门限签名方法及系统 | |
CN110519040B (zh) | 基于身份的抗量子计算数字签名方法和系统 | |
CN109687961B (zh) | 基于对称密钥池路由装置的抗量子计算区块链交易方法和系统 | |
CN110737907B (zh) | 基于联盟链的抗量子计算云存储方法及系统 | |
CN110636050B (zh) | 基于联盟链且抗量子计算的匿名身份识别方法及系统 | |
Li et al. | Recoverable private key scheme for consortium blockchain based on verifiable secret sharing | |
CN110048852B (zh) | 基于非对称密钥池的量子通信服务站数字签密方法和系统 | |
CN110266483B (zh) | 基于非对称密钥池对和qkd的量子通信服务站密钥协商方法、系统、设备 |
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 |