适合连续变量量子密钥分发的高速秘密协商方法

文档序号:7546241阅读:315来源:国知局
适合连续变量量子密钥分发的高速秘密协商方法
【专利摘要】本发明提供了一种适合连续变量量子密钥分发的高速秘密协商方法,包括:步骤A:变量一维化处理步骤,是指对译码过程中的二维矩阵一维化处理;步骤B:多帧数据并行处理步骤,是指在变量一维化处理的基础上,将多个数据帧并列后实现并行处理;本发明具有如下的有益效果:1、变量一维化处理以及多帧数据并行化处理。其中变量一维化处理是指将校验矩阵、原始信息、译码中间变量等需要用二维矩阵表示的变量使用一维向量表示。多帧数据并行化处理是指在变量一维化处理的基础上对多帧数据同时处理。2、本发明能够大幅度节省运算资源和存储资源,并最终大幅提高译码速度和系统密钥率。
【专利说明】适合连续变量量子密钥分发的高速秘密协商方法

【技术领域】
[0001] 本发明涉及高速秘密协商方法,具体地,涉及适合连续变量量子密钥分发 (CV-QKD,Continuous Variable-Quantum Key Distribution)的高速秘密协商方法,尤其 是通过优化现有的CV-QKD数据协商阶段的LDPC译码算法从而大幅提高协商速率的方法。

【背景技术】
[0002] 在计算机信息技术迅速发展的背景下,信息技术对信息安全性的要求日益增加。 其中,连续变量量子密钥分发因其具有物理的无条件安全性而成为通信技术的一个重要分 支,进而,连续变量量子密钥分发技术引起了广泛关注,因为其既能在物理上保证通信的无 条件安全性,又相比与离散变量量子密钥分发技术在理论上具有更高的通信速率和效率。 目前连续变量量子密钥分发吸引了世界上许多研究机构对其理论和应用技术进行了深入 的研究。
[0003] 然而,CV-QKD系统的主要瓶颈在于数据后处理阶段:一方面数据协商时的协商效 率限制了 CV-QKD系统的通信距离,另一方面由于协商算法计算量巨大而计算缓慢从而限 制了 CV-QKD系统的密钥速率。
[0004] 在连续变量量子密钥分发系统中,由于量子信号十分微弱,在经过长距离的传统 光纤传输后,其信噪比通常处于很低的水平。为了在极低的信噪比环境中从原始信息中提 取密钥,必须采用性能逼近香农限的译码算法。出于这种考虑,人们通常采用低密度奇偶校 验码(LDPC)来进行数据协商。
[0005] 在传统的LDPC码应用中,LDPC具有多种译码方式,如置信转播(BP,Belief Propagation)算法、最小和(Min-Sum BP)算法、归一化最小和(Normalized Min-Sum)算法 以及偏置最小和(Offset Min-Sum)算法。这些算法性能各异,复杂度也不同,BP算法具有 较高的复杂度但性能最佳,而简化的BP算法则通过一些近似操作降低复杂度,但也牺牲了 部分性能。而在CV-QKD系统中,用于协商的LDPC编译码方法与传统LDPC编译码原理并不 完全一样:传统LDPC码在发送端使用生成矩阵在原始信息中增加校验节点,并在译码阶段 根据变量节点和校验节点之间反复的信息传递实现纠错译码;而在CV-QKD系统中,发送端 并不会对原始信息进行编码,即接收端的接收数据各点之间相互独立,并不存在校验节点。 为实现纠错译码功能,发送端还需要发送一串用于校验的校验信息(Syndrome,通常由随机 密钥串与校验矩阵相乘产生)。接收端根据接收到的连续变量,使用BP算法使接受信息的 Syndrome根据发送端的Syndrome进行纠错,并最终提取密钥。
[0006] 尽管编译码原理不同,译码器的译码结构确是类似的,传统LDPC译码是在校验节 点和变量节点之间不断传递信息进而实现纠错,CV-QKD中的LDPC译码也是通过在接收数 据的不同节点之间不断传递信息进而提取密钥,因此译码过程比较类似。
[0007] 在传统的译码方式实现上,对于Η矩阵的运算主要有两种方式:一种是不改变Η矩 阵的结构,每次运算均使用矩阵运算。另一种是先记录Η矩阵中元素" 1"的位置,在运算过 程中只遍历元素"1"的位置。前一种方法实现简单,但是运算量大,因为Η矩阵是稀疏矩 阵,其中元素"1"所占的比例往往小于1%。而后一种方法虽然运算量小,但是每次根据所 记录的元素" 1"的位置来遍历参与运算的其它变量的值引入了更多循环操作,使得算法复 杂度提1?。
[0008] 另一方面,传统的译码方式在译码过程中将Η矩阵和其它中间变量都按照二维矩 阵的形式来处理,两个维度不仅浪费存储空间,也不利于并行计算。
[0009] 为了进一步减少译码过程中不必要的计算量和其它操作,我们将译码过程中的所 有变量都使用一维数组表示,其中Η矩阵用一个一维数组表示其中元素" 1"的位置。进一 步,将译码过程用一维数组实现后,可以很方便地将不同的译码过程并行处理,即:将不同 的列重新组成一个矩阵,其中每一列代表一次译码,从而进一步提高译码速率。


