首页> 中国专利> 基于无线信道特征的对称密钥生成与分发的密钥协商方法

基于无线信道特征的对称密钥生成与分发的密钥协商方法

摘要

本发明涉及基于无线信道特征的对称密钥生成与分发的密钥协商方法,该方法首先利用PEG算法生成校验矩阵并对通信双方的密钥信息进行编码,将通信方A的编码结果发给通信方B,对两个编码结果进行比较,如果两个码相等,则协商成功并结束处理,如果两个码不相等,则进入首轮纠错处理,进行码更新和码比较,如果经过多次更新后两个码相同则协商成功并结束处理,如果经过多次更新后两个码仍不相同则进入第二轮纠错,如果经过多次更新后两个码相同则协商成功并结束处理,如果经过多次更新后两个码仍不相同则协商失败并结束处理,该方法在保证通信安全的情况下,实现高误码率情况下基于无线信道特征的对称密钥生成与分发的密钥协商。

著录项

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2018-12-21

    授权

    授权

  • 2016-03-30

    实质审查的生效 IPC(主分类):H04L9/08 申请日:20140829

    实质审查的生效

  • 2016-03-02

    公开

    公开

说明书

技术领域

本发明涉及信息安全领域,特别是涉及基于无线信道特征的对称密钥生 成与分发的密钥协商方法,适用于现有无线通信系统的对称密钥生成与分发 机制。

背景技术

密钥协商是指通过在经典安全信道上交换一定的信息量来消除原始密 钥中的错误。在经典信道上交换的信息可能泄露给窃听者,所以要求交换的 信息尽可能的少。常见的密钥协商方法有BBBSS、Cascade、Winnow、LDPC 算法等。这些算法性能各有不同。BBBSS算法仅在低误码率(误码率为3% 以下)情况下有较高的效率,且通信双方要进行多轮信息交互,算法迭代次 数非常多。Cascade算法对BBBSS算法进行了改进,算法的迭代次数大幅 减少,但仍仅适用于多轮信息交互、误码率较低(误码率为5%以下)的情 况。Winnow算法迭代次数很低,容易实现,但是该算法在每轮迭代中泄露 大量奇偶校验码等信息,且不能适应误码率较高(误码率大于7%)的情况。 LDPC算法的主要优点在于只需要一次数据交互,大大减小了信息泄露,但 仍不能适应误码率较高(误码率大于7%)的情况。综上所述,常见的密钥 协商算法所面临主要问题是在误码率较高(误码率为7%)的情况下性能不 佳。并且当前算法大多采用将错误位所在的块丢弃,这就造成了大量的密钥 浪费。

发明内容

本发明的目的在于克服现有技术的不足,提供基于无线信道特征的对称密 钥生成与分发的密钥协商方法,只在通信双方间进行一次信息交互,在保证通 信安全的情况下,实现高误码率情况下基于无线信道特征的对称密钥生成与分 发的密钥协商。

本发明目的通过如下技术方案予以实现:

基于无线信道特征的对称密钥生成与分发的密钥协商方法,包括以下步 骤:

(1)、确定通信双方的密钥信息,其中通信方A的密钥信息为XA,通 信方B的密钥信息为XB,所述密钥信息XA、XB的长度为N,其中N为正 整数;

(2)、利用PEG算法生成N×Q维低密度奇偶校验矩阵H,其中Q为 正整数且Q<N;

(3)、通信方A根据密钥信息XA和按照步骤(2)得到的校验矩阵H 编码得到码CA,其中CA=XA×H;通信方B根据密钥信息XB和按照步骤 (2)得到的校验矩阵H编码得到码CB,其中CB=XB×H;

(4)、通信方A发送码CA到通信方B,通信方B判断码CA和码CB 是否相等,如果CA=CB,则进入步骤(9),如果CA≠CB,则进入步骤(5), 并设定更新次数R1、R2且初始化为R1=0、R2=0;

(5)、进行首轮纠错,具体纠错过程为:

(a)、查找CA码和CB码数值相同的位置,通过查找得到码CA和码 CB的第w1位、第w2位、…、第wm位的数值相等,m为CA码和CB码 中数值相等的位置个数,则在校验矩阵H中抽取第w1列、第w2列、…、第 wm列数据,并将所述抽取得到的m列数据进行列相加运算得到N×1维向量 T;

(b)、在步骤(a)的得到向量T中查找数值为“0”的位置,其中, 如果通过查找得到向量T中第c1个、第c2个、…、第cn个数据的数值为“0”, n为向量T中数值为“0”的数据个数,则将通信方B的密钥信息XB中的第 c1个、第c2个、…、第cn个数据置反,得到更新后的密钥信息XB,再根据 CB=XB×H得到更新后的码CB,并将更新次数R1加1,即R1=R1+1;

