CN113055174B - 基于共识机制的多节点间量子密钥同步方法 - Google Patents
基于共识机制的多节点间量子密钥同步方法 Download PDFInfo
- Publication number
- CN113055174B CN113055174B CN202110398827.2A CN202110398827A CN113055174B CN 113055174 B CN113055174 B CN 113055174B CN 202110398827 A CN202110398827 A CN 202110398827A CN 113055174 B CN113055174 B CN 113055174B
- Authority
- CN
- China
- Prior art keywords
- node
- consensus
- quantum key
- nodes
- quantum
- 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.)
- Expired - Fee Related
Links
- 238000000034 method Methods 0.000 title claims abstract description 52
- 238000004422 calculation algorithm Methods 0.000 claims abstract description 48
- 238000012217 deletion Methods 0.000 claims abstract description 38
- 230000037430 deletion Effects 0.000 claims abstract description 38
- 238000002360 preparation method Methods 0.000 claims description 27
- 238000003860 storage Methods 0.000 claims description 21
- 238000011112 process operation Methods 0.000 claims description 3
- 238000012545 processing Methods 0.000 claims description 3
- 239000000284 extract Substances 0.000 claims description 2
- 238000004891 communication Methods 0.000 abstract description 6
- 238000010586 diagram Methods 0.000 description 6
- 238000005516 engineering process Methods 0.000 description 5
- 238000011161 development Methods 0.000 description 2
- 238000009826 distribution Methods 0.000 description 2
- 101100460704 Aspergillus sp. (strain MF297-2) notI gene Proteins 0.000 description 1
- 235000018185 Betula X alpestris Nutrition 0.000 description 1
- 235000018212 Betula X uliginosa Nutrition 0.000 description 1
- 238000013528 artificial neural network Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000012790 confirmation Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 238000007619 statistical method Methods 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
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/0891—Revocation or update of secret information, e.g. encryption key update or rekeying
-
- 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/0894—Escrow, recovery or storing of secret information, e.g. secret key escrow or cryptographic key storage
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Physics & Mathematics (AREA)
- Electromagnetism (AREA)
- Theoretical Computer Science (AREA)
- Computer And Data Communications (AREA)
Abstract
本发明公开了一种基于共识机制的多节点间量子密钥同步方法,属于量子保密通信领域,该方法针对网络中的节点对于量子密钥的存储以及删除提出改进,并与量子密钥扩展算法相配合,提高了量子密钥的使用率,降低向服务器申请新密钥的频率。同时将聚类算法与共识算法进行结合,准确快速实现量子密钥在使用后的删除密钥同步。
Description
技术领域
本发明涉及量子保密通信领域,特别是涉及一种基于共识机制的多节点间量子密钥同步方法。
背景技术
随着社会信息化的发展,人们对于信息的安全性要求越来越高。但是随着量子计算技术的不断发展,基于数学问题的经典保密通信技术使用的加密算法将不再安全,有随时被破译的可能,因此量子加密技术应运而生。首先使用量子密钥分发技术将量子密钥分发到多个终端,其次是使用量子密钥加密传递信息。由于量子密钥分发过程中的安全性极高,量子密钥泄露的可能性极低,因此加密信息在传输过程中被窃听者破译的可能性更是微乎其微。量子密钥的使用结合“一次一密”加密算法可以完成绝对保密通信,但是也会造成量子密钥的大量消耗。“一次一密”即指长度跟明文相等、密钥为真随机序列和密钥只使用一次。但是被使用过一次的量子密钥若无法及时告知其他终端,其他终端进行通信时可能会再次使用已经被使用过的量子密钥,增加加密信息被破译的可能性,从而无法实现信息的保密通信,因此必须要解决量子密钥在使用后如何准确快速同步问题。同时大量量子密钥消耗之后又需要重新向服务器申请新的量子密钥,因而会增加时间成本。信息发送者如何选择密钥可以提高量子密钥的使用率,也是一个亟待解决的问题。
共识机制是区块链的核心技术,是区块链系统安全性的重要保障。共识机制是指通过特殊节点的投票,在很短的时间内完成对交易的验证和确认。共识机制包括共识规则和共识算法,共识算法具有以下三个特点:
1、一致性:所有参与共识的诚实节点,得到符合共识协议的计算结果是相同的。
2、终局性:所有参与共识的诚实的节点,最终可以达成一致性结果。
3、容错性:在共识算法的成功执行过程中,可以允许参与共识的节点发生错误。
共识算法的分类主要有三种,第一种用于非拜占庭网络的Paxos算法和Raft算法,第二种用于解决拜占庭问题的BFT和PBFT算法,第三种用于区块链的PoW、PoS等共识算法。
聚类是指将物理或抽象对象的集合分成由类似的对象组成的多个类的过程。由聚类所生成的簇是一组数据对象的集合,这些对象与同一个簇中的对象彼此相似,与其他簇中的对象相异。常见的聚类算法有以下五个类型:
1、基于分层的聚类算法,典型算法有BIRCH、CURE、CHAMELEON等。
2、基于划分的聚类算法,典型算法有k-means、k-medoids等。
3、基于密度的聚类算法,典型算法有OPTICS、GDBSCAN等。
4、基于网格的聚类算法,典型算法有STING、CLIQUE、WaveCluster等。
5、基于模型的聚类算法,两个尝试方案是统计方法和神经网络方法。
发明内容
本发明的发明目的是:鉴于量子密钥在使用后如何准确快速同步和提高量子密钥的使用率问题,而提出了一种基于共识机制的多节点间量子密钥同步方法。
为实现上述目的,本发明采用如下技术方案:基于共识机制的多节点间量子密钥同步方法,该方法应用的网络具有n个节点,n>2,其特征在于,所述方法包括如下步骤:
S1:所述网络的n个节点中每个节点都存储有m个量子密钥,并且所有节点存储的量子密钥顺序都一致,按照量子密钥的存储顺序将量子密钥进行编号,排列在最前面的为1号,然后依次加一,直至最后一个为m号,即所有节点同一量子密钥编号对应的量子密钥都是相同的;将所述m个量子密钥从前到后分成A、B、C三组,每组根据量子密钥存储规则存储相应数量的量子密钥,并且每组的量子密钥均采用循环单链表的链式存储结构形式进行存储;
S2:网络中的任意两个节点i、j在进行通信之前,作为信息发送方的节点i首先根据量子密钥选择规则选取量子密钥,按照A、B、C的顺序排列组装出完整的量子密钥,然后使用所述完整的量子密钥对信息进行加密,得到加密信息;
S3:节点i向节点j发送加密信息和对信息加密所使用的量子密钥初始位以及从每个初始位开始所使用的量子密钥使用个数;
S4:节点j作为信息接收方接收到节点i向其发送的加密信息和所使用的量子密钥初始位以及从每个初始位开始所使用的量子密钥使用个数,节点j按照步骤S2中节点i选取并组装出完整量子密钥的过程,根据量子密钥初始位以及从每个初始位开始所使用的量子密钥使用个数从自身的A、B、C三组中分别找到对应的量子密钥并提取出来,最终按照A、B、C的顺序排列组装出完整的量子密钥,然后使用所述完整的量子密钥对其接收到的加密信息进行解密,节点j若解密失败则向节点i发送解密失败消息,返回步骤S3;节点j若解密成功则向节点i发送解密成功消息;
S5:节点i收到解密成功消息后判断其向节点j所发送信息的保密等级,确定保密等级后,节点i按照量子密钥删除规则删除对应的量子密钥;
S6:节点i判断网络中的节点总数n是否大于100;
若节点总数n小于等于100,则节点i作为客户端向除自身以外的其他节点发起删除量子密钥共识请求,所述其他节点接收共识请求并通过预设的共识算法进行删除量子密钥共识处理,在达成共识后,执行删除量子密钥操作;
若节点总数n大于100,则先对所有节点进行聚类处理,得到聚类结果,再根据聚类结果按照预设的规则进行删除量子密钥共识,在达成共识后,执行删除量子密钥操作;其中聚类结果中的每个簇中的节点数满足大于等于4且小于等于100,将聚类得到的每个簇称为从共识集群,将每个簇中的中心节点和节点i组成一个共识集群,称为中心共识集群;其中按照预设的规则进行删除量子密钥共识的过程为:首先在中心共识集群中进行删除量子密钥共识,然后在从共识集群中进行删除量子密钥共识;
S7:每个节点使用密钥扩展算法对量子密钥进行扩展,使得量子密钥数量增加并且保持随机性。
进一步,所述量子密钥选择规则为:使用随机数生成算法生成分别在1至至至m范围内的随机数X、Y、Z作为量子密钥选择的三个初始位;预设对信息加密总共需要h个量子密钥,使用随机数生成算法生成每个初始位所要使用的量子密钥个数x、y、z,同时即从A、B、C三组的X、Y、Z位置起向后分别选择x、y、z个量子密钥,按照A、B、C组的顺序组合出所要使用的全部量子密钥。
进一步,所述量子密钥删除规则为:发送方节点i向接收方j发送加密信息且接收方节点j已正确解密信息时,发送方节点i的操作者判断信息保密等级,保密等级分为一级、二级、三级三个等级,从一级到三级,信息重要性逐渐减低,三级的信息删除A组中所使用的量子密钥,二级的信息删除A组和B组中所使用的量子密钥,一级的信息删除A组、B组和C组中所使用的量子密钥。
进一步,所述预设的共识算法为PBFT共识算法。
进一步,所述S6步骤中聚类处理的过程如下:
1)初始化聚类个数K;
2)在n个节点中选择K个来作为初始化的聚类中心节点;
3)剩余节点计算到各个所述聚类中心节点的距离,选择并加入距离其最短的聚类中心节点的簇中;
4)判断簇中节点的个数,若簇中节点的个数小于4,则将此簇中的节点加入到距离次短的聚类中心节点的簇中;若簇中节点的个数大于100,则在此簇中重新选择M个初始聚类中心节点,并执行步骤3);若簇中节点的个数大于等于4且小于等于100,则取各簇中距簇内各节点的绝对误差最小的节点,作为新的聚类中心节点,判断新的聚类中心节点集与原聚类中心节点集是否相同,相同则输出聚类结果。
进一步,步骤S6中,首先在中心共识集群中进行删除量子密钥共识,然后在从共识集群中进行删除量子密钥共识的具体过程如下:
1)在中心共识集群中选择一个节点作为主节点,信息发送方节点i作为客户端向所述主节点发送删除量子密钥请求,其中主节点的选择原则是P=V mod|R|,P为选择作为主节点的节点编号,V是主节点对应的视图编号,|R|表示存储副本节点的个数,mod表示求余运算,即取得两个整数相除后结果的余数;第一次共识的主节点默认为距离信息发送方节点i最近的节点,第一次共识的主节点对应的视图编号默认为距离信息发送方节点i最近的节点的编号;若本次共识失败,则V=V+1,根据主节点选择原则重新选择主节点,进行下次共识;
2)主节点收到来自信息发送方节点i的删除量子密钥请求后启动自身计时器,决定是否接受请求消息,若决定接受则向所有备份节点发送预准备消息;若决定不接受,则超时,共识失败,执行步骤1);
3)备份节点收到主节点发送的预准备消息后启动自身计时器,决定是否接受准备消息,若决定接受则向除自己以外的副本节点发送准备消息;若决定不接受,则超时,共识失败,执行步骤1);
4)副本节点收到备份节点发送的准备消息后自身启动计时器,在收到的准备消息和自己的准备消息中,所有副本节点判断自己是否至少持有2f个一致的准备消息,若是,则向除自己以外的副本节点发送提交消息,f为故障节点的个数;若不是,则超时,共识失败,执行步骤1);
5)副本节点收到除自己以外的副本节点发送的提交消息后启动自身计时器,在收到的提交消息和自己的提交消息中,所有副本节点判断自己是否至少持有(2f+1)个一致的提交消息,若是,则所有副本节点执行删除量子密钥操作;若不是,则超时,共识失败,执行步骤1);
6)所有副本节点向信息发送方节点i发送回复消息;
7)中心共识集群共识成功;
8)当中心共识集群共识成功后,每个从共识集群中的中心节点作为客户端发起共识,在其对应的从共识集群中按照上述中心共识集群的共识过程操作,进行量子密钥删除共识,直至所有从共识集群完成删除量子密钥共识;其中:从共识集群中主节点选择原则中第一次共识的主节点默认为距离中心节点最近的节点,第一次共识的主节点对应的视图编号默认为距离中心节点最近的节点的编号。
进一步,所述随机数生成算法为线性同余随机数法。
通过上述设计方案,本发明可以带来如下有益效果:本发明提出的基于共识机制的多节点间量子密钥同步方法,针对网络中的节点对于量子密钥的存储以及删除提出改进,并与量子密钥扩展算法相配合,提高了量子密钥的使用率,降低向服务器申请新密钥的频率。同时将聚类算法与共识算法进行结合,准确快速实现量子密钥在使用后的删除密钥同步。
附图说明
此处的附图说明用来提供对本发明的进一步理解,构成本发明申请的一部分,本发明示意性实施例及其说明用于理解本发明,并不构成本发明的不当限定,在附图中:
图1为基于共识机制的多节点(n>100)间量子密钥同步方法的实施示意图;
图2为基于共识机制的多节点(n≤100)间量子密钥同步方法的实施示意图;
图3为基于共识机制的多节点间量子密钥同步方法的工作流程图;
图4为基于共识机制的多节点(n>100)间量子密钥同步方法时序图;
图5为基于共识机制的多节点(n≤100)间量子密钥同步方法时序图;
图6为量子密码存储结构示意图;
图7为量子密钥选择表;
图8为量子密钥删除表;
图9为聚类过程流程图;
图10为共识过程流程图。
具体实施方式
为了能够更清楚地理解本发明的上述目的、特征和优点,下面结合附图和具体实施方式对本发明进行进一步的描述。但不应将此理解为本发明保护主题的范围仅限于以下的实施例,凡基于本发明内容所实现的技术均属于本发明的范围。
基于共识机制的多节点间量子密钥同步方法,请参阅图1和图2,该方法应用的网络具有n个节点,n>2,用于实施所述方法的模块组包括量子密钥存储模块、量子密钥使用模块、量子密钥共识模块和量子密钥扩展模块。
量子密钥使用模块:将量子密钥分成三组,在每组中随机选取一定数量的量子密钥共同用来对信息进行加密,此操作增加量子密钥选取的随机性,进而降低加密信息破译的可能性。量子密钥使用循环单链表的形式存储,防止量子密钥使用的假性溢出。
量子密钥使用模块:节点i使用量子密钥对信息进行加密,节点j成功解密之后向节点i回复,节点i判断其向节点j所传递信息的保密程度,根据保密等级不同删除全部或部分使用过的量子密钥。
量子密钥共识模块:当节点总数n小于等于100时,直接使用共识算法进行量子密钥删除共识;当节点总数n大于100时,对所有节点共识需要消耗大量的时间,会增加加密信息被破译的可能性,因此使用聚类算法形成多个簇,先对聚类中心节点进行量子密钥删除共识,再对簇内除聚类中心节点之外的各节点进行量子密钥删除共识,此操作极大的缩短了共识时间。
量子密钥扩展模块:每个节点内置量子密钥扩展算法,例如:利用hash函数,进行量子密钥扩展,在每次量子密钥共识结束后对量子密钥进行扩展,在保持量子密钥一定随机性的情况下,减少了向服务器申请量子密钥的频率。
请参阅图3、图4、图5、图6、图7、图8、图9和图10,基于共识机制的多节点间量子密钥同步方法的具体过程如下:
S1:所述网络的n个节点中每个节点都存储有m个量子密钥,并且所有节点存储的量子密钥顺序都一致,按照量子密钥的存储顺序将量子密钥进行编号,排列在最前面的为1号,然后依次加一,直至最后一个为m号,即所有节点同一量子密钥编号对应的量子密钥都是相同的;将所述m个量子密钥从前到后分成A、B、C三组,每组根据量子密钥存储规则存储相应数量的量子密钥,并且每组的量子密钥均采用循环单链表的链式存储结构形式进行存储;
S2:网络中的任意两个节点i、j在进行通信之前,作为信息发送方的节点i首先根据量子密钥选择规则选取量子密钥,按照A、B、C的顺序排列组装出完整的量子密钥,然后使用所述完整的量子密钥对信息进行加密,得到加密信息;
S3:节点i向节点j发送加密信息和对信息加密所使用的量子密钥初始位以及从每个初始位开始所使用的量子密钥使用个数;通过该操作,本发明中未发送具体所使用哪些量子密钥,可以确保信息被截获时,截获者无法对加密信息进行解密;
S4:节点j作为信息接收方接收到节点i向其发送的加密信息和所使用的量子密钥初始位以及从每个初始位开始所使用的量子密钥使用个数,节点j按照步骤S2中节点i选取并组装出完整量子密钥的过程,根据量子密钥初始位以及从每个初始位开始所使用的量子密钥使用个数从自身的A、B、C三组中分别找到对应的量子密钥并提取出来,即在A、B、C三组中找到X、Y、Z三个位置,并从三个位置起向后选择x、y、z个量子密钥;最终按照A、B、C的顺序排列组装出完整的量子密钥,然后使用所述完整的量子密钥对其接收到的加密信息进行解密,节点j若解密失败(解密失败的情况可以是加密信息或所使用的量子密钥初始位以及从每个初始位开始所使用的量子密钥使用个数被截获者篡改)则向节点i发送解密失败消息,返回步骤S3;节点j若解密成功则向节点i发送解密成功消息;
S5:节点i收到解密成功消息后判断其向节点j所发送信息的保密等级,确定保密等级后,节点i按照量子密钥删除规则删除对应的量子密钥;
S6:节点i判断网络中的节点总数n是否大于100;
若节点总数n小于等于100,则节点i作为客户端向除自身以外的其他节点发起删除量子密钥共识请求,所述其他节点接收共识请求并通过预设的共识算法进行删除量子密钥共识处理,在达成共识后,执行删除量子密钥操作;作为本发明的一种优选方案,所述预设的共识算法为PBFT共识算法,但并不限制于此,其他的现有的共识算法也可以实现删除量子密钥共识处理;
若节点总数n大于100,则先对所有节点进行聚类处理,得到聚类结果,再根据聚类结果按照预设的规则进行删除量子密钥共识,在达成共识后,执行删除量子密钥操作;其中聚类结果中的每个簇中的节点数满足大于等于4且小于等于100,将聚类得到的每个簇称为从共识集群,将每个簇中的中心节点和节点i组成一个共识集群,称为中心共识集群;其中按照预设的规则进行删除量子密钥共识的过程为:首先在中心共识集群中进行删除量子密钥共识,然后在从共识集群中进行删除量子密钥共识;
S7:每个节点使用密钥扩展算法对量子密钥进行扩展,使得量子密钥数量增加并且保持随机性。
其中:所述量子密钥存储规则为A组存储编号从1号到号(为向下取整符号,因为m/3可能不是整数,所以本发明采用进行取整)的量子密钥,B组存储编号从(此处的表示是从的下一个开始存储)号到号的量子密钥,C组存储编号从号到m号的量子密钥,(此处的表示是从的下一个开始存储),同理本发明采用进行取整。详见图6的量子密钥存储结构示意图,头指针指向头结点,尾指针指向尾结点;A组的头指针为LA、尾指针为PA,B组的头指针为LB、尾指针为PB,C组的头指针为LC、尾指针为PC。
其中:量子密钥选择规则为首先使用随机数生成算法生成分别在1至(A组)、至(B组)、至m(C组)范围内的随机数X、Y、Z作为量子密钥选择的初始位;假设此次对信息加密总共需要h个量子密钥,其次使用随机数生成算法生成每个初始位所要使用的量子密钥个数x、y、z,同时x+y+z=h,即从A、B、C三组的X、Y、Z位置起向后选择量子密钥,然后分别在三个位置选择x、y、z个量子密钥,按照A、B、C组的顺序组合出所要使用的全部量子密钥,详见图7示出的量子密钥选择表,需要理解的是,本发明中的 此式应该是简写为之所以是+1,比如5-10号,是6个数,不是5个数。
其中:量子密钥删除规则为针对已发送并且接收方节点j已经正确解密的信息,发送方节点i的操作者判断信息属于一般重要信息、比较重要信息、非常重要信息中的哪一类信息,一般重要信息属于信息保密等级的三级,比较重要信息属于信息保密等级的二级,非常重要信息属于信息保密等级的一级。三级的信息删除A组中所使用的量子密钥,二级的信息删除A组和B组中所使用的量子密钥,一级的信息删除A组、B组和C组中所使用的量子密钥,参考图8的量子密钥删除表。
请参照图9,聚类处理的过程如下:
1)初始化聚类个数K;
2)在n个节点中选择K个来作为初始化的聚类中心节点;
3)剩余节点计算到各个所述聚类中心节点的距离,选择并加入距离其最短的聚类中心节点的簇中;
4)判断簇中节点的个数,若簇中节点的个数小于4,则将此簇中的节点加入到距离次短的聚类中心节点的簇中;若簇中节点的个数大于100,则在此簇中重新选择M个初始聚类中心节点,并执行步骤3);若簇中节点的个数大于等于4且小于等于100,则计算各簇中距簇内各节点的绝对误差最小的节点,作为新的聚类中心节点,判断新的聚类中心节点集与原聚类中心节点集是否相同,相同则输出聚类结果。
请参照图10,共识的过程如下:
1)在中心共识集群中选择一个节点作为主节点,信息发送方节点i作为客户端向所述主节点发送删除量子密钥请求,其中主节点的选择原则是P=V mod|R|,P为选择作为主节点的节点编号,V是主节点对应的视图编号,|R|表示存储副本节点的个数,mod表示求余运算,即取得两个整数相除后结果的余数;第一次共识的主节点默认为距离信息发送方节点i最近的节点,第一次共识的主节点对应的视图编号默认为距离信息发送方节点i最近的节点的编号;若本次共识失败,则V=V+1,根据主节点选择原则重新选择主节点,进行下次共识;
2)主节点收到来自信息发送方节点i的删除量子密钥请求后启动自身计时器,决定是否接受请求消息,若决定接受则向所有备份节点发送预准备消息;若决定不接受,则超时,共识失败,执行步骤1);其中:备份节点为除主节点和客户端以外的节点;
3)备份节点收到主节点发送的预准备消息后启动自身计时器,决定是否接受准备消息,若决定接受则向除自己以外的副本节点发送准备消息;若决定不接受,则超时,共识失败,执行步骤1);其中:主节点和备份节点统称副本节点;
4)副本节点收到备份节点发送的准备消息后启动自身计时器,因消息发送中可能会发生篡改、延迟、截获等问题,所以在收到的准备消息和自己的准备消息中,所有副本节点判断自己是否至少持有2f个一致的准备消息,若是,则向除自己以外的副本节点发送提交消息,f为故障节点的个数;若不是,则超时,共识失败,执行步骤1);
5)副本节点收到除自己以外的副本节点发送的提交消息后启动自身计时器,在收到的提交消息和自己的提交消息中,所有副本节点判断自己是否至少持有(2f+1)(主节点也发送提交消息)个一致的提交消息,若是,则所有副本节点执行删除量子密钥操作;若不是,则超时,共识失败,执行步骤1);
6)所有副本节点向客户端发送回复消息;
7)中心共识集群共识成功;
8)当中心共识集群共识成功后,每个从共识集群中的中心节点作为客户端发起共识,在其对应的从共识集群中按照上述中心共识集群的共识过程操作,进行量子密钥删除共识,直至所有从共识集群完成删除量子密钥共识。其中不同的是,从共识集群共识过程中主节点选择原则中第一次共识的主节点默认为距离中心节点最近的节点,第一次共识的主节点对应的视图编号默认为距离中心节点最近的节点的编号。
Claims (5)
1.基于共识机制的多节点间量子密钥同步方法,该方法应用的网络具有n个节点,n>2,其特征在于,所述方法包括如下步骤:
S1:所述网络的n个节点中每个节点都存储有m个量子密钥,并且所有节点存储的量子密钥顺序都一致,按照量子密钥的存储顺序将量子密钥进行编号,排列在最前面的为1号,然后依次加一,直至最后一个为m号,即所有节点同一量子密钥编号对应的量子密钥都是相同的;将所述m个量子密钥从前到后分成A、B、C三组,每组根据量子密钥存储规则存储相应数量的量子密钥,并且每组的量子密钥均采用循环单链表的链式存储结构形式进行存储;
S2:网络中的任意两个节点i、j在进行通信之前,作为信息发送方的节点i首先根据量子密钥选择规则选取量子密钥,按照A、B、C的顺序排列组装出完整的量子密钥,然后使用所述完整的量子密钥对信息进行加密,得到加密信息;
S3:节点i向节点j发送加密信息和对信息加密所使用的量子密钥初始位以及从每个初始位开始所使用的量子密钥使用个数;
S4:节点j作为信息接收方接收到节点i向其发送的加密信息和所使用的量子密钥初始位以及从每个初始位开始所使用的量子密钥使用个数,节点j按照步骤S2中节点i选取并组装出完整量子密钥的过程,根据量子密钥初始位以及从每个初始位开始所使用的量子密钥使用个数从自身的A、B、C三组中分别找到对应的量子密钥并提取出来,最终按照A、B、C的顺序排列组装出完整的量子密钥,然后使用所述完整的量子密钥对其接收到的加密信息进行解密,节点j若解密失败则向节点i发送解密失败消息,返回步骤S3;节点j若解密成功则向节点i发送解密成功消息;
S5:节点i收到解密成功消息后判断其向节点j所发送信息的保密等级,确定保密等级后,节点i按照量子密钥删除规则删除对应的量子密钥;
S6:节点i判断网络中的节点总数n是否大于100;
若节点总数n小于等于100,则节点i作为客户端向除自身以外的其他节点发起删除量子密钥共识请求,所述其他节点接收共识请求并通过预设的共识算法进行删除量子密钥共识处理,在达成共识后,执行删除量子密钥操作;
若节点总数n大于100,则先对所有节点进行聚类处理,得到聚类结果,再根据聚类结果按照预设的规则进行删除量子密钥共识,在达成共识后,执行删除量子密钥操作;其中聚类结果中的每个簇中的节点数满足大于等于4且小于等于100,将聚类得到的每个簇称为从共识集群,将每个簇中的中心节点和节点i组成一个共识集群,称为中心共识集群;其中按照预设的规则进行删除量子密钥共识的过程为:首先在中心共识集群中进行删除量子密钥共识,然后在从共识集群中进行删除量子密钥共识;
S7:每个节点使用密钥扩展算法对量子密钥进行扩展,使得量子密钥数量增加并且保持随机性;
所述量子密钥删除规则为:发送方节点i向接收方j发送加密信息且接收方节点j已正确解密信息时,发送方节点i的操作者判断信息保密等级,保密等级分为一级、二级、三级三个等级,从一级到三级,信息重要性逐渐减低,三级的信息删除A组中所使用的量子密钥,二级的信息删除A组和B组中所使用的量子密钥,一级的信息删除A组、B组和C组中所使用的量子密钥;
所述S6步骤中聚类处理的过程如下:
1)初始化聚类个数K;
2)在n个节点中选择K个来作为初始化的聚类中心节点;
3)剩余节点计算到各个所述聚类中心节点的距离,选择并加入距离其最短的聚类中心节点的簇中;
4)判断簇中节点的个数,若簇中节点的个数小于4,则将此簇中的节点加入到距离次短的聚类中心节点的簇中;若簇中节点的个数大于100,则在此簇中重新选择M个初始聚类中心节点,并执行步骤3);若簇中节点的个数大于等于4且小于等于100,则取各簇中距簇内各节点的绝对误差最小的节点,作为新的聚类中心节点,判断新的聚类中心节点集与原聚类中心节点集是否相同,相同则输出聚类结果;
步骤S6中,首先在中心共识集群中进行删除量子密钥共识,然后在从共识集群中进行删除量子密钥共识的具体过程如下:
1)在中心共识集群中选择一个节点作为主节点,信息发送方节点i作为客户端向所述主节点发送删除量子密钥请求,其中主节点的选择原则是P=V mod|R|,P为选择作为主节点的节点编号,V是主节点对应的视图编号,|R|表示存储副本节点的个数,mod表示求余运算,即取得两个整数相除后结果的余数;第一次共识的主节点默认为距离信息发送方节点i最近的节点,第一次共识的主节点对应的视图编号默认为距离信息发送方节点i最近的节点的编号;若本次共识失败,则V=V+1,根据主节点选择原则重新选择主节点,进行下次共识;
2)主节点收到来自信息发送方节点i的删除量子密钥请求后启动自身计时器,决定是否接受请求消息,若决定接受则向所有备份节点发送预准备消息;若决定不接受,则超时,共识失败,执行步骤1);
3)备份节点收到主节点发送的预准备消息后启动自身计时器,决定是否接受准备消息,若决定接受则向除自己以外的副本节点发送准备消息;若决定不接受,则超时,共识失败,执行步骤1);
4)副本节点收到备份节点发送的准备消息后自身启动计时器,在收到的准备消息和自己的准备消息中,所有副本节点判断自己是否至少持有2f个一致的准备消息,若是,则向除自己以外的副本节点发送提交消息,f为故障节点的个数;若不是,则超时,共识失败,执行步骤1);
5)副本节点收到除自己以外的副本节点发送的提交消息后启动自身计时器,在收到的提交消息和自己的提交消息中,所有副本节点判断自己是否至少持有(2f+1)个一致的提交消息,若是,则所有副本节点执行删除量子密钥操作;若不是,则超时,共识失败,执行步骤1);
6)所有副本节点向信息发送方节点i发送回复消息;
7)中心共识集群共识成功;
8)当中心共识集群共识成功后,每个从共识集群中的中心节点作为客户端发起共识,在其对应的从共识集群中按照上述中心共识集群的共识过程操作,进行量子密钥删除共识,直至所有从共识集群完成删除量子密钥共识;其中:从共识集群中主节点选择原则中第一次共识的主节点默认为距离中心节点最近的节点,第一次共识的主节点对应的视图编号默认为距离中心节点最近的节点的编号。
4.根据权利要求1所述的基于共识机制的多节点间量子密钥同步方法,其特征在于:所述预设的共识算法为PBFT共识算法。
5.根据权利要求3所述的基于共识机制的多节点间量子密钥同步方法,其特征在于:所述随机数生成算法为线性同余随机数法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110398827.2A CN113055174B (zh) | 2021-04-14 | 2021-04-14 | 基于共识机制的多节点间量子密钥同步方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110398827.2A CN113055174B (zh) | 2021-04-14 | 2021-04-14 | 基于共识机制的多节点间量子密钥同步方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113055174A CN113055174A (zh) | 2021-06-29 |
CN113055174B true CN113055174B (zh) | 2022-06-28 |
Family
ID=76519367
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110398827.2A Expired - Fee Related CN113055174B (zh) | 2021-04-14 | 2021-04-14 | 基于共识机制的多节点间量子密钥同步方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113055174B (zh) |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111104678A (zh) * | 2018-10-25 | 2020-05-05 | 北京国盾量子信息技术有限公司 | 一种区块链共识方法及装置 |
CN112347508A (zh) * | 2020-11-04 | 2021-02-09 | 汪秀英 | 一种区块链数据共享加密和解密方法及系统 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070076887A1 (en) * | 2005-09-30 | 2007-04-05 | Nortel Networks Limited | Double phase encoding quantum key distribution |
EP3018840B1 (en) * | 2014-11-10 | 2019-10-02 | Université de Genève | Apparatus and method for QKD quantum communication channel continuous synchronization and alignment |
CN108667607A (zh) * | 2018-05-18 | 2018-10-16 | 国网信息通信产业集团有限公司 | 一种配用电终端的量子密钥同步方法 |
CN112260825B (zh) * | 2020-09-21 | 2022-07-01 | 浙江九州量子信息技术股份有限公司 | 一种基于层级树簇单元的量子密钥同步系统和方法 |
CN113765665B (zh) * | 2021-11-10 | 2022-02-08 | 济南量子技术研究院 | 基于量子密钥的区块链网络及数据安全传输方法 |
-
2021
- 2021-04-14 CN CN202110398827.2A patent/CN113055174B/zh not_active Expired - Fee Related
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111104678A (zh) * | 2018-10-25 | 2020-05-05 | 北京国盾量子信息技术有限公司 | 一种区块链共识方法及装置 |
CN112347508A (zh) * | 2020-11-04 | 2021-02-09 | 汪秀英 | 一种区块链数据共享加密和解密方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN113055174A (zh) | 2021-06-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108809652B (zh) | 一种基于秘密共享的区块链加密账本 | |
EP0292790B1 (en) | Controlling the use of cryptographic keys via generating station established control values | |
US20070074276A1 (en) | Method of operating a one-time pad system and a system for implementing this method | |
US11477039B2 (en) | Response-based cryptography using physical unclonable functions | |
CN113630248B (zh) | 一种会话密钥协商方法 | |
KR19990082665A (ko) | 공통키 통신방법 | |
CN108768647B (zh) | 一种区块链的随机数产生方法 | |
CN113612610B (zh) | 一种会话密钥协商方法 | |
CN113711564A (zh) | 用于加密数据的计算机实现的方法和系统 | |
Ming et al. | Blockchain-enabled efficient dynamic cross-domain deduplication in edge computing | |
CN113239403A (zh) | 一种数据共享方法及装置 | |
CN112039883A (zh) | 一种区块链的数据分享方法及装置 | |
CN112382376A (zh) | 基于区块链的医疗器械管理追溯系统 | |
Nilesh et al. | Quantum blockchain based on dimensional lifting generalized gram-schmidt procedure | |
GB2430846A (en) | Alignment of one-time pad data between users | |
CN114362928B (zh) | 一种用于多节点间加密的量子密钥分发与重构方法 | |
CN110620776A (zh) | 一种数据转移信息传输方法及其装置 | |
CN113055174B (zh) | 基于共识机制的多节点间量子密钥同步方法 | |
CN115943609A (zh) | 区块链网络中中毒交易的区块传播 | |
CN116155491B (zh) | 安全芯片的对称密钥同步方法及安全芯片装置 | |
CN111740965A (zh) | 一种基于物理不可克隆方程的物联网设备认证方法 | |
WO2000019652A1 (en) | Distributed shared key generation and management using fractional keys | |
CN113111371A (zh) | 一种基于区块链的数据传输方法及其系统 | |
JP2023509977A (ja) | 対称非同期生成的暗号化のための方法 | |
CN111488618A (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 | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20220628 |
|
CF01 | Termination of patent right due to non-payment of annual fee |