CN117792640B - 动态调整量子密钥分组尺寸和量子密钥窗口尺寸的方法及系统 - Google Patents
动态调整量子密钥分组尺寸和量子密钥窗口尺寸的方法及系统 Download PDFInfo
- Publication number
- CN117792640B CN117792640B CN202410195584.6A CN202410195584A CN117792640B CN 117792640 B CN117792640 B CN 117792640B CN 202410195584 A CN202410195584 A CN 202410195584A CN 117792640 B CN117792640 B CN 117792640B
- Authority
- CN
- China
- Prior art keywords
- quantum key
- encryption
- key
- current
- size
- 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
- 238000000034 method Methods 0.000 title claims abstract description 31
- 230000006854 communication Effects 0.000 claims description 11
- 238000004891 communication Methods 0.000 claims description 10
- 238000012790 confirmation Methods 0.000 claims description 9
- 230000005540 biological transmission Effects 0.000 abstract description 11
- 230000001105 regulatory effect Effects 0.000 abstract 1
- 238000010586 diagram Methods 0.000 description 6
- 230000001360 synchronised effect Effects 0.000 description 3
- 238000004364 calculation method Methods 0.000 description 1
- 230000005610 quantum mechanics Effects 0.000 description 1
- 230000004043 responsiveness Effects 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明提供了一种动态调整量子密钥分组尺寸和量子密钥窗口尺寸的方法及系统。该方法包括对量子密钥进行分组管理,并根据密钥的生成和消耗速率对量子密钥分组尺寸进行调节,在量子密钥成码率低且不稳定的情况下保证数据加密传输的健壮性。该方法同时能根据预设的更新频率自适应调节密钥窗口的大小,防止数据传输带宽的动态变化导致量子密钥分组尺寸更新频率过慢或者频繁更新带来的同步开销问题。
Description
技术领域
本发明涉及信息通信技术领域,特别涉及一种动态调节量子密钥分组尺寸和量子密钥窗口的方法及系统。
背景技术
量子密钥分发(Quantum Key Distribution,QKD)技术基于量子力学原理,使通信双方能够共享一个安全的随机密钥流。QKD过程所产生的密钥具有理论上的无条件安全性,量子密钥分发结合一次一密可以保证加密的信息论安全。
现有技术方案中,有限的QKD成码率难以满足大量应用数据的一次一密的加密需求;此外,由于量子密钥不稳定的分发速率以及传输数据量的动态变化,需要对量子密钥的使用策略和更新频率进行自适应调节,然而现有技术中难以满足加密应用的安全需求并保证高带宽数据传输的稳定性。
发明内容
鉴于上述问题,本发明提供了一种动态调节量子密钥分组尺寸和量子密钥窗口尺寸的方法及系统,以期至少能够解决上述问题之一。
根据本发明的第一个方面,提供了一种动态调整量子密钥分组尺寸和量子密钥窗口尺寸的方法,包括:
密钥管理器根据量子密钥分组尺寸的默认值和量子密钥窗口尺寸的默认值,将本地密钥池中的量子密钥分组填充到本地当前的量子密钥窗口中,并为填充到本地当前的量子密钥窗口内的量子密钥分组添加序号以及初始化本地量子密钥索引指针,其中,密钥管理器包括加密端密钥管理器和解密端密钥管理器;
加密应用向加密端密钥管理器依次发送量子密钥获取请求,加密端密钥管理器将加密端量子密钥索引指针的当前值和当前加密端量子密钥窗口共同确定的加密端量子密钥分组返回给加密应用;
在加密端量子密钥索引指针的当前值超过当前加密端量子密钥窗口所限定的范围的情况下,加密端密钥管理器触发对当前加密端量子密钥分组尺寸和当前加密端量子密钥窗口尺寸的动态更新事件;
根据预设时间段内量子密钥的生成量和消耗量,加密端密钥管理器对当前加密端量子密钥分组尺寸进行动态调整更新,并根据预设的更新时间间隔、当前加密端量子密钥窗口的实际更新时间间隔和当前加密端量子密钥窗口尺寸对当前加密端量子密钥窗口尺寸进行动态调整和更新;
加密端密钥管理器将更新后的加密端量子密钥分组尺寸和更新后的加密端量子密钥窗口尺寸通告给解密端密钥管理器,解密端密钥管理器通过更新解密端量子密钥分组尺寸和解密端量子密钥窗口尺寸完成与加密端密钥管理器的参数同步,在同步操作完成后,密钥管理器将更新后的加密端量子密钥分组填充进更新后的加密端量子密钥窗口内,并进行量子密钥分组的序号添加操作和量子密钥索引指针的更新操作。
根据本发明的实施例,上述密钥管理器根据量子密钥分组尺寸的默认值和量子密钥窗口尺寸的默认值,将本地密钥池中的量子密钥分组填充到本地当前的量子密钥窗口中,并为填充到本地当前的量子密钥窗口内的量子密钥分组添加序号以及初始化本地量子密钥索引指针,其中,密钥管理器包括加密端密钥管理器和解密端密钥管理器包括:
加密端密钥管理器在收到加密应用发出的量子密钥获取请求时,将所获得的量子密钥分组尺寸的默认值和量子密钥窗口尺寸的默认值发送到解密端密钥管理器;
解密端密钥管理器将量子密钥分组尺寸的默认值作为解密端量子密钥分组尺寸,将量子密钥窗口尺寸的默认值作为解密端量子密钥窗口尺寸,并向加密端密钥管理器发出确认消息;
在接收到解密端密钥管理器的确认消息后,加密端密钥管理器根据量子密钥分组尺寸的默认值和量子密钥窗口尺寸的默认值,确定从加密端密钥池中按预设次序填充到当前加密端量子密钥窗口内的量子密钥分组的数量以及每个量子密钥分组的长度;
根据预设初始序号值,加密端密钥管理器对填充到当前加密端量子密钥窗口内的量子密钥分组依次进行序号添加操作,得到带序号的量子密钥分组,并将加密端量子密钥索引指针指向当前加密端量子密钥窗口内序号为特定值的量子密钥分组;
解密端密钥管理器根据解密端量子密钥分组尺寸和解密端量子密钥窗口尺寸进行解密端量子密钥窗口填充操作、解密端量子密钥分组序号添加操作以及解密端量子密钥索引指针初始化操作。
根据本发明的实施例,上述加密应用向加密端密钥管理器依次发送量子密钥获取请求,加密端密钥管理器,将加密端量子密钥索引指针的当前值和当前加密端量子密钥窗口共同确定的加密端量子密钥分组返回给加密应用包括:
加密端密钥管理器通过检查得到加密端量子密钥索引指针的当前值小于或等于当前加密端量子密钥窗口中量子密钥分组序号最大值时,加密端密钥管理器将加密端量子密钥索引指针的当前值所对应序号的量子密钥分组返回给加密应用,并将加密端量子密钥索引指针的当前值设置为当前加密端量子密钥窗口中的下一个量子密钥分组。
根据本发明的实施例,上述根据预设时间段内量子密钥的生成量和消耗量,加密端密钥管理器对当前加密端量子密钥分组尺寸进行动态调整更新,并根据预设的更新时间间隔、当前加密端量子密钥窗口的实际更新时间间隔和当前加密端量子密钥窗口尺寸对当前加密端量子密钥窗口尺寸进行动态调整更新包括:
加密端密钥管理器根据当前加密端量子密钥窗口实际更新时间间隔内通信两端之间量子密钥的生成量,计算当前加密端量子密钥窗口实际更新时间间隔内加密端量子密钥的平均生成速率;
加密端密钥管理器根据加密端当前量子密钥窗口实际更新时间间隔内量子密钥的消耗量,计算当前加密端量子密钥窗口实际更新时间间隔内加密端量子密钥的平均消耗速率;
在加密端量子密钥的平均消耗速率小于或等于加密端量子密钥的平均生成速率的情况下,加密端密钥管理器将当前加密端量子密钥分组尺寸与预设的量子密钥分组尺寸增量相加得到更新后的加密端量子密钥分组尺寸;
在加密端量子密钥的平均消耗速率大于加密端量子密钥的平均生成速率的情况下,加密端密钥管理器将当前加密端量子密钥分组尺寸减半得到更新后的加密端量子密钥分组尺寸;
根据预设的更新时间间隔、当前加密端量子密钥窗口的实际更新时间间隔和当前加密端量子密钥窗口尺寸,加密端密钥管理器利用预定义的量子密钥窗口调整公式对当前加密端量子密钥窗口尺寸进行动态调整更新,得到更新后的加密端量子密钥窗口尺寸。
根据本发明的实施例,上述预定义的量子密钥窗口调整公式由下式确定:
,
其中,表示预设的更新时间间隔,/>表示当前量子密钥窗口的实际更新时间间隔,/>表示当前量子密钥窗口尺寸,/>表示更新后的量子密钥窗口尺寸。
根据本发明的实施例,上述当前量子密钥窗口的实际更新时间间隔表示上一次量子密钥窗口尺寸更新事件到触发当前量子密钥窗口尺寸更新事件之间的时间间隔;
其中,在量子密钥窗口尺寸是第一次更新的情况下,当前量子密钥窗口的实际更新时间间隔表示量子密钥窗口尺寸初始化事件到触发第一更新事件之间的时间间隔。
根据本发明的第二个方面,提供了一种动态调整量子密钥分组尺寸和量子密钥窗口尺寸的系统,包括:
量子密钥填充模块,用于密钥管理器根据量子密钥分组尺寸的默认值和量子密钥窗口尺寸的默认值,将本地密钥池中的量子密钥分组填充到本地当前的量子密钥窗口中,并为填充到本地当前的量子密钥窗口内的量子密钥分组添加序号以及初始化本地量子密钥索引指针,其中,密钥管理器包括加密端密钥管理器和解密端密钥管理器;
量子密钥分组获取模块,用于加密端密钥管理器根据加密应用发送的量子密钥获取请求确定加密端量子密钥索引指针的当前值,并将加密端量子密钥索引指针的当前值和当前加密端量子密钥窗口共同确定的加密端量子密钥分组返回给加密应用;
动态更新事件触发模块,用于在加密端量子密钥索引指针的当前值超过当前加密端量子密钥窗口尺寸所限定的范围的情况下,加密端密钥管理器触发对当前加密端量子密钥分组尺寸和当前加密端量子密钥窗口尺寸的动态更新事件;
动态调整更新模块,用于根据预设时间段内量子密钥的生成量和消耗量,加密端密钥管理器对当前加密端量子密钥分组尺寸进行动态调整更新,并根据预设的更新时间间隔、当前加密端量子密钥窗口的实际更新时间间隔和当前加密端量子密钥窗口尺寸对当前加密端量子密钥窗口尺寸进行动态调整和更新;
双端同步模块,用于加密端密钥管理器将更新后的加密端量子密钥分组尺寸和更新后的加密端量子密钥窗口尺寸通告给解密端密钥管理器,解密端密钥管理器通过更新解密端量子密钥分组尺寸和解密端量子密钥窗口尺寸完成与加密端密钥管理器的参数同步,在同步操作完成后,密钥管理器将更新后的加密端量子密钥分组填充进更新后的加密端量子密钥窗口内,并进行量子密钥分组的序号添加操作和量子密钥索引指针的更新操作。
本发明公开了一种动态调节量子密钥分组尺寸和量子密钥窗口尺寸的方法,根据密钥的生成和消耗情况对量子密钥分组尺寸进行调节,从而提高在低码率和不稳定量子密钥供应情况下对高带宽数据传输的稳健性。并根据预设的更新频率自适应调节密钥窗口的大小,防止数据传输带宽的动态变化导致量子密钥分组尺寸更新频率过慢或者频繁更新带来的同步开销问题。
附图说明
图1是根据本发明实施例的动态调节量子密钥分组尺寸和量子密钥窗口尺寸的方法的流程图;
图2是根据本发明实施例的量子密钥分组尺寸和量子密钥窗口通信架构示意图;
图3是根据本发明实施例的量子密钥分组尺寸和量子密钥窗口动态调节过程的示意图;
图4是根据本发明实施例的动态调节量子密钥分组尺寸和量子密钥窗口的系统的结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚明白,以下结合具体实施例,并参照附图,对本发明作进一步的详细说明。
图1是根据本发明实施例的动态调节量子密钥分组尺寸和量子密钥窗口尺寸的方法的流程图。
如图1所示,上述动态调节量子密钥分组尺寸和量子密钥窗口尺寸的方法包括操作S110~操作S150。
在操作S110,密钥管理器根据量子密钥分组尺寸的默认值和量子密钥窗口尺寸的默认值,将本地密钥池中的量子密钥分组填充到本地当前的量子密钥窗口中,并为填充到本地当前的量子密钥窗口内的量子密钥分组添加序号以及初始化本地量子密钥索引指针,其中,密钥管理器包括加密端密钥管理器和解密端密钥管理器。
密钥管理器(Key Manager,KM)首先根据初始的量子密钥分组尺寸和窗口尺寸,对本地密钥池中的量子密钥进行分组形成分组量子密钥,为分组量子密钥添加序号,将分组量子密钥填充进窗口内。
本领域技术人员应当理解的是,加密密钥管理器和解密密钥管理器是相对的,即可以根据实际的通信需要,随机设定加密端和解密端。
在操作S120,加密应用向加密端密钥管理器依次发送量子密钥获取请求,加密端密钥管理器将加密端量子密钥索引指针的当前值和当前加密端量子密钥窗口共同确定的加密端量子密钥分组返回给加密应用。
加密端发送的量子密钥获取请求的序号与加密端量子密钥索引指针的值相对应。
加密应用向本地的KM发送获取量子密钥请求,KM根据密钥窗口和请求的序号确定对应的分组量子密钥,返回给加密应用。上述密钥管理器与加密应用位于通信过程中的同一端。
在操作S130,在加密端量子密钥索引指针的当前值超过当前加密端量子密钥窗口所限定的范围的情况下,加密端密钥管理器触发对当前加密端量子密钥分组尺寸和当前加密端量子密钥窗口尺寸的动态更新事件。
当加密应用向KM发送的获取量子密钥请求序号超过窗口范围时,KM进行量子密钥分组尺寸和窗口尺寸的调节。
在操作S140,根据预设时间段内量子密钥的生成量和消耗量,加密端密钥管理器对当前加密端量子密钥分组尺寸进行动态调整更新,并根据预设的更新时间间隔、当前加密端量子密钥窗口的实际更新时间间隔和当前加密端量子密钥窗口尺寸对当前加密端量子密钥窗口尺寸进行动态调整和更新。
密钥管理器KM根据过去一段时间密钥生成量与消耗量对量子密钥分组尺寸M进行调节,根据量子密钥窗口更新的时间间隔和预设的更新间隔调整窗口尺寸N。
在操作S150,加密端密钥管理器将更新后的加密端量子密钥分组尺寸和更新后的加密端量子密钥窗口尺寸通告给解密端密钥管理器,解密端密钥管理器通过更新解密端量子密钥分组尺寸和解密端量子密钥窗口尺寸完成与加密端密钥管理器的参数同步,在同步操作完成后,密钥管理器将更新后的加密端量子密钥分组填充进更新后的加密端量子密钥窗口内,并进行量子密钥分组的序号添加操作和量子密钥索引指针的更新操作。
KM将更新后的量子密钥分组尺寸和窗口尺寸与对端KM进行同步,同步完成后重新将分组密钥填充进窗口内,并返回量子密钥给加密应用。
对端KM即与解密应用同一端的密钥管理器。
本发明公开了一种动态调节量子密钥分组尺寸的方法。该方法对量子密钥进行分组管理,并根据密钥的生成和消耗速率对量子密钥分组尺寸进行调节,在量子密钥成码率低且不稳定的情况下保证数据加密传输的健壮性。同时本发明公开了一种动态调节量子密钥窗口的方法,该方法根据预设的更新频率自适应调节密钥窗口的大小,防止数据传输带宽的动态变化导致量子密钥分组尺寸更新频率过慢或者频繁更新带来的同步开销问题。
根据本发明的实施例,上述密钥管理器根据量子密钥分组尺寸的默认值和量子密钥窗口尺寸的默认值,将本地密钥池中的量子密钥分组填充到本地当前的量子密钥窗口中,并为填充到本地当前的量子密钥窗口内的量子密钥分组添加序号以及初始化本地量子密钥索引指针,其中,密钥管理器包括加密端密钥管理器和解密端密钥管理器包括:加密端密钥管理器在收到加密应用发出的量子密钥获取请求时,将所获得的量子密钥分组尺寸的默认值和量子密钥窗口尺寸的默认值发送到解密端密钥管理器;解密端密钥管理器将量子密钥分组尺寸的默认值作为解密端量子密钥分组尺寸,将量子密钥窗口尺寸的默认值作为解密端量子密钥窗口尺寸,并向加密端密钥管理器发出确认消息;在接收到解密端密钥管理器的确认消息后,加密端密钥管理器根据量子密钥分组尺寸的默认值和量子密钥窗口尺寸的默认值,确定从加密端密钥池中按预设次序填充到当前加密端量子密钥窗口内的量子密钥分组的数量以及每个量子密钥分组的长度;根据预设初始序号值,加密端密钥管理器对填充到当前加密端量子密钥窗口内的量子密钥分组依次进行序号添加操作,得到带序号的量子密钥分组,并将加密端量子密钥索引指针指向当前加密端量子密钥窗口内序号为特定值的量子密钥分组;解密端密钥管理器根据解密端量子密钥分组尺寸和解密端量子密钥窗口尺寸进行解密端量子密钥窗口填充操作、解密端量子密钥分组序号添加操作以及解密端量子密钥索引指针初始化操作。
下面结合具体实施例对密钥管理器进行量子密钥分组和管理的过程做进一步详细地说明。
加密应用以密钥块的形式向KM获取量子密钥,当加密应用第一次请求时,会向本地KM发送量子密钥同步请求并包含初始的量子密钥分组尺寸M和初始的窗口(即初始的量子密钥窗口尺寸)大小N。量子密钥分组尺寸M表示进行分组的每块量子密钥的长度,即原始量子密钥的比特数。量子密钥分组尺寸的初始值可以选择一个固定长度的值,如128bit,量子密钥分组尺寸不能太低,防止攻击者对量子密钥的穷举攻击,初始的窗口的大小取值可以取一个合适的值,如10000,表示暂时可以服务后续10000个密钥请求。
KM根据加密应用发送的初始量子密钥分组尺寸大小M1和窗口(即量子密钥窗口尺寸)大小N1,发送给对端解密应用的KM,接收到对端KM的确认消息后,就可以更新自己的加密量子密钥分组尺寸和加密窗口尺寸。对端的KM收到的密钥分组尺寸M1和窗口尺寸N1作为解密密钥分组尺寸M1和解密窗口尺寸N1。
在进行密钥管理器(即加密端密钥管理和解密端密钥管理器)初始过程中,设定量子密钥分组尺寸默认值和量子密钥窗口尺寸默认值/>,密钥管理器按照量子密钥窗口尺寸默认值/>初始化当前量子密钥窗口,并更新量子密钥窗口中的量子密钥分组和密钥索引指针/>。
密钥管理器以的量子密钥分组尺寸默认值为单位,从本地密钥池中按序移入量子密钥窗口尺寸个的量子密钥分组,用于填充当前量子密钥窗口。
密钥管理器,以序号1开始,对量子密钥窗口内填充的量子密钥分组依次添加序号,形成带序号的量子密钥分组,并设置密钥索引指针指向窗口内第一个且序号为1的量子密钥分组,即。
根据本发明的实施例,上述加密应用向加密端密钥管理器依次发送量子密钥获取请求,加密端密钥管理器,将加密端量子密钥索引指针的当前值和当前加密端量子密钥窗口共同确定的加密端量子密钥分组返回给加密应用包括:加密端密钥管理器通过检查得到加密端量子密钥索引指针的当前值小于当前加密端量子密钥窗口中量子密钥分组序号最大值时,加密端密钥管理器将加密端量子密钥索引指针的当前值所对应序号的量子密钥分组返回给加密应用,并将加密端量子密钥索引指针的当前值设置为当前加密端量子密钥窗口中的下一个量子密钥分组。
下面结合具体实施例对上述密钥管理器与本地加密应用进行分组量子密钥传输的过程做进一步详细地说明。
加密应用与本地KM进行获取量子密钥请求通信,通信协议中包含该请求的序号,如果该请求序号在KM的量子密钥窗口范围内,则KM直接返回对应该序号的量子密钥。如果数据包序号超过KM的量子密钥窗口范围,则需要读取新的量子密钥,触发量子密钥分组尺寸和量子密钥窗口尺寸的调节过程。
加密应用向加密端密钥管理器依次发送量子密钥获取请求,加密端密钥管理器,检查加密端量子密钥索引指针是否达到加密端量子密钥窗口中的量子密钥分组序号最大值,根据检查结果,得到正确的密钥索引指针并读取该指针指向的量子密钥分组,返回给加密应用,并更新密钥索引指针,具体操作如下:密钥管理器,检查得到密钥索引指针/>小于所述量子密钥窗口中的量子密钥分组序号最大值时,密钥管理器将密钥索引指针对应序号的量子密钥分组返回给所述加密应用,并设置密钥索引指针指向所述量子密钥窗口中的下一个量子密钥分组,即/>;加密端密钥管理器,检查得到加密端量子密钥索引指针达到量子密钥窗口中的量子密钥分组序号最大值时,加密端密钥管理器将密钥索引指针对应的量子密钥分组返回给所述加密应用;此时量子密钥窗口中的量子密钥分组已耗尽,加密端密钥管理器触发量子密钥分组尺寸和量子密钥窗口尺寸的更新事件;加密端密钥管理器将更新后的量子密钥分组尺寸和更新后的量子密钥窗口尺寸/>通告给解密应用所在的通信对端密钥管理器以实现参数同步。在同步操作确认完成后,以所述更新后的量子密钥分组尺寸为单位,从本地密钥池按序移入所述更新后的量子密钥窗口尺寸/>的量子密钥分组,填充量子密钥窗口。以序号/>开始,对窗口内填充的量子密钥分组依次添加序号,形成带序号的量子密钥分组,并设置密钥索引指针指向窗口内第一个且序号为/>的量子密钥分组,即/>。
根据本发明的实施例,上述根据预设时间段内量子密钥的生成量和消耗量,加密端密钥管理器对当前加密端量子密钥分组尺寸进行动态调整更新,并根据预设的更新时间间隔、当前加密端量子密钥窗口的实际更新时间间隔和当前加密端量子密钥窗口尺寸对当前加密端量子密钥窗口尺寸进行动态调整更新包括:加密端密钥管理器根据当前加密端量子密钥窗口实际更新时间间隔内通信两端之间量子密钥的生成量,计算当前加密端量子密钥窗口实际更新时间间隔内加密端量子密钥的平均生成速率;加密端密钥管理器根据加密端当前量子密钥窗口实际更新时间间隔内量子密钥的消耗量,计算当前加密端量子密钥窗口实际更新时间间隔内加密端量子密钥的平均消耗速率;在加密端量子密钥的平均消耗速率小于或等于加密端量子密钥的平均生成速率的情况下,加密端密钥管理器将当前加密端量子密钥分组尺寸与预设的量子密钥分组尺寸增量相加得到更新后的加密端量子密钥分组尺寸;在加密端量子密钥的平均消耗速率大于加密端量子密钥的平均生成速率的情况下,加密端密钥管理器将当前加密端量子密钥分组尺寸减半得到更新后的加密端量子密钥分组尺寸;根据预设的更新时间间隔、当前加密端量子密钥窗口的实际更新时间间隔和当前加密端量子密钥窗口尺寸,加密端密钥管理器利用预定义的量子密钥窗口调整公式对当前加密端量子密钥窗口尺寸进行动态调整更新,得到更新后的加密端量子密钥窗口尺寸。
根据本发明的实施例,上述预定义的量子密钥窗口调整公式由下式确定:
,
其中,表示预设的更新时间间隔,/>表示当前量子密钥窗口的实际更新时间间隔,/>表示当前量子密钥窗口尺寸,/>表示更新后的量子密钥窗口尺寸。
根据本发明的实施例,上述当前量子密钥窗口的实际更新时间间隔表示上一次量子密钥窗口尺寸更新事件到触发当前量子密钥窗口尺寸更新事件之间的时间间隔;其中,在量子密钥窗口尺寸是第一次更新的情况下,当前量子密钥窗口的实际更新时间间隔表示量子密钥窗口尺寸初始化事件到触发第一更新事件之间的时间间隔。
下面通过具体实施例并结合附图2和3对本发明所提出的量子密钥分组尺寸和量子密钥窗口的动态调节过程做进一步详细地说明。
图2是根据本发明实施例的量子密钥分组尺寸和量子密钥窗口通信架构示意图。
图3是根据本发明实施例的量子密钥分组尺寸和量子密钥窗口动态调节过程的示意图。
如图2所示,KM与量子密钥分发设备相连,量子密钥分发设备之间通过QKD协议不断产生密钥,KM将量子密钥分发设备供应的密钥存储到本地密钥池。加密应用或解密应用向KM请求量子密钥。
密钥分组尺寸更新的计算方法如下:如图3所示,首先,KM测量距离上次更新完成所经过的时间然后测量这段时间密钥池的消耗量/>,则可以计算得到这段时间的密钥平均消耗速率/>。然后KM从量子密钥分发设备获得这段时间的量子密钥平均成码率,用这个两个平均速率来估计将来一段的密钥生成和消耗速率,带入预定义的量子密钥分组尺寸调节公式进行调节;
预定义的量子密钥分组尺寸M调节公式如公式(1)所示:
(1),
为保证安全性M不能低于C,C表示一个密钥长度变量,对于不同的安全性需求可以取不同的值,一个典型值是128 bit;其中,表示旧的量子密钥分组尺寸。/>表示更新后的量子密钥分组尺寸。
例如,测量得到两次更新经过的时间,密钥池的消耗量/>,则计算得到这段时间的密钥平均消耗速率/>。KM从量子密钥设备获得这段时间的量子密钥平均成码率/>,则/>,假设原来的/>为256bit,则新的密钥分组尺寸/>为128bit。
同时,量子密钥窗口尺寸也要进行调节。数据传输的流量是动态变化的,导致窗口内的密钥消耗速率不稳定,从而导致窗口更新的频率也不稳定,需要保证更新同步的频率在合适的范围内。如果更新频率过慢,则对量子密钥动态变化的响应度较低,不能很好的调节密钥分组尺寸;如果更新频率过快,则产生大量的密钥分组尺寸同步开销。
如图3所示,在KM在初始建立时配置一个更新时间间隔,根据自己的量子密钥分发速率动态变化情况预设,例如分发速率变化过快,/>可以设置为10s。
然后KM根据预设的更新间隔对窗口尺寸的取值N进行自适应调节,防止更新频率过快或者过慢。预定于的量子密钥窗口的大小调节公式如公式(2)所示:
(2),
其中,表示旧的窗口尺寸。/>表示更新后的窗口尺寸。
KM将更新后的量子密钥分组尺寸和窗口尺寸与对端KM进行同步,同步完成后重新将分组密钥填充进窗口内,并返回量子密钥给加密应用,如图2所示,KM将更新后的密钥分组尺寸和窗口尺寸/>发送给对方KM,对方KM收到新的密钥分组尺寸和窗口尺寸后更新自己的解密密钥分组尺寸和解密密钥窗口尺寸,并回传一个确认消息,KM收到确认消息后,从密钥池中获取/>块大小为/>的量子密钥,填充到加密密钥窗口内。当加密应用请求密钥时从窗口获取大小为/>的新的量子密钥。
图4是根据本发明实施例的动态调节量子密钥分组尺寸和量子密钥窗口尺寸的系统的结构示意图。
如图4所示,上述动态调节量子密钥分组尺寸和量子密钥窗口尺寸的系统包括量子密钥分组填充模块410、量子密钥分组获取模块420、动态更新事件触发模块430、动态调整更新模块440以及双端同步模块450。
量子密钥分组填充模块410,用于密钥管理器根据量子密钥分组尺寸的默认值和量子密钥窗口尺寸的默认值,将本地密钥池中的量子密钥分组填充到本地当前的量子密钥窗口中,并为填充到本地当前的量子密钥窗口内的量子密钥分组添加序号以及初始化本地量子密钥索引指针,其中,密钥管理器包括加密端密钥管理器和解密端密钥管理器。
量子密钥分组获取模块420,用于加密端密钥管理器根据加密应用发送的量子密钥获取请求确定加密端量子密钥索引指针的当前值,并将加密端量子密钥索引指针的当前值和当前加密端量子密钥窗口共同确定的加密端量子密钥分组返回给加密应用。
动态更新事件触发模块430,用于在加密端量子密钥索引指针的当前值超过当前加密端量子密钥窗口所限定的范围的情况下,加密端触发对当前加密端量子密钥分组尺寸和当前加密端量子密钥窗口尺寸的动态更新事件。
动态调整更新模块440,用于根据预设时间段内量子密钥的生成量和消耗量,加密端密钥管理器对当前加密端量子密钥分组尺寸进行动态调整更新,并根据预设的更新时间间隔、当前加密端量子密钥窗口的实际更新时间间隔和当前加密端量子密钥窗口尺寸对当前加密端量子密钥窗口尺寸进行动态调整和更新。
双端同步模块450,用于加密端密钥管理器将更新后的加密端量子密钥分组尺寸和更新后的加密端量子密钥窗口尺寸通告给解密端密钥管理器,解密端密钥管理器通过更新解密端量子密钥分组尺寸和解密端量子密钥窗口尺寸完成与加密端密钥管理器的参数同步,在同步操作完成后,密钥管理器将更新后的加密端量子密钥分组填充进更新后的加密端量子密钥窗口内,并进行量子密钥分组的序号添加操作和量子密钥索引指针的更新操作。
本发明公开了一种动态调节量子密钥分组尺寸和量子密钥窗口的系统,根据密钥的生成和消耗情况对量子密钥分组尺寸进行调节,从而提高在低码率和不稳定量子密钥供应情况下对高带宽数据传输的稳健性;同时根据预设的更新频率自适应调节量子密钥窗口的大小,防止数据传输带宽的动态变化导致量子密钥分组尺寸更新频率过慢或者频繁更新带来的同步开销问题。
以上的具体实施例,对本发明的目的、技术方案和有益效果进行了进一步详细说明,应理解的是,以上仅为本发明的具体实施例而已,并不用于限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (6)
1.一种动态调整量子密钥分组尺寸和量子密钥窗口尺寸的方法,其特征在于,包括:
密钥管理器根据量子密钥分组尺寸的默认值和量子密钥窗口尺寸的默认值,将本地密钥池中的量子密钥分组填充到本地当前的量子密钥窗口中,并为填充到所述本地当前的量子密钥窗口内的量子密钥分组添加序号以及初始化本地量子密钥索引指针,其中,所述密钥管理器包括加密端密钥管理器和解密端密钥管理器;
加密应用向所述加密端密钥管理器依次发送量子密钥获取请求,所述加密端密钥管理器将加密端量子密钥索引指针的当前值和当前加密端量子密钥窗口共同确定的加密端量子密钥分组返回给所述加密应用;
在所述加密端量子密钥索引指针的当前值超过所述当前加密端量子密钥窗口所限定的范围的情况下,所述加密端密钥管理器触发对当前加密端量子密钥分组尺寸和所述当前加密端量子密钥窗口尺寸的动态更新事件;
根据预设时间段内量子密钥的生成量和消耗量,所述加密端密钥管理器对所述当前加密端量子密钥分组尺寸进行动态调整更新,并根据预设的更新时间间隔、所述当前加密端量子密钥窗口的实际更新时间间隔和所述当前加密端量子密钥窗口尺寸对所述当前加密端量子密钥窗口尺寸进行动态调整和更新;
所述加密端密钥管理器将更新后的加密端量子密钥分组尺寸和更新后的加密端量子密钥窗口尺寸通告给所述解密端密钥管理器,所述解密端密钥管理器通过更新解密端量子密钥分组尺寸和解密端量子密钥窗口尺寸完成与所述加密端密钥管理器的参数同步,在同步操作完成后,所述密钥管理器将更新后的加密端量子密钥分组填充进更新后的加密端量子密钥窗口内,并进行量子密钥分组的序号添加操作和量子密钥索引指针的更新操作;
其中,根据预设时间段内量子密钥的生成量和消耗量,所述加密端密钥管理器对所述当前加密端量子密钥分组尺寸进行动态调整更新,并根据预设的更新时间间隔、所述当前加密端量子密钥窗口的实际更新时间间隔和所述当前加密端量子密钥窗口尺寸对所述当前加密端量子密钥窗口尺寸进行动态调整更新包括:
所述加密端密钥管理器根据所述当前加密端量子密钥窗口实际更新时间间隔内通信两端之间量子密钥的生成量,计算所述当前加密端量子密钥窗口实际更新时间间隔内加密端量子密钥的平均生成速率;
所述加密端密钥管理器根据所述加密端当前量子密钥窗口实际更新时间间隔内量子密钥的消耗量,计算所述当前加密端量子密钥窗口实际更新时间间隔内加密端量子密钥的平均消耗速率;
在所述加密端量子密钥的平均消耗速率小于或等于所述加密端量子密钥的平均生成速率的情况下,所述加密端密钥管理器将所述当前加密端量子密钥分组尺寸与预设的量子密钥分组尺寸增量相加得到所述更新后的加密端量子密钥分组尺寸;
在所述加密端量子密钥的平均消耗速率大于所述加密端量子密钥的平均生成速率的情况下,所述加密端密钥管理器将所述当前加密端量子密钥分组尺寸减半得到所述更新后的加密端量子密钥分组尺寸;
根据预设的更新时间间隔、所述当前加密端量子密钥窗口的实际更新时间间隔和所述当前加密端量子密钥窗口尺寸,所述加密端密钥管理器利用预定义的量子密钥窗口调整公式对所述当前加密端量子密钥窗口尺寸进行动态调整更新,得到所述更新后的加密端量子密钥窗口尺寸。
2.根据权利要求1所述的方法,其特征在于,密钥管理器根据量子密钥分组尺寸的默认值和量子密钥窗口尺寸的默认值,将本地密钥池中的量子密钥分组填充到本地当前的量子密钥窗口中,并为填充到所述本地当前的量子密钥窗口内的量子密钥分组添加序号以及初始化本地量子密钥索引指针,其中,所述密钥管理器包括加密端密钥管理器和解密端密钥管理器包括:
所述加密端密钥管理器在收到所述加密应用发出的量子密钥获取请求时,将所获得的量子密钥分组尺寸的默认值和量子密钥窗口尺寸的默认值发送到所述解密端密钥管理器;
所述解密端密钥管理器将所述量子密钥分组尺寸的默认值作为解密端量子密钥分组尺寸,将所述量子密钥窗口尺寸的默认值作为解密端量子密钥窗口尺寸,并向所述加密端密钥管理器发出确认消息;
在接收到所述解密端密钥管理器的确认消息后,所述加密端密钥管理器根据所述量子密钥分组尺寸的默认值和所述量子密钥窗口尺寸的默认值,确定从加密端密钥池中按预设次序填充到所述当前加密端量子密钥窗口内的量子密钥分组的数量以及每个量子密钥分组的长度;
根据预设初始序号值,所述加密端密钥管理器对填充到所述当前加密端量子密钥窗口内的量子密钥分组依次进行序号添加操作,得到带序号的量子密钥分组,并将所述加密端量子密钥索引指针指向所述当前加密端量子密钥窗口内序号为特定值的量子密钥分组;
所述解密端密钥管理器根据所述解密端量子密钥分组尺寸和所述解密端量子密钥窗口尺寸进行解密端量子密钥窗口填充操作、解密端量子密钥分组序号添加操作以及解密端量子密钥索引指针初始化操作。
3.根据权利要求1所述的方法,其特征在于,加密应用向所述加密端密钥管理器依次发送量子密钥获取请求,所述加密端密钥管理器,将所述加密端量子密钥索引指针的当前值和当前加密端量子密钥窗口共同确定的加密端量子密钥分组返回给所述加密应用包括:
所述加密端密钥管理器通过检查得到所述加密端量子密钥索引指针的当前值小于或等于所述当前加密端量子密钥窗口中量子密钥分组序号最大值时,所述加密端密钥管理器将所述加密端量子密钥索引指针的当前值所对应序号的量子密钥分组返回给所述加密应用,并将所述加密端量子密钥索引指针的当前值设置为所述当前加密端量子密钥窗口中的下一个量子密钥分组。
4.根据权利要求1所述的方法,其特征在于,所述预定义的量子密钥窗口调整公式由下式确定:
,
其中,表示所述预设的更新时间间隔,/>表示所述当前量子密钥窗口的实际更新时间间隔,/>表示所述当前量子密钥窗口尺寸,/>表示所述更新后的量子密钥窗口尺寸。
5.根据权利要求1所述的方法,其特征在于,所述当前量子密钥窗口的实际更新时间间隔表示上一次量子密钥窗口尺寸更新事件到触发当前量子密钥窗口尺寸更新事件之间的时间间隔;
其中,在所述量子密钥窗口尺寸是第一次更新的情况下,所述当前量子密钥窗口的实际更新时间间隔表示所述量子密钥窗口尺寸初始化事件到触发第一更新事件之间的时间间隔。
6.一种动态调整量子密钥分组尺寸和量子密钥窗口尺寸的系统,其特征在于,包括:
量子密钥填充模块,用于密钥管理器根据量子密钥分组尺寸的默认值和量子密钥窗口尺寸的默认值,将本地密钥池中的量子密钥分组填充到本地当前的量子密钥窗口中,并为填充到所述本地当前的量子密钥窗口内的量子密钥分组添加序号以及初始化本地量子密钥索引指针,其中,所述密钥管理器包括加密端密钥管理器和解密端密钥管理器;
量子密钥分组获取模块,用于所述加密端密钥管理器根据加密应用发送的量子密钥获取请求确定加密端量子密钥索引指针的当前值,并将所述加密端量子密钥索引指针的当前值和当前加密端量子密钥窗口共同确定的加密端量子密钥分组返回给所述加密应用;
动态更新事件触发模块,用于在所述加密端量子密钥索引指针的当前值超过所述当前加密端量子密钥窗口所限定的范围的情况下,所述加密端密钥管理器触发对当前加密端量子密钥分组尺寸和所述当前加密端量子密钥窗口尺寸的动态更新事件;
动态调整更新模块,用于根据预设时间段内量子密钥的生成量和消耗量,所述加密端密钥管理器对所述当前加密端量子密钥分组尺寸进行动态调整更新,并根据预设的更新时间间隔、所述当前加密端量子密钥窗口的实际更新时间间隔和所述当前加密端量子密钥窗口尺寸对所述当前加密端量子密钥窗口尺寸进行动态调整和更新;
双端同步模块,用于所述加密端密钥管理器将更新后的加密端量子密钥分组尺寸和更新后的加密端量子密钥窗口尺寸通告给所述解密端密钥管理器,所述解密端密钥管理器通过更新解密端量子密钥分组尺寸和解密端量子密钥窗口尺寸完成与所述加密端密钥管理器的参数同步,在同步操作完成后,所述密钥管理器将更新后的加密端量子密钥分组填充进更新后的加密端量子密钥窗口内,并进行量子密钥分组的序号添加操作和量子密钥索引指针的更新操作;
其中,根据预设时间段内量子密钥的生成量和消耗量,所述加密端密钥管理器对所述当前加密端量子密钥分组尺寸进行动态调整更新,并根据预设的更新时间间隔、所述当前加密端量子密钥窗口的实际更新时间间隔和所述当前加密端量子密钥窗口尺寸对所述当前加密端量子密钥窗口尺寸进行动态调整更新包括:
所述加密端密钥管理器根据所述当前加密端量子密钥窗口实际更新时间间隔内通信两端之间量子密钥的生成量,计算所述当前加密端量子密钥窗口实际更新时间间隔内加密端量子密钥的平均生成速率;
所述加密端密钥管理器根据所述加密端当前量子密钥窗口实际更新时间间隔内量子密钥的消耗量,计算所述当前加密端量子密钥窗口实际更新时间间隔内加密端量子密钥的平均消耗速率;
在所述加密端量子密钥的平均消耗速率小于或等于所述加密端量子密钥的平均生成速率的情况下,所述加密端密钥管理器将所述当前加密端量子密钥分组尺寸与预设的量子密钥分组尺寸增量相加得到所述更新后的加密端量子密钥分组尺寸;
在所述加密端量子密钥的平均消耗速率大于所述加密端量子密钥的平均生成速率的情况下,所述加密端密钥管理器将所述当前加密端量子密钥分组尺寸减半得到所述更新后的加密端量子密钥分组尺寸;
根据预设的更新时间间隔、所述当前加密端量子密钥窗口的实际更新时间间隔和所述当前加密端量子密钥窗口尺寸,所述加密端密钥管理器利用预定义的量子密钥窗口调整公式对所述当前加密端量子密钥窗口尺寸进行动态调整更新,得到所述更新后的加密端量子密钥窗口尺寸。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410195584.6A CN117792640B (zh) | 2024-02-22 | 2024-02-22 | 动态调整量子密钥分组尺寸和量子密钥窗口尺寸的方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410195584.6A CN117792640B (zh) | 2024-02-22 | 2024-02-22 | 动态调整量子密钥分组尺寸和量子密钥窗口尺寸的方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN117792640A CN117792640A (zh) | 2024-03-29 |
CN117792640B true CN117792640B (zh) | 2024-04-30 |
Family
ID=90380106
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202410195584.6A Active CN117792640B (zh) | 2024-02-22 | 2024-02-22 | 动态调整量子密钥分组尺寸和量子密钥窗口尺寸的方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117792640B (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108242994A (zh) * | 2016-12-26 | 2018-07-03 | 阿里巴巴集团控股有限公司 | 密钥的处理方法和装置 |
KR20210056551A (ko) * | 2019-11-11 | 2021-05-20 | 주식회사 케이티 | 양자 암호키 관리 장치, 방법 및 컴퓨터 프로그램 |
CN115333735A (zh) * | 2022-10-11 | 2022-11-11 | 浙江御安信息技术有限公司 | 一种数据的安全传输方法 |
CN117335987A (zh) * | 2023-11-27 | 2024-01-02 | 中国科学技术大学 | 一种量子密钥分发网络节点间的密钥同步方法 |
-
2024
- 2024-02-22 CN CN202410195584.6A patent/CN117792640B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108242994A (zh) * | 2016-12-26 | 2018-07-03 | 阿里巴巴集团控股有限公司 | 密钥的处理方法和装置 |
KR20210056551A (ko) * | 2019-11-11 | 2021-05-20 | 주식회사 케이티 | 양자 암호키 관리 장치, 방법 및 컴퓨터 프로그램 |
CN115333735A (zh) * | 2022-10-11 | 2022-11-11 | 浙江御安信息技术有限公司 | 一种数据的安全传输方法 |
CN117335987A (zh) * | 2023-11-27 | 2024-01-02 | 中国科学技术大学 | 一种量子密钥分发网络节点间的密钥同步方法 |
Non-Patent Citations (1)
Title |
---|
基于滑动窗口的量子秘钥管理算法;韩家伟;刘衍珩;孙鑫;宋立军;;吉林大学学报(工学版);20160315(02);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN117792640A (zh) | 2024-03-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
AU2014348876B2 (en) | System and method for updating an encryption key across a network | |
US7831825B2 (en) | Packet-based and pseudo-packet based cryptographic communications systems and methods | |
WO2014052972A1 (en) | High accuracy 1588 timestamping over high speed multi lane distribution physical code sublayers | |
US5297208A (en) | Secure file transfer system and method | |
CN110224775B (zh) | 一种时间信息确定的方法、装置及设备 | |
EP1107504A2 (en) | Method of updating encryption keys in a data communication system | |
CN112398651B (zh) | 一种量子保密通信方法、装置、电子设备以及存储介质 | |
US6891952B1 (en) | Dynamic key generation and confidential synchronization of encryption components | |
US20110066856A1 (en) | Communication data freshness confirmation system | |
WO2013172750A1 (en) | Secure paging | |
US11831764B2 (en) | End-to-end double-ratchet encryption with epoch key exchange | |
US8437475B2 (en) | Packet-based and pseudo-packet-based cryptographic synchronization systems and methods | |
CN106230585A (zh) | 一种量子密钥快速同步更新的方法 | |
US20220417015A1 (en) | Key update method and related apparatus | |
CN117792640B (zh) | 动态调整量子密钥分组尺寸和量子密钥窗口尺寸的方法及系统 | |
US7203834B1 (en) | Method of updating encryption keys in a data communication system | |
JPH02121441A (ja) | パケット交換システム及び方法 | |
CN111404659B (zh) | 基于混沌系统的隐私保护通信方法、服务器以及通信系统 | |
CN115567204A (zh) | 一种基于量子密钥的5g模组、通信系统、方法及应用 | |
CN109617676A (zh) | 一种密码同步方法、通信节点 | |
CN115967790A (zh) | 监控系统及监控数据加密传输方法 | |
US6778670B1 (en) | Method and apparatus for encryption and decryption | |
US20100177782A1 (en) | Confidential transmission of data by change of frequency in a telecommunications network | |
CN112188485A (zh) | 一种基于蓝牙通信的加解密方法 | |
CN116743505B (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 |