(6)、比较步骤(5)更新得到的码CB和步骤(4)中通信方A发送 给通信方B的码CA:

如果CA=CB,则进入步骤(9);

如果CA≠CB且更新次数R1小于系统设定的更新次数门限值Υ,则返 回步骤(5);

如果CA≠CB且更新次数R1等于系统设定的更新次数门限值Υ,则进 入步骤(7);

(7)、进行第二轮纠错,具体实现过程如下:

(a)、寻找码CA和码CB数值相同的位置,如果码CA和码CB的第 e1位、第e2位、…、第eq位的数值相等,q为CA和CB中数值相等的位 置个数,则在校验矩阵H中抽取第e1列、第e2列、…、第eq列数据,并将 所述抽取得到的q列数据进行列相加运算得到N×1维向量G;

(b)、在步骤(a)得到向量G中,查找数值为“1”的位置,如果查 找结果显示在向量G中第d1个、第d2个、…、第dp个数据的数值为“1”, p为向量G中数值为“1”的数据个数,则将密钥信息XB中的第d1个、第 d2个、…、第dp个数据置反,得到更新后的密钥信息XB,再根据CB=XB× H的得到更新码CB,并将更新次数R2加1,即R2=R2+1;

(8)、比较步骤(7)更新得到的码CB和步骤(4)通信方A发送给 通信方B的码CA:

如果CA=CB,则进入步骤(9);

如果CA≠CB且更新次数R2小于系统设定的更新次数门限β,则返回 步骤(7);

如果CA≠CB且更新次数R2等于系统设定的更新次数门限β,则进入 步骤(10);

(9)、判定协商成功并进入步骤(11);

(10)、判定协商失败并进入步骤(11);

(11)、结束处理。

在上述的基于无线信道特征的对称密钥生成与分发的密钥协商方法中, 在步骤(1)中,密钥信息XA、XB的长度N的取值与密钥的保密强度成正 比,即N越大密钥信息的保密度越强;

在上述的基于无线信道特征的对称密钥生成与分发的密钥协商方法中, 在步骤(6)中,首轮纠错的更新次数门限值Υ根据系统的误码率、密钥协 商失败率和处理时间上限值设定;

在上述的基于无线信道特征的对称密钥生成与分发的密钥协商方法中, 在步骤(8)中,第二轮纠错的更新次数门限值β根据系统的误码率、密钥 协商失败率和处理时间上限值设定。

本发明与现有技术相比具有如下有益效果:

(1)本发明提出的密钥协商算法,利用PEG算法生成低密度奇偶校验 矩阵H对密钥信息进行编码,通过对通信双方的编码结果进行比较,判定 协商结果,如果协商不成功可以经过纠错处理对其中一个通信方的密钥信息 进行纠正,并可根据纠错结果进行有限次反复操作,并有效降低密钥协商失 败率,又可以避免处理过程中出现死循环;

(2)本发明提出的密钥协商方法采用编码、一次交互、两轮纠错处理, 在系统误码率为10%时,仍能确保高效率的密钥协商处理;

(3)本发明所提出的密钥协商算法,提高了通信双方的信息保密性, 该算法仅需要通信双方进行一次信息交互,避免了传统BBBSS、Cascade、 Winnow等算法需要多次信息交互的问题,有效提高了密钥协商效率;

(4)本发明所提出的密钥协商算法,可以修正通信双方中信息不一致 位,而非丢弃错误块或错误位,因此提高了密钥生成效率。

附图说明

图1为采用本发明的密钥协商方法的基于无线信道特征的对称密钥生 成与分发系统的组成框图;

图2为本发明的密钥协商方法的处理框图;

图3为本发明的密钥协商方法的实现流程图。

具体实施方式

下面结合附图和具体实施例对本发明作进一步的详细描述:

基于无线信道特征的对称密钥生成与分发系统的组成框图如图1所示,由该 图得知系统包括信道扫描、信道特征检测、时序瞄齐、信息量化、信息协商、 保密增强和加解密七部分。本发明提供了一种实现信息协商的密钥协商方法, 密钥协商的目的是修正通信双方密钥信息中不一致的信息位,使通信双方持有 的密钥信息严格一致。

本发明的密钥协商方法的处理框图如图2所示,对应的具体处理流程图 如图3所示,由图中可以看出,本发明的密钥协商方法通过以下步骤实现:

(1)、确定通信双方的密钥信息,其中通信方A的密钥信息为XA,通 信方B的密钥信息为XB,所述密钥信息XA、XB的长度为N,其中N为正 整数且N的值越大,密钥信息的保密度越高,单系统处理的计算量越大;

(2)、利用PEG算法生成N×Q维低密度奇偶校验矩阵H,其中Q为 正整数且Q<N;

根据该步骤得到的校验矩阵H的列重≥2、行重>0,其中列重为矩阵每 列中数值为1的数据个数,行重为矩阵每行中数值为1的数据个数。

