一种用于量子保密通信的码本校验方法

文档序号:7774983阅读:249来源:国知局
一种用于量子保密通信的码本校验方法
【专利摘要】本发明公开了一种用于量子保密通信的码本校验方法,该方法通过对ALC和BOB得到的生成码本的原始信息进行多次筛选,包括码本的多次分组运算和比对以及重排,获得可信度较高的码本,之后再对得到的筛选码本进行整体运算,获得一个监督码,若双方监督码比对一致则此时的码本为可靠码本,否则码本为不可靠,直接丢弃,重新生成下一组码本。使用本发明,通信双方不需要公开一段密钥就可以得到安全可靠的密码本,并具有稳定高效的特点。可用于解决量子保密通信中可信码本的获取问题,提升量子通信系统的加密可靠传输特性,且具有高效率和高稳定性的特点。
【专利说明】一种用于量子保密通信的码本校验方法
【技术领域】
[0001]本发明涉及量子保密通信【技术领域】,具体讲的是一种在量子密钥分发(QKD)系统中,对于由量子信道产生的初始密钥,通过分组运算对其进行纠错和校验,最终得到可靠的密码本的方法。
【背景技术】
[0002]科学家们利用“海森堡测不准原理”和“量子不可克隆原理”提出了量子密码术的概念。量子密码术以单量子态作为信息载体,由于单量子态无法被克隆,因此信息的合法接收者可以从量子态的改变得知信道中存在窃听,从而确保信息安全。从上个世纪八十年代至今,量子保密通信已经历了近30年发展,各种实用化设备和商用样机相继推出。目前对于初始密钥的后续处理还没有完全统一的标准,常规的做法是在纠错后公布一段密钥,双方确认密钥一致后再进行加密。
[0003]这种方式的弊端是用于校验的密钥公布之后即不能再被使用,只能丢弃。这样就降低了密钥的使用效率,此外在一些极端情况下,即便公布的部分一致也不能保证剩下的
密钥一致。

【发明内容】

