基于联盟链的QKD网络认证密钥生成方法及系统技术方案

技术编号:23215044 阅读:25 留言:0更新日期:2020-01-31 22:41
本申请涉及一种基于联盟链的QKD网络认证密钥生成方法,实施在相互通信的联盟链成员之间,所述联盟成员包括User以及多个提供相应服务的Endorser,Orderer和Committer,其特征在于,各方均配置有密钥卡,所有密钥卡均存储有各自的私钥、公钥池以及系统管理公钥;所述公钥池中存储有与各所述联盟成员一一对应的公钥单元,所述公钥单元中存储有公钥随机数。各方通信时利用密钥卡基于ID密码学进行加密通信,进一步提高了安全性。

QKD network authentication key generation method and system based on alliance chain

【技术实现步骤摘要】
基于联盟链的QKD网络认证密钥生成方法及系统
本申请涉及联盟链领域,特别是涉及一种基于联盟链的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的本文档来自技高网
...

【技术保护点】
1.基于联盟链的QKD网络认证密钥生成方法,实施在相互通信的联盟链成员之间,所述联盟成员包括User以及多个提供相应服务的Endorser,Orderer和Committer,其特征在于,各方均配置有密钥卡,所有密钥卡均存储有各自的私钥、公钥池以及系统管理公钥;所述公钥池中存储有与各所述联盟成员一一对应的公钥单元,所述公钥单元中存储有公钥随机数;/n所述User为QKD网络设备,任意两个User,分别为User1及User2,两者之间的QKD网络认证密钥生成方法具体包括:/n所述User1向多个Endorser提出交易,所述交易信息中包含有User2的身份标识;/n多个所述Endorser接收到交易后,均生成一组认证密钥分量以及分量参数,并将所述认证密钥分量以及分量参数进行加密,得到第一密文以及第二密文,并将所述第一密文以及第二密文写入交易应答发送至User1;/nUser1接收多个交易应答后,对各交易应答进行验证,从验证为有效的交易应答中获取第一密文,还利用有效的交易应答制作背书并经由Orderer发送给Committer;/nCommitter收到背书后,相应生成交易通知发送给User1,还根据所述第一密文以及第二密文对世界状态进行更新;/nUser1接收交易通知后将多个所述第一密文进行解密后,得到多组认证密钥分量以及分量参数,并根据多组认证密钥分量以及分量参数基于秘密共享的理论生成与User2之间的QKD网络认证密钥。/n...

【技术特征摘要】
1.基于联盟链的QKD网络认证密钥生成方法,实施在相互通信的联盟链成员之间,所述联盟成员包括User以及多个提供相应服务的Endorser,Orderer和Committer,其特征在于,各方均配置有密钥卡,所有密钥卡均存储有各自的私钥、公钥池以及系统管理公钥;所述公钥池中存储有与各所述联盟成员一一对应的公钥单元,所述公钥单元中存储有公钥随机数;
所述User为QKD网络设备,任意两个User,分别为User1及User2,两者之间的QKD网络认证密钥生成方法具体包括:
所述User1向多个Endorser提出交易,所述交易信息中包含有User2的身份标识;
多个所述Endorser接收到交易后,均生成一组认证密钥分量以及分量参数,并将所述认证密钥分量以及分量参数进行加密,得到第一密文以及第二密文,并将所述第一密文以及第二密文写入交易应答发送至User1;
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.根据权利要求1所述的QKD网络认证密钥生成方法,其特征在于,所述ID密码学签名的方式具体包括:
根据交易内容以及哈希函数计算得到的值作为密钥指针随机数;
根据所述密钥指针随机数在公钥池中获取相应的公钥单元,并从所述公钥单元中获取签名公钥随机数;
根据所述交易内容以及签名公钥随机数进行MAC计算,得到MAC值;
根据密钥卡中生成的随机数参数、User1的公钥以及所述MAC值得到签名参数,再根据所述签名参数以及己方私钥生成签名。


5.根据权利要求1所述的QKD网络认证密钥生成方法,其特征在于,所述多个所述Endorser接收到交易后,均生成一组认证密...

【专利技术属性】
技术研发人员:富尧钟一民汪仲祥
申请(专利权)人:如般量子科技有限公司南京如般量子科技有限公司
类型:发明
国别省市:浙江;33

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1