【发明内容】

[0010] 针对现有技术中的缺陷,本发明的目的是提供一种连续变量量子密钥分发系统中 的高速数据协商方法,是一种通过优化现有的CV-QKD系统中数据协商阶段的LDPC译码算 法从而大幅提高协商速率的方法。
[0011] 根据本发明提供的一种适合连续变量量子密钥分发的高速秘密协商方法,包括:
[0012] 步骤A :变量一维化处理步骤;
[0013] 步骤B :多帧数据并行处理步骤;
[0014] 其中:
[0015] 所述变量一维化处理步骤,是指对译码过程中的二维矩阵一维化处理;
[0016] 所述多帧数据并行处理步骤,是指在变量一维化处理的基础上,将多个数据帧并 列后实现并行处理。
[0017] 优选地,所述步骤A包括如下步骤:
[0018] 步骤A1 :在译码开始前对校验矩阵H、译码初始信息L(Ci)、校验子Syn进行一维化 处理;
[0019] 步骤A2 :译码(指传统译码方法)中所涉及的矩阵运算均通过一维的下标调用实 现;
[0020] 其中,所述下标调用的过程为:根据当前运算所对应的原二维矩阵的行、列位置取 出对应的操作数,并将运算结果根据下标值保存在一维向量的相应位置。
[0021] 所述步骤B包括如下步骤:
[0022] 步骤B1 :通过步骤A -维化处理后通过将不同数据帧并排来实现并行译码,以提 高译码速度。
[0023] 优选地,在所述矩阵运算过程中的下标调用无需循环判断来确定位置,而是通过 顺序存储使二维矩阵中的行列位置与一维数组中的保存位置一一对应。
[0024] 优选地,通过各帧并排实现的并行计算为单线程并行计算,而非利用多线程实现 的并行计算。
[0025] 优选地,所述步骤A2包括如下步骤:
[0026] 步骤A201 :首先将Η矩阵向量化,使用一维向量来记录Η矩阵中元素1的位置,其 中,一维向量第i位的数字k表示从Η矩阵中的左上角开始按列顺序计数,数到第i个元素 1时计数为k ;同时用另外两个一维向量R和C分别记录Η矩阵中对应的第i个元素1所在 的行和列;
[0027] 步骤A202 :对于译码过程中所涉及的中间变量也用一维向量表示,其中,由于事 先已经记录Η矩阵中每个元素1的行列位置,这样在中间变量运算时,根据此次运算是与Η 矩阵行相关的运算或者是与Η矩阵列相关的运算而分别调用坐标向量R和C进行运算。
[0028] 优选地,为了实现多帧数据并行处理,所述适合连续变量量子密钥分发的高速秘 密协商方法包括如下步骤:
[0029] 首先将译码初始信息L(Ci)用一维向量表示(假设用行向量表示);
[0030] 在开始译码前,连续读取S帧L (Ci)数据并按行并列,组成一个尺寸为S*N的矩阵, N为每帧L(Ci)数据的长度;
[0031] 在译码过程中,由于Η矩阵的结构对于每次译码过程是相同的,对一维向量第i位 的操作能够扩展到对尺寸为S*N的矩阵第i列的操作,即每一个操作的操作对象由单帧译 码时的一个元素变成多帧译码时的同一列元素;其中,Η矩阵是指LDPC码的校验矩阵。
[0032] 其次,在译码过程中,需要对每一个中间变量进行相同操作,即都使用S行的矩阵 表示,每次操作也都以列为最小单位,由此即可实现多帧并行的译码操作。
[0033] 与现有技术相比,本发明具有如下的有益效果:
[0034] 1、变量一维化处理以及多帧数据并行化处理。其中变量一维化处理是指将校验矩 阵、原始信息、译码中间变量等需要用二维矩阵表示的变量使用一维向量表示。多帧数据并 行化处理是指在变量一维化处理的基础上对多帧数据同时处理。
[0035] 2、本发明能够大幅度节省运算资源和存储资源,并最终大幅提高译码速度和系统 密钥率。

【专利附图】

【附图说明】
[0036] 通过阅读参照以下附图对非限制性实施例所作的详细描述,本发明的其它特征、 目的和优点将会变得更明显:
[0037] 图1为传统译码图。
[0038] 图2为一维化译码流程图。
[0039] 图3为一维化S帧并行译码流程图。