[0004]本发明的目的是针对现有技术的不足而提供的一种用于量子保密通信的新型码本校验方法,它在通信双方(定义为BOB和ALC)得到初始码本后对其进行校验运算,丢弃错误的码本,得到可靠的码本。使用该方法,通信双方不需要公开一段密钥就可以得到安全可靠的密码本,并具有稳定高效的特点。
[0005]本发明的目的是这样实现的:
一种用于量子保密通信的码本校验方法,该方法包括以下具体步骤:
a、在收发两端配置现场可编程门阵列(FPGA)逻辑芯片,通过FPGA建立起经典信道的同步,控制ALC和BOB得到生成码本的原始信息;
b、码本筛选:先对各自的原始信息按双方约定的规则I进行分组运算,获得的分组运算结果相互比对,筛选出正确的码本信息;再按双方约定的规则2进行重新排列,此为一次码本筛选,如此反复K次,则完成码本筛选,得到可信度高的码本;
C、码本检测:对步骤b得到的筛选码本再次按照双方约定的规则3整体运算,获得一个监督码,若双方监督码比对一致则此时的码本为可靠码本,否则码本为不可靠,直接丢弃,重新生成下一组码本。
[0006]所述双方约定的规则I进行分组运算包括分组和运算两步骤:
i)分组规则如下:
A)相邻的a个bit分为I组,a>l的自然数;共分为b组,b≥I的自然数;重新排列b组序列如下:
第 I 组的序列为:{{bitO, bitl,...,bit (a-1)};第 2 组的序列为:{{bita, bit (a+1),..., bit (2a_l)};
第 3 组的序列为:{{bit2a, bit (2a+l),..., bit (3a_l)};
第 b 组的序列为:{{bit (a*b_a), bit (a*b_a+l),..., bit (a*b_l)};
B)偶数相邻的a个bit分为一组,奇数相邻的a个bit分为一组,a>l的自然数;共分为2b组,b≥2的自然数;重新排列后的2b组序列:
第 I 组的序列为:{{bitO, bit2,..., bit (2a_2)}
第 2 组的序列为:{bitl, bit3,..., bit (2a_l)}
第 3 组的序列为:{{bit2a, bit (2a+2),..., bit (4a_2)}
第 4 组的序列为:{bit (2a+l), bit (2a+3),..., bit (4a_l)}
第 5 组的序列为:{{bit4a, bit (4a+2),..., bit (6a_2)}
第 6 组的序列为:{bit (4a+l), bit (4a+3),..., bit (6a_l)}
第 2b_l 组的序列为:{{bit (2a*b_2a), bit (2a*b_2a+2),..., bit (2a*b_2)}
第 2b 组的序列为:{bit (2a*b_2a+l), bit (2a*b_2a+3),..., bit (2a*b_l)}。
[0007]ii)运算规则如下:
A)分为一组的a个bit进行相互异或,bitO^...^bita ;
B)分为一组的a个bit中0/1个数统计;
C)随机拟定一个a-bit地址位的表格,然后以分为一组的a-bit信息为地址进行查
表;
D)按照CRC4、CRC8、CRC16、CRC32多项式进行运算。
[0008]所述双方约定的规则2进行重新排列是:
A)筛选后的所有信息bit(Tbita首尾倒置,则重排之后为bita~bit0;
B)相邻的a个bit高低位交互,a>l的自然数;共分为e次交互,重排后的序列为:
第 I 次交互的序列为:{bit (a-1),bit (a_2),...,bitl, bitO}
第 2 次交互的序列为:{bit (2a-l), bit (2a_2),...bit (a+1), bita}
第 3 次交互的序列为:{bit (3a-l), bit (3a_2),...bit (2a+l), bit2a}
第 e 次交互的序列为:{bit (e*a_l), bit (e*a_2),...bit (e*a_a+l), bit (e*a_a)};
C)偶数相邻的a个bit分为一组,奇数相邻的a个bit分为一组,a>l的自然数;共分为2b组,b≥2的自然数;组成后的完整序列为:
第 I 组的序列为:{{bitO, bit2,..., bit (2a_2)}
第 2 组的序列为:{bitl, bit3,..., bit (2a_l)}
第 3 组的序列为:{{bit2a, bit (2a+2),..., bit (4a_2)}
第 4 组的序列为:{bit (2a+l), bit (2a+3),..., bit (4a_l)}
第 5 组的序列为:{{bit4a, bit (4a+2),..., bit (6a_2)}
第 6 组的序列为:{bit (4a+l), bit (4a+3),..., bit (6a_l)}
第 2b_l 组的序列为:{{bit (2a*b_2a), bit (2a*b_2a+2),..., bit (2a*b_2)}
第 2b 组的序列为:{bit (2a*b_2a+l), bit (2a*b_2a+3),..., bit (2a*b_l)};
D)相邻的a个bit分为一组,a>l的自然数;共可分为b个小组,b≥1的自然数;然后再把c个小组分为一个大组,共可分d个大组,d=b/c ;不够一个大组的数据直接丢弃;之后再分别把一个大组中的c ≤b个小组间交叉重排,如此反复,即得到最终的序列;每个大组重排后的交叉序列为:
第 1 组为:{bitO, bitb, bit2b..., bit (ab_b)}
第 2 组为:{bitl, bit (b+1), bit (2b+l)..., bit (ab-b+1)}
第 3 组为:{bit2, bit (b+2), bit (2b+2)..., bit (ab-b+2)}
第 c 组为:{bit (c_l), bit (2c_l), bit (3c_l)..., bit (ac_l)}。
[0009]所述双方约定的规则3整体运算如下:
A)对所有筛选后的码本进行异或运算产生监督码或者按照CRC4、CRC8、CRC16、CRC32多项式进行运算产生监督码。
[0010]本发明解决了在生成码本过程中,码本被截获或者泄露的风险,实现了通信双方密钥的独有性,从而保证了量子加密系统中加密系统的可靠传输。
【专利附图】

【附图说明】
[0011]图1为码本生成流程图;
图2为本发明流程图。
【具体实施方式】
[0012]以下结合附图通过实施例对本发明特征及其它相关特征作进一步详细说明,以便于同行业技术人员的理解:
参阅图1,BOB和ALC成码部分分为逻辑层和物理层。逻辑层定义了成码的协议和格式,负责成码的整个过程,其可分为码本筛选和码本检测两部分。物理层描述了设备之间的接口协议,例如包传输装置,流量控制,电特性以及低级错误管理等。虚线表示的逻辑通道仅表示BOB与ALC逻辑层之间的虚拟通道,实际数据传输需要经过物理层通过光纤通道传输。
[0013]参阅图2,本发明应用于逻辑层,其具体流程如图2所示。
[0014]逻辑层分为码本筛选和码本检测两部分。码本筛选完成从码本的原始信息中得到初始码本。码本检测是把初始码本中不可靠的码本丢弃,得到最终可靠的码本,供加密使用。
[0015]具体流程如下:
码本筛选:码本筛选具体又包括第一次分组运算、第二次分组运算、错误码本丢弃以及码本重排。
[0016]第一次分组运算:Β0Β和ALC分别把各自码本原始信息按照a个bit —组,进行约定的多项式运算,运算结果进行比对。
[0017]第二次分组运算:Β0Β和ALC分别把第一次分组运算结果比对不一致abit信息进行第二次分组,每组Nbit (N<a),再进行约定的多项式运算,运算结果第二次比对。
[0018]错误码本丢弃:把第二次分组运算结果比对不一致的信息直接丢弃,如果第一、二次分组运算没有达到K次,则把剩余信息送给码本重排模块,否则送给码本检测模块。
[0019]码本重排:将码本重新排列,再返回第一次分组运算以再次筛选码本。
[0020]码本检测:码本检测 的基本思想是利用线性编码理论,在两端根据各自的初始码本,分别产生一个校验用的监督码r位,然后互发到对端进行校验,以确定两边的初始码本是否一致。
实施例
[0021]a、在收发两端配置现场可编程门阵列(FPGA)逻辑芯片(EP4CGX50DF27C8),通过FPGA建立起经典信道的同步,控制ALC和BOB得到生成码本的原始信息;
b、码本筛选:先对各自的原始信息按双方约定进行分组运算:
i)分组如下:
A)相邻的8个bit为一个组,一共3个组,则 第 I 组序列:{bit(Tbit7}
第2组序列:{bit8~bit 15}
第3组序列:{bitl6~bit23};
B)偶数相邻的4个bit为一组,奇数相邻的4个bit分为一组,共分8组,则:
第 I 组序列:{bitO, bit2, bit4, bit6}
第 2 组序列:{bitl, bit3, bit5, bit7}
第 7 组序列:{bit24, bit26, bit28, bit30}
第 8 组序列:{bit25, bit27, bit29, bit31}}。
[0022]ii )运算如下:
A)分为一组的8个bit进行相互异或,bit0~...~bit7 ;
B)分为一组的8个bit(10001101)中O有4个,I有4个;
C)随机拟定一个2-bit地址位的表格,然后以分为一组的2-bit信息为地址进行查
表;
【权利要求】
1.一种用于量子保密通信的码本校验方法,其特征在于该方法包括以下具体步骤: a、在收发两端配置现场可编程门阵列-FPGA逻辑芯片,通过FPGA建立起经典信道的同步,控制ALC和BOB得到生成码本的原始信息; b、码本筛选:先对各自的原始信息按双方约定的规则I进行分组运算,获得的分组运算结果相互比对,筛选出正确的码本信息;再按双方约定的规则2进行重新排列,此为一次码本筛选,如此反复K次,则完成码本筛选,得到可信度高的码本; C、码本检测:对步骤b得到的筛选码本再次按照双方约定的规则3整体运算,获得一个监督码,若双方监督码比对一致则此时的码本为可靠码本,否则码本为不可靠,直接丢弃,重新生成下一组码本。
2.根据权利要求1所述的码本校验方法,其特征在于所述双方约定的规则I进行分组运算包括分组和运算两步骤: i)分组规则如下: A)相邻的a个bit分为I组,a>l的自然数;共分为b组,b≥1的自然数;重新排列b组序列如下:
第 I 组的序列为:{{bitO, bitl,...,bit (a-1)};
第 2 组的序列为:{{bita, bit (a+1),..., bit (2a_l)};
第 3 组的序列为:{{bit2a, bit (2a+l),..., bit (3a_l)};
第 b 组的序列为:{{bit (a*b_a), bit (a*b_a+l),..., bit (a*b_l)}; B)偶数相邻的a个bit分为一组,奇数相邻的a个bit分为一组,a>l的自然数;共分为2b组,b≥2的自然数;重新排列后的2b组序列:
第 I 组的序列为:{{bitO, bit2,..., bit (2a_2)}
第 2 组的序列为:{bitl, bit3,..., bit (2a_l)}
第 3 组的序列为:{{bit2a, bit (2a+2),..., bit (4a_2)}
第 4 组的序列为:{bit (2a+l), bit (2a+3),..., bit (4a_l)}
第 5 组的序列为:{{bit4a, bit (4a+2),..., bit (6a_2)}
第 6 组的序列为:{bit (4a+l), bit (4a+3),..., bit (6a_l)}
第 2b_l 组的序列为:{{bit (2a*b_2a), bit (2a*b_2a+2),..., bit (2a*b_2)}
第 2b 组的序列为:{bit (2a*b_2a+l), bit (2a*b_2a+3),..., bit (2a*b_l)}; ii)运算规则如下: A)分为一组的a个bit进行相互异或,bitO"..."bita ; B)分为一组的a个bit中0/1个数统计; C)随机拟定一个a-bit地址位的表格,然后以分为一组的a-bit信息为地址进行查表; D)按照CRC4、CRC8、CR C16或CRC32多项式进行运算。
3.根据权利要求1所述的码本校验方法,其特征在于所述双方约定的规则2进行重新排列是: 筛选后的所有信息bit(Tbita首尾倒置,则重排之后为bita~bit0 ;相邻的a个bit高低位交互,a>l的自然数;共分为e次交互,重排后的序列为: 第 I 次交互的序列为:{bit (a-1),bit (a_2),...,bitl, bitO}
第 2 次交互的序列为:{bit (2a-l), bit (2a_2),...bit (a+1), bita}
第 3 次交互的序列为:{bit (3a-l), bit (3a_2),...bit (2a+l), bit2a}
第 e 次交互的序列为:{bit (e*a_l), bit (e*a_2),...bit (e*a_a+l), bit (e*a_a)}; C)偶数相邻的a个bit分为一组,奇数相邻的a个bit分为一组,a>l的自然数;共分为2b组,b≥2的自然数;组成后的完整序列为:
第 I 组的序列为:{{bitO, bit2,..., bit (2a_2)}
第 2 组的序列为:{bitl, bit3,..., bit (2a_l)}
第 3 组的序列为:{{bit2a, bit (2a+2),..., bit (4a_2)}
第 4 组的序列为:{bit (2a+l), bit (2a+3),..., bit (4a_l)}
第 5 组的序列为:{{bit4a, bit (4a+2),..., bit (6a_2)}
第 6 组的序列为:{bit (4a+l), bit (4a+3),..., bit (6a_l)}
第 2b_l 组的序列为:{{bit (2a*b_2a), bit (2a*b_2a+2),..., bit (2a*b_2)}
第 2b 组的序列为:{bit (2a*b_2a+l), bit (2a*b_2a+3),..., bit (2a*b_l)}; D)相邻的a个bit分为一组,a>l的自然数;共可分为b个小组,b≥I的自然数;然后再把c个小组分为一个大组,共可分d个大组,d=b/c ;不够一个大组的数据直接丢弃;之后再分别把一个大组中的c≤ b个小组间交叉重排,如此反复,即得到最终的序列;每个大组重排后的交叉序列为:
第 I 组为:{bitO, bitb, bit2b..., bit (ab_b)}
第 2 组为:{bitl, bit (b+1), bit (2b+l)..., bit (ab-b+1)}
第 3 组为:{bit2, bit (b+2), bit (2b+2)..., bit (ab-b+2)}
第 c 组为:{bit (c_l), bit (2c_l), bit (3c_l)..., bit (ac_l)}。
4.根据权利要求1所述的码本校验方法,其特征在于所述双方约定的规则3整体运算如下: 对所有筛选后的码本进行异或运算产生监督码或者按照CRC4、CRC8、CRC16或CRC32多项式进行运算产生监督码。
【文档编号】H04L9/08GK103532705SQ201310523360
【公开日】2014年1月22日 申请日期:2013年10月30日 优先权日:2013年10月30日
【发明者】曾卓西, 陈杰, 张帅, 曾和平 申请人:上海朗研光电科技有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1