例如,在N=100,Q=80时,校验矩阵H的前44列的列重为2,第45 列~第47列的列重为3,第48列~第80列的列重为4,且校验矩阵H的所 有行重均大于0。

(3)、通信方A根据密钥信息XA和按照步骤(2)得到的校验矩阵H 编码得到码CA,其中CA=XA×H;通信方B根据密钥信息XB和按照步骤 (2)得到的校验矩阵H编码得到码CB,其中CB=XB×H;通过该步骤的 编码可以增加密钥信息的保密度;

(4)、通信方A发送码CA到通信方B,通信方B判断码CA和码CB 是否相等,如果CA=CB,则进入步骤(9),如果CA≠CB,则进入步骤(5), 并设定更新次数R1、R2且初始化为R1=0、R2=0;

(5)、进行首轮纠错,具体纠错过程为:

(a)、查找CA码和CB码数值相同的位置,其中,如果码CA和码 CB的第w1位、第w2位、…、第wm位的数值相等,m为CA和CB中数 值相等的位置个数,则在校验矩阵H中抽取第w1列、第w2列、…、第wm列数据,将抽取得到的m列数据进行列相加运算得到N×1维向量T,即如 果hw1、hw2、…、hwm分别为校验矩阵H的第w1列、第w2列、…、第wm列数据,则向量T=hw1+hw2+hw3+…+hwm

(b)、因为校验矩阵H的列重≥2,所以向量T中数值为“0”或“1” 的数据所在位置,就是密钥信息XB与密钥信息XA中不相等数据所在位置, 因此首轮纠错中,在步骤(a)得到的向量T中查找数值为“0”的位置, 其中,如果在向量T中第c1个、第c2个、…、第cn个数据的数值为“0”, n为向量T中数值为“0”的数据个数,则将通信方B的密钥信息XB中的第 c1个、第c2个、…、第cn个数据置反,即如果密钥信息XB第c1个数据为 “1”,则将密钥信息XB第c1个数据更新为“0”,如果密钥信息XB第c1个数据为“0”,则将密钥信息XB第c1个数据更新为“1”,同理,完成向 量T的第c2个、…、第cn个数据置反操作,得到更新后的密钥信息XB,再 根据CB=XB×H得到更新后的码CB,并将更新次数R1加1,即R1=R1+1;

(6)、比较步骤(5)更新得到的码CB和步骤(4)通信方A发送给 通信方B的码CA:

如果CA=CB,则进入步骤(9);

如果CA≠CB且更新次数R1小于系统设定的更新次数门限值Υ,则返 回步骤(5);

如果CA≠CB且更新次数R1等于系统设定的更新次数门限值Υ,则进 入步骤(7);

其中,首轮纠错中更新次数门限值Υ是根据系统的误码率、密钥协商失 败率和处理时间上限值的要求设定的,即可以避免处理进入死循环,又可以 尽可能的对密钥信息XB进行纠正,使其与密钥信息XA一致,从而实现在系 统高误码率条件下,有效降低密钥协商失败率。

(7)、进行第二轮纠错,具体实现过程如下:

(a)、寻找码CA和码CB数值相同的位置,如果码CA和码CB的第 e1位、第e2位、…、第eq位的数值相等,q为CA和CB中数值相等的位 数,则在校验矩阵H中抽取第e1列、第e2列、…、第eq列数据,并将抽取 得到的q列数据进行列相加运算得到N×1维向量G,即如果he1、he2、…、 heq分别为校验矩阵H的第e1列、第e2列、…、第eq列数据,则向量G=h w1+hw2+hw3+…+hwm

(b)、因为校验矩阵H的列重≥2,所以向量G中数值为“0”或“1” 的数据所在位置,就是密钥信息XB与密钥信息XA中不相等数据所在位置, 因此第二轮纠错中,在步骤(a)得到向量G中,查找数值为“1”的位置, 如果查找结果显示在向量G中第d1个、第d2个、…、第dp个数据的数值 为“1”,p为向量G中数值为“1”的数据个数,则将密钥信息XB中的 第d1个、第d2个、…、第dp个数据置反,得到更新后的密钥信息XB,再 根据CB=XB×H的得到更新码CB,并将更新次数R2加1,即R2=R2+1;

(8)、比较步骤(7)更新得到的码CB和步骤(4)通信方A发送给 通信方B的码CA:

如果CA=CB,则进入步骤(9);

如果CA≠CB且更新次数R2小于系统设定的更新次数门限β,则返回 步骤(7);

如果CA≠CB且更新次数R2等于系统设定的更新次数门限β,则进入 步骤(10);

其中,第二轮纠错中更新次数门限值β是根据系统的误码率、密钥协商 失败率和处理时间上限值的要求设定的,即可以避免处理进入死循环,又可 以尽可能的对密钥信息XB进行纠正,使其与密钥信息XA一致,从而实现在 系统高误码率条件下,有效降低密钥协商失败率。