【具体实施方式】
[0040] 下面结合具体实施例对本发明进行详细说明。以下实施例将有助于本领域的技术 人员进一步理解本发明,但不以任何形式限制本发明。应当指出的是,对本领域的普通技术 人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进。这些都属于本发明 的保护范围。
[0041] 本发明通过调整CV-QKD系统中数据后处理阶段LDPC译码器的译码结构实现了高 速的LDPC译码,从而提高了系统的密钥率,在使用GPU (Graphic Processing Unit)做运算 的情况下能够达到25Mbit/s的密钥率,所使用的译码算法为BP(Belief poporgation,置 信传播)算法。
[0042] 为实现上述目的,本发明采用的技术方案如下:
[0043] 首先将Η矩阵向量化,使用一维向量来记录Η矩阵中元素" 1"的位置,其中,一维 向量第i位的数字k表示从Η矩阵中的左上角开始按列顺序计数,数到第i个元素" 1"时 计数为k。因此表示Η矩阵的一维数组中数字是递增的。同时用另外两个一维向量R和C 记录Η矩阵中对应的第i个"1"所在的行和列,如假设一个码率R = 0.5的(6, 3) LDPC码 的Η矩阵为:
[0044]

【权利要求】
1. 一种适合连续变量量子密钥分发的高速秘密协商方法,其特征在于,包括: 步骤A :变量一维化处理步骤; 步骤B :多帧数据并行处理步骤; 其中: 所述变量一维化处理步骤,是指对译码过程中的二维矩阵一维化处理; 所述多帧数据并行处理步骤,是指在变量一维化处理的基础上,将多个数据帧并列后 实现并行处理。
2. 根据权利要求1所述的适合连续变量量子密钥分发的高速秘密协商方法,其特征在 于,所述步骤A包括如下步骤: 步骤A1 :在译码开始前对校验矩阵H、译码初始信息UQ)、校验子Syn进行一维化处 理; 步骤A2 :译码中所涉及的矩阵运算均通过一维的下标调用实现; 其中,所述下标调用的过程为:根据当前运算所对应的原二维矩阵的行、列位置取出对 应的操作数,并将运算结果根据下标值保存在一维向量的相应位置; 所述步骤B包括如下步骤: 步骤B1 :通过步骤A-维化处理后通过将不同数据帧并排来实现并行译码,以提高译 码速度。
3. 根据权利要求2所述的适合连续变量量子密钥分发的高速秘密协商方法,其特征在 于,在所述矩阵运算过程中的下标调用无需利用循环判断来确定位置,而是通过顺序存储 使二维矩阵中的行列位置与一维数组中的保存位置一一对应。
4. 根据权利要求3所述的适合连续变量量子密钥分发的高速秘密协商方法,其特征在 于,通过各帧并排实现的并行计算为单线程并行计算,而非利用多线程实现的并行计算。
5. 根据权利要求3所述的适合连续变量量子密钥分发的高速秘密协商方法,其特征在 于,所述步骤A2包括如下步骤: 步骤A201 :首先将Η矩阵向量化,使用一维向量来记录Η矩阵中元素1的位置,其中,一 维向量第i位的数字k表示从Η矩阵中的左上角开始按列顺序计数,数到第i个元素1时 计数为k ;同时用另外两个一维向量R和C分别记录Η矩阵中对应的第i个元素1所在的 行和列;其中,Η矩阵是指LDPC码的校验矩阵; 步骤Α202 :对于译码过程中所涉及的中间变量也用一维向量表示,其中,由于事先已 经记录Η矩阵中每个元素1的行列位置,这样在中间变量运算时,根据此次运算是与Η矩阵 行相关的运算或者是与Η矩阵列相关的运算而分别调用坐标向量R和C进行运算。
6. 根据权利要求1所述的适合连续变量量子密钥分发的高速秘密协商方法,其特征在 于,为了实现多帧数据并行处理,所述适合连续变量量子密钥分发的高速秘密协商方法包 括如下步骤: 首先将译码初始信息UQ)用一维向量表示; 在开始译码前,连续读取S帧L (CJ数据并按行并列,组成一个尺寸为S*N的矩阵,N为 每帧UQ)数据的长度; 在译码过程中,由于Η矩阵的结构对于每次译码过程是相同的,对一维向量第i位的操 作能够扩展到对尺寸为S*N的矩阵第i列的操作,即每一个操作的操作对象由单帧译码时 的一个元素变成多帧译码时的同一列元素;其中,Η矩阵是指LDPC码的校验矩阵; 其次,在译码过程中,需要对每一个中间变量进行相同操作,即都使用S行的矩阵表 示,每次操作也都以列为最小单位,由此即可实现多帧并行的译码操作。
【文档编号】H03M13/11GK104124980SQ201410338823
【公开日】2014年10月29日 申请日期:2014年7月16日 优先权日:2014年7月16日
【发明者】林大凯, 黄端, 刘友明, 汪超, 黄鹏, 曾贵华 申请人:上海交通大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1