(9)、判定协商成功并进入步骤(11);

(10)、判定协商失败并进入步骤(11);

(11)、结束处理。

实施例:

以下通过数学仿真试验完成本发明的密钥协商方法,其中系统误码率设 定为10%,本发明的密钥协商方法的具体实现过程如下:

(1)、确定通信双方的密钥信息,在仿真试验中的具体实现过程如下:

首先,随机生成长度N=100的二进制数字信息XA,并在XA中随机选 取M=10位进行置反作为信息XB;其中,M=Per*N,Per=10%为通信误码 率;

其中将仿真生成的信息XA作为通信方A的密钥信息,并将经过置反处 理得到的信息XB通信方B的密钥信息,所述密钥信息XA、XB的长度为 N=100,且密钥信息XB中存在10位数字信息与密钥信息XA不一致;

(2)、利用PEG算法生成N×Q维低密度奇偶校验矩阵H,其中Q=80, 生成的校验矩阵H的前44列的列重为2,第45列~第47列的列重为3, 第48列~第80列的列重为4,且校验矩阵H的所有行重均大于0。

(3)、通信方A根据密钥信息XA和按照步骤(2)得到的校验矩阵H 编码得到码CA,其中CA=XA×H;通信方B根据密钥信息XB和按照步骤 (2)得到的校验矩阵H编码得到码CB,其中CB=XB×H;

(4)、判断码CA和码CB是否相等,判断结果显示CA≠CB,则初 始化更新次数R1=0、R2=0并进入步骤(5);

(5)、进行首轮纠错,其中将首轮纠错的更新次数门限值Υ设定为8, 具体纠错过程为:

(a)、查找CA码和CB码数值相同的位置,通过上述查找得到码CA 和码CB的第w1位、第w2位、…、第wm位的数值相等,m为CA和CB 中数值相等的位数,则在校验矩阵H中抽取第w1列、第w2列、…、第wm列数据,并将所述抽取得到的m列数据进行列相加运算得到N×1维向量T;

(b)、在步骤(a)的得到向量T中查找数值为“0”的位置,其中, 如果通过查找得到向量T中第c1个、第c2个、…、第cn个数据的数值为“0”, n为向量T中数值为“0”的数据个数,则将通信方B的密钥信息XB中的第 c1个、第c2个、…、第cn个数据置反,得到更新后的密钥信息XB,再根据 CB=XB×H得到更新后的码CB,并将更新次数R1加1,即R1=R1+1;

(6)、比较步骤(5)更新得到的码CB和步骤(4)中通信方A发送 给通信方B的码CA:

如果CA=CB,则进入步骤(9);

如果CA≠CB且更新次数R1小于8次,则返回步骤(5);

如果CA≠CB且更新次数R1等于8次,即在首轮纠错中对密钥信息完 成8次纠正更新,仍然不能达到与密钥信息一致,则则进入步骤(7);

(7)、进行第二轮纠错,将更新次数门限β设定为15,具体实现过程 如下:

(a)、寻找码CA和码CB数值相同的位置,如果码CA和码CB的第 e1位、第e2位、…、第eq位的数值相等,q为CA和CB中数值相等的位 数,则在校验矩阵H中抽取第e1列、第e2列、…、第eq列数据,并将所述 抽取得到的q列数据进行列相加运算得到N×1维向量G;

(b)、在步骤(a)得到向量G中,查找数值为“1”的位置,如果查 找结果显示在向量G中第d1个、第d2个、…、第dp个数据的数值为“1”, p为向量G中数值为“1”的数据个数,则将密钥信息XB中的第d1个、第 d2个、…、第dp个数据置反,得到更新后的密钥信息XB,再根据CB=XB× H的得到更新码CB,并将更新次数R2加1,即R2=R2+1;

(8)、比较步骤(7)更新得到的码CB和步骤(4)通信方A发送给 通信方B的码CA:

如果CA=CB,则进入步骤(9);

如果CA≠CB且更新次数R2小于15次,则返回步骤(7);

如果CA≠CB且更新次数R2等于15次,则进入步骤(10);

(9)、判定协商成功并进入步骤(11);

(10)、判定协商失败并进入步骤(11);

(11)、结束处理。

按照以上的仿真处理方法,在系统误码率为10%时,共进行10000次 的独立仿真处理,仿真结果表明,采用本发明的密钥协商方法,共有9140 次仿真在首轮纠错中协商成功,845次仿真在第二轮纠错中协商成功,15 次仿真协商失败,即协商失败率为0.15%。

以上所述,仅为本发明最佳的具体实施方式,但本发明的保护范围并不 局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可 轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。

本发明说明书中未作详细描述的内容属于本领域专业技术人员的公知 技术。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号