留言板

尊敬的读者、作者、审稿人, 关于本刊的投稿、审稿、编辑和出版的任何问题, 您可以本页添加留言。我们将尽快给您答复。谢谢您的支持!

姓名
邮箱
手机号码
标题
留言内容
验证码

基于LDPC码的安全可靠通信方法研究

史治平 任亚军 吕凤橙

史治平, 任亚军, 吕凤橙. 基于LDPC码的安全可靠通信方法研究[J]. 电子科技大学学报, 2017, 46(5): 641-647. doi: 10.3969/j.issn.1001-0548.2017.05.001
引用本文: 史治平, 任亚军, 吕凤橙. 基于LDPC码的安全可靠通信方法研究[J]. 电子科技大学学报, 2017, 46(5): 641-647. doi: 10.3969/j.issn.1001-0548.2017.05.001
SHI Zhi-ping, REN Ya-jun, LÜ Feng-cheng. Research on Secure and Reliable Communications Method Based on LDPC Codes[J]. Journal of University of Electronic Science and Technology of China, 2017, 46(5): 641-647. doi: 10.3969/j.issn.1001-0548.2017.05.001
Citation: SHI Zhi-ping, REN Ya-jun, LÜ Feng-cheng. Research on Secure and Reliable Communications Method Based on LDPC Codes[J]. Journal of University of Electronic Science and Technology of China, 2017, 46(5): 641-647. doi: 10.3969/j.issn.1001-0548.2017.05.001

基于LDPC码的安全可靠通信方法研究

doi: 10.3969/j.issn.1001-0548.2017.05.001
基金项目: 

国家863项目 2014AA01A704

详细信息
    作者简介:

    史治平(1972-), 女, 博士, 教授, 主要从事无线通信与纠错编码的研究

  • 中图分类号: TN911.22

Research on Secure and Reliable Communications Method Based on LDPC Codes

图(3)
计量
  • 文章访问数:  4157
  • HTML全文浏览量:  1250
  • PDF下载量:  165
  • 被引次数: 0
出版历程
  • 收稿日期:  2016-10-27
  • 修回日期:  2017-05-09
  • 刊出日期:  2017-09-01

基于LDPC码的安全可靠通信方法研究

doi: 10.3969/j.issn.1001-0548.2017.05.001
    基金项目:

    国家863项目 2014AA01A704

    作者简介:

    史治平(1972-), 女, 博士, 教授, 主要从事无线通信与纠错编码的研究

  • 中图分类号: TN911.22

摘要: LDPC码是一类由校验矩阵确定的线性分组码,具有逼近香农限的纠错能力。该文基于纠错码的对称密码体制以及性能等价编码矩阵提出了一类基于LDPC码的安全通信方法,该方法在几乎不改变通信可靠性的情况下,极大地提高了系统的抗截获能力。编码矩阵可以使线性分组码的生成矩阵或校验矩阵。该文通过构造大量性能等价的编码矩阵,以及通信时收发双方同时随机改变编码矩阵的方法来提高通信系统的抗截获能力。另外,由于这些性能等价的编码矩阵产生的LDPC码不仅具有相同的编码参数和可靠性,而且具有非常强的纠错能力,因此该方案是一种安全可靠的一体化通信方法。

English Abstract

史治平, 任亚军, 吕凤橙. 基于LDPC码的安全可靠通信方法研究[J]. 电子科技大学学报, 2017, 46(5): 641-647. doi: 10.3969/j.issn.1001-0548.2017.05.001
引用本文: 史治平, 任亚军, 吕凤橙. 基于LDPC码的安全可靠通信方法研究[J]. 电子科技大学学报, 2017, 46(5): 641-647. doi: 10.3969/j.issn.1001-0548.2017.05.001
SHI Zhi-ping, REN Ya-jun, LÜ Feng-cheng. Research on Secure and Reliable Communications Method Based on LDPC Codes[J]. Journal of University of Electronic Science and Technology of China, 2017, 46(5): 641-647. doi: 10.3969/j.issn.1001-0548.2017.05.001
Citation: SHI Zhi-ping, REN Ya-jun, LÜ Feng-cheng. Research on Secure and Reliable Communications Method Based on LDPC Codes[J]. Journal of University of Electronic Science and Technology of China, 2017, 46(5): 641-647. doi: 10.3969/j.issn.1001-0548.2017.05.001
  • 信道编码盲识别技术是一种根据侦收到的数据快速有效地识别出信道编码体制的方法,实现了对信源信息的获取,为通信对抗提供更多可靠的依据。这种方式是非合作信号处理从信号层向信息层的扩展,这在非合作通信领域具有重要的价值。因此,信道编码盲识别技术受到国内外研究人员的高度重视,并取得了很多研究成果。按照信道编码类型,信道盲识别技术分为卷积码参数盲估计和分组码参数盲估计,其中分组码主要是线性分组码参数的盲识别。

    LDPC码是一种由稀疏校验矩阵定义的线性分组码[1],在码长较长时其性能逼近香农限。自LDPC码被发现以来,研究人员从LDPC码的构造、编码、译码方法等方面展开了深入的研究,当前LDPC码在卫星、深空、移动、无线等通信系统中已被广泛应用,成为最有潜力的信道编码解决方案。对LDPC码的盲识别算法也逐渐成为研究热点[2-4]。LDPC码盲识别的最终目标是实现稀疏校验矩阵的正确重建。LDPC码的盲识别是为了解决误码条件下的LDPC码开集识别问题。通过综合利用列消元运算、校验向量判定准则以及渐进行变换等方法,将发现正确校验向量和剔除含误码码组作为手段,最终把原问题成功地退化为无误码条件下对LDPC码接收序列进行高斯消元,获取码字空间的一组基,即生成矩阵G,进而方便地获取至少一个非稀疏校验矩阵Hd。在此基础上,利用足够多次数的线性行变换运算,可最终实现稀疏校验矩阵的正确重建。

    虽然LDPC码盲识别技术的计算难度较大,且该技术目前还存在很多亟待解决的问题,但LDPC码的盲识别技术研究给传统的保密通信方案敲响了警钟。通过保密校验矩阵H(或生成矩阵G)实现LDPC码的安全通信已经显得越来越脆弱,因此需要新的增强系统安全性的保密方案。

    文献[5]证明了纠错码(信道编码)的一般线性分组码译码问题是一个NPC问题。文献[6]利用这一理论基础并结合Goppa码,首次提出了一类基于纠错码的公钥密码体制,称为McEliece公钥密码体制(M体制)。该体制的基本思想是首先接收方选择一个具有快速译码算法的特定码作为私钥,然后使用一个陷门函数将这个特定码隐藏起来,而敌手看到的只是一个一般的线性码。而且该密码体制具有抗量子攻击的特性,因为密码学界普遍认为量子计算机无法攻破NPC问题,所以该密码体制在量子计算机时代仍然是安全的。但该密码体制存在明显的缺点:密钥开销大、信息速率低且没有考虑有扰信道的情况。

    针对M体制密钥开销大、信息速率低等缺点,研究者们相继提出了很多改进方案,其中大部分都是利用LDPC码等具有紧致生成矩阵或校验矩阵的码来代替Goppa码[7];而针对有扰信道的情况,文献[8]对该密码体制进行了修正,使其具有一定的纠错能力,并将修正后的密码体制称为Ms公钥体制,但这种修正会损失一定的安全性,需要在安全性和可靠性之间进行折中。为了解决该问题,文献[9]提出了基于M公钥体制的分组加密纠错体制,但密钥开销大依旧是该方案的弱点,而且后续研究证明该方案可以被一些选择明文攻击攻破。因此,研究新的M对称密码体制改进方案来降低密钥开销、提高系统的安全性,显得非常重要。

    本文基于纠错码的对称密码体制以及性能等价矩阵的概念,提出了一类基于LDPC码的安全通信方法,设计了大量等价的编码矩阵,通过通信双方随机改变编码矩阵,在不改变LDPC码纠错能力的前提下,提高了非合作方识别或破获信息的难度。同时针对密钥开销问题,给出了一种低复杂度密钥控制的同步实现方案。

    • LDPC码是基于稀疏校验矩阵的线性分组码,因此构造LDPC码实际上就是构造一个稀疏的校验矩阵H。根据生成矩阵G与校验矩阵H之间的关系GHT=0,可以得到生成矩阵G。因此,发送端可以基于G对信息序列m进行编码,得到码字c=mG。在接收端,译码器基于校验矩阵H,利用置信传播算法从带有噪声的接收序列中恢复出原始信息序列。

      对于LDPC码H矩阵的生成,主要有以下几种方法:1) 随机生成H后经过仿真挑选[10],这种方式是早期取得最佳性能LDPC码所采用的方式;2) 通过PEG等方法[11],从双边图的角度构造H矩阵,可以得到性能比较稳定的H矩阵。以上两种方法都是从性能的角度出发构造H矩阵,通常情况下硬件实现复杂度较高。目前使用较多的是结构化H矩阵[12],如准循环LDPC码(QC-LDPC码)。这种类型的LDPC码从实现角度出发,结构特殊,利于编码或译码实现。

    • m为待加密编码的信息序列,通信双方均已知参数HSP,其中H是(n-kn阶线性分组码的奇偶校验矩阵,GH对应的线性分组码的k×n阶生成矩阵,Sk×k阶密集可逆矩阵,Pn×n阶置换矩阵(即PT=P-1)。

      1) 发送端编码和加密算法为:

      $$ \mathit{\boldsymbol{c}} = m\mathit{\boldsymbol{SGP}} $$ (1)

      接收端的接收向量为:

      $$ \mathit{\boldsymbol{r}} = \mathit{\boldsymbol{c}} + \mathit{\boldsymbol{n}} $$ (2)

      式中,n表示信道引入的噪声。

      2) 解密与解码的具体步骤如下:

      首先将接收到的序列r右乘PT得到:

      $$ \mathit{\boldsymbol{r'}} = \mathit{\boldsymbol{r}}{\mathit{\boldsymbol{P}}^{\rm{T}}} = \mathit{\boldsymbol{c}}{\mathit{\boldsymbol{P}}^{\rm{T}}} + \mathit{\boldsymbol{n}}{\mathit{\boldsymbol{P}}^{\rm{T}}} = \mathit{\boldsymbol{mSG}} + \mathit{\boldsymbol{n'}} $$ (3)

      然后根据线性分组码的生成矩阵G或校验矩阵H,对r'进行译码,得到:u'=mS

      最后将u'右乘S的逆,还原明文信息m

      $$ \mathit{\boldsymbol{u'}}{\mathit{\boldsymbol{S}}^{ - {\rm{1}}}} = \mathit{\boldsymbol{mS}}{\mathit{\boldsymbol{S}}^{ - {\rm{1}}}} = \mathit{\boldsymbol{m}} $$ (4)

      该模型与基于纠错编码的公钥密码体制[13-14]类似,但与之不同的是,这里的矩阵SPHG都是随机可变的,它们既可以单独变化,也可以联合改变。本文只考虑两种变化方式(HP),通信时基于性能等价的海量编码矩阵随机改变,提高破解难度。

      1) 海量置换矩阵P在收发双方同时跳变

      不同于传统的M对称密码体制中矩阵P始终不发生变化,本文方案中,每次通信发送端和接收端同步选用与之前通信不同的置换矩阵P进行加解密操作,矩阵P的变化空间为n!。当n=100时,矩阵P的个数可以大于2512,可见矩阵数量巨大,可以达到理论上的一次一密,提高了通信系统的安全性。

      2) 基于海量校验矩阵H跳变的安全通信

      本文采用随机循环差集(RDF)的方法构造大量等价的LDPC码的校验矩阵H,通信双方通过随机选择编码矩阵,提高系统的抗截获能力。

      研究显示,基于RDF的LDPC码在相同的参数下可以形成大量的等价码[13],根据RDF构造的校验矩阵H的特性,发送端和接收端可以同步改变校验矩阵H,有效地提高破译的难度。另外,RDF-LDPC码的奇偶校验矩阵H为准循环结构,且可以由基组向量B唯一确定,因此,基于RDF-LDPC码构造的安全体制可以减少密钥存储量。

      为降低密钥开销和同步难度,基于线性同余思想产生置换矩阵P和校验矩阵H。发送端和接收端都不用存储P矩阵和H矩阵,只选用线性同余方法产生的密钥便可使PH同步变化,这样能够有效地降低密钥量。

    • 下面给出两种基于LDPC码的安全可靠的通信方案,一种是随机改变置换矩阵P,另外一种是改变校验矩阵H。两种方案都不降低LDPC码的纠错性能,同时具有很高的安全性。

    • 下面基于线性同余思想,给出收发双方同步产生置换矩阵P的方法。

    • 将基于线性同余方法(linear congruence, LCG)产生的伪随机序列作为通信双方的密钥,然后基于这个密钥同步控制编码矩阵的变化。下面给出密钥的生成过程。

      线性同余产生器的递推公式为:

      $$ {N_{i + 1}} = a{N_i} + b\begin{array}{*{20}{c}} {}&{(\bmod M)} \end{array}\begin{array}{*{20}{c}} {}&{i = 0, 1, 2, \cdots, M - 1} \end{array} $$ (5)

      式中,abM是产生器设定的常数,分别是乘数、增量和模数;N0为产生器的初始值。

      LCG的最大周期为M,但大部分情况都会小于M。为了确保LCG达到最大周期,式(5) 中的参数应满足以下5个条件:

      1) Mb互质;

      2) M的所有质因子的积能整除a-1;

      3) 若M是4的倍数,则a-1也应该是4的倍数;

      4) abN0都比M小;

      5) ab都是正整数。

      若式(5) 的参数满足以上条件,则该递推公式在重复之前可以产生0~M之间的所有整数。

      根据以上线性同余的思想,本文方案的密钥选取步骤如下:

      1) 可信第三方根据LCG达到最大周期的条件,合理地选择乘数a和增量b, 并将选好的ab作为密钥分发给通信的收发两方;

      2) 可信第三方随机选取大随机数N作为密钥分发到通信双方;

      3) 可信第三方随机选择一个密集的可逆矩阵S作为密钥分发给通信双方;

      4) 通信双方根据收到的密钥(a, b, N, S)产生同步控制序列,其中S用于编译码。

      ① 通信双方统一选取模数MM是LDPC码的码长;

      ② 收发双方根据随机数密钥N,计算N0=NmodM,得到初始值N0

      ③ 收发双方根据线性同余产生器的递推公式得到长度为M的整数序列为:

      $$ n = ({N_0}, {N_1}, {N_2}, \cdots, {N_{M - 1}})\begin{array}{*{20}{c}} {}&{i = 0, 1, 2, \cdots, M - 1} \end{array} $$ (6)
    • 基于上述方法产生密钥后,通信双方每次通信时得到同步置换矩阵P的步骤如下:

      1) 根据密钥产生时得到的整数序列n=(N0, N1, …, NM-1),确定初始置换矩阵P

      由于置换矩阵中每一行每一列都只有一个1,如果将置换矩阵Pi行的非零位置设为li,计算:

      $$ {l_i} = {N_{i - 1}} + 1\begin{array}{*{20}{c}} {}&{i = 1, 2, 3, \cdots, M} \end{array} $$ (7)

      则初始置换矩阵P可以由序列$ l = ({l_1}, {l_2}, \cdots, {l_M}) $唯一确定。

      2) 根据前面得到的整数序列n=(N0, N1, …, NM-1),通信双方对置换矩阵P做同步变化。

      由1) 可知,置换矩阵P由整数序列n唯一确定,收发双方每次通信时,可以采用相同的规则对序列n重新排列。本文采用邻位对换法依次得到基于序列n的每一个新的序列n',由n'确定新的置换矩阵P',并且用P'进行下次通信的加解密操作。

      邻位对换法可以由已知序列以非递归的方式,依次得到该序列的全排列序列。

      邻位对换法得到全排列的主要思想:

      1) 邻位对换法中下一个排列总是上一个排列中某相邻的两位对换得到的,以4个元素的排列1 3 4 2为例,将第一个元素1逐次与其后面的元素交换,可以生成3个新的排列:3 1 4 2,3 4 1 2,3 4 2 1;

      2) 将最后一个排列的前面的两个元素交换,再逐次将末尾的1与其前面的元素交换,又生成4个新排列:4 3 2 1,4 3 1 2, ,4 1 3 2,1 4 3 2;

      3) 将最后一个排列的末尾的两个元素交换,将1从前往后移:1 4 2 3,4 1 2 3,4 2 1 3,4 2 3 1;

      4) 如此循环即可求出已知序列的全排列。

      对于长度为M的序列n,根据邻位对换,可以获得该序列的全排列,共有M!种不同的序列,对应M!种不同的置换矩阵P

      本通信方案中的置换矩阵由线性同余参数控制变化,因此在进行LDPC译码前需要根据每次通信的矩阵P进行反交织,然后再进行LDPC译码。由于本文方案中的校验矩阵始终不发生变化,因此可以使用相同的译码器实现。

    • 本文基于RDF生成的性能等价校验矩阵数量巨大的特点,设计了基于海量校验矩阵随机变化的LDPC码安全通信方案。下面介绍该方法的基本原理与通信过程。

      为了方便叙述,先给出模p的差的定义。

      定义  设$ {{\mathit{\mathbb{Z}}}_p} $是一个整数模p的集合,对于给定的两个元素x, y∈$ {{\mathit{\mathbb{Z}}}_p} $模p的差定义为[13]

      $$ \delta _{xy}^p = \left\{ {\begin{array}{*{20}{c}} {x - y\begin{array}{*{20}{c}} {}&{x \ge y} \end{array}}\\ {p - (y - x) = p - \delta \begin{array}{*{20}{c}} {}&{x < y} \end{array}} \end{array}} \right. $$ (8)
    • 假设QC-LDPC的奇偶校验矩阵的形式为:

      $$ \mathit{\boldsymbol{H}} = \left[{{\mathit{\boldsymbol{H}}_0}\;\;\;\;{\mathit{\boldsymbol{H}}_1}\;\;\;\; \cdots \;\;\;\;{\mathit{\boldsymbol{H}}_{{n_0}-1}}} \right] $$ (9)

      Hn0个基本块Hi组成,其中Hi是大小为p×p的循环行移位方阵,Hi中的第k+1行元素可由第k行元素排列的循环左(右)移1位所得。形如:

      $$ {\mathit{\boldsymbol{H}}_i} = {\left[{\begin{array}{*{20}{c}} {{a_0}}&{{a_1}}&{{a_2}}& \cdots &{{a_{p-1}}}\\ {{a_1}}&{{a_2}}&{{a_2}}& \cdots &{{a_0}}\\ {{a_2}}&{{a_3}}&{{a_4}}& \cdots &{{a_1}}\\ \vdots & \vdots & \vdots & \ddots & \vdots \\ {{a_{p-1}}}&{{a_0}}&{{a_1}}& \cdots &{{a_{p-2}}} \end{array}} \right]_{p \times p}} $$ (10)

      另假设集合Bn0个基本块Bi组成:

      $$ B = \{ {B_0}, {B_1}, \cdots, {B_{{n_0} - 1}}\} $$ (11)

      每个基本块Bi都是$ {{\mathit{\mathbb{Z}}}_p} $的一个子集,且与H中的循环块Hi一一对应,$ {B_i} \leftrightarrow {\mathit{\boldsymbol{H}}_i} $,其对应方式为:Bi包含Hi中第一行非零元素的位置,若将Hi的第一行表示为多项式,基块Bi包含变量x在该多项式Ai(x)的指数,即:

      $$ {B_i} \leftrightarrow {A_i}(x) = \sum\limits_{j = 0}^{{d_v}} {{x^{{d_{ij}}}}} \begin{array}{*{20}{c}} {}&{i \in [0, {n_0}-1]} \end{array} $$ (12)

      式中,dij为基块Bi的第j个元素。

      Hi的结构特点知,当Hi的第一行元素确定之后整个矩阵Hi也将被确定。

      对于规则矩阵,假设dv即为矩阵H的列重,则行重dc=n0dv。在这种情况下,为了定义整个矩阵H,每个基本块Bi必须包含dv个不同的元素,由式(8) 可知这dv个元素可以产生dv(dv-1) 个差值δxyp

      根据Tanner图中4环的结构特点,为了避免该类型码对应的Tanner图中存在4环,其奇偶校验矩阵基本块Hi相对应的Bi必须满足特性[13]

      $$ \begin{array}{l} \delta _{ab}^p \ne \delta _{cd}^p\;\;\forall a, b \in {B_i}, \forall c, d \in {B_j}\\ \forall i, j \in [0, {n_0}-1] \end{array} $$ (13)

      随机地选择每个基本块Bi中的元素,验证是否满足式(13),即码的Tanner图中不存在4环的条件。如果不满足,再重试直到找到满足条件的基本块组$ {B_0}, {B_1}, \cdots, {B_{{n_0} - 1}} $,然后根据$ B = \{ {B_0}, {B_1}, \cdots, {B_{{n_{\rm{0}}} - 1}}\} $构造QC-LDPC码的校验矩阵。

      由此可见,该方法构造的LDPC码的校验矩阵H由基本块组B唯一决定。因此通信双方只需要存储B便可以唯一确定出该LDPC码的校验矩阵H,基于这种结构进行安全可靠通信,可以大大降低密钥量。

    • 假设Hn0-1循环矩阵是可逆的,其逆矩阵Hn0-1-1仍然是循环矩阵,则校验矩阵H对应的生成矩阵:

      $$ \mathit{\boldsymbol{G}} = \left[{\begin{array}{*{20}{c}} \mathit{\boldsymbol{I}}&{\begin{array}{*{20}{c}} {{{(\mathit{\boldsymbol{H}}_{{n_{\rm{0}}}-1}^{-1}{\mathit{\boldsymbol{H}}_0})}^T}}\\ {{{(\mathit{\boldsymbol{H}}_{{n_{\rm{0}}}-1}^{ - 1}{\mathit{\boldsymbol{H}}_1})}^T}}\\ \vdots \\ {{{(\mathit{\boldsymbol{H}}_{{n_{\rm{0}}} - 1}^{ - 1}{\mathit{\boldsymbol{H}}_{{n_{\rm{0}}} - 2}})}^T}} \end{array}} \end{array}} \right] $$ (14)

      则由矩阵G便可生成一类QC-LDPC码。

      对于LDPC码的参数,码长n=pn0,码率R=(n0-1)/n0,列重dv,基于RDF算法可以构造出的无4环的不同QC-LDPC码的平均数量为[13]

      $$ \begin{array}{l} N({n_0}, {d_v}, p) \ge \frac{1}{p}{\left( {\begin{array}{*{20}{c}} p\\ {{d_v}} \end{array}} \right)^{{n_0}}}\prod\limits_{l = 0}^{{n_0} - 1} {\prod\limits_{j = 1}^{{d_v} - 1} {\frac{p}{{p - j}}} } - \\ \frac{{j[2-p\bmod 2 + ({j^2}-1)/2 + l{d_v}({d_v}-1)]}}{{p - j}} \end{array} $$ (15)

      n0=4,dv=11,p=4 032时,$ N({n_0}, {d_v}, p) \ge {2^{391}} $,可见这个数字是相当大的。因此当采用这种矩阵作为LDPC码的校验矩阵进行可靠传输时,可以随机选取性能等价的H进行编译码,提高通信系统的安全性。

    • 基于RDF的校验矩阵H的产生原理可知,校验矩阵$ \mathit{\boldsymbol{H}} = \left[{{\mathit{\boldsymbol{H}}_0}\;\;\;\;{\mathit{\boldsymbol{H}}_1}\;\;\;\; \cdots \;\;\;\;{\mathit{\boldsymbol{H}}_{{n_{\rm{0}}}-1}}} \right] $由集合$ B = \{ {B_0}, {B_1}, \cdots, {B_{{n_{\rm{0}}} - 1}}\} $唯一确定,Bi包含着Hi第一行中非零元的位置。而对于Bi中的每个元素的确定方法是:随机地从集合c={1, 2, 3, …, p}中选择一个值,其中p为循环块的长度,验证该值是否满足式(13),若满足则保留,否则重复该步骤,直到找出满足条件的基组$ {B_0}, {B_1}, \cdots, {B_{{n_{\rm{0}}} - 1}} $,再根据基组$ B = \{ {B_0}, {B_1}, \cdots, {B_{{n_{\rm{0}}} - 1}}\} $构造QC-LDPC码的校验矩阵$ \mathit{\boldsymbol{H}} = [{\mathit{\boldsymbol{H}}_0}\;\;\;\;{\mathit{\boldsymbol{H}}_1}\;\;\;\; \cdots \;\;\;\;{\mathit{\boldsymbol{H}}_{{n_{\rm{0}}}-1}}] $。

      由此可看出,校验矩阵H由每次从集合c中选取的元素确定。Bi中元素的确定方法是从序列$ c' = ({c_0}, {c_1}, \cdots, {c_{p - 1}}) $中的第一个元素开始依次选取,其中ci验证选取的值是否满足无4环的条件,若满足则保留,否则取序列c'中下一个值,继续验证是否满足无4环的条件,依次类推,直到找出满足条件的基组$ {B_0}, {B_1}, \cdots, {B_{{n_0} - 1}} $。如果通信双方可以得到相同的唯一确定的序列c',那么双方便可同步产生相同的校验矩阵H。即确定了序列c',也就确定了校验矩阵H

      借助于线性同余的方法,收发双方可以同时得到相同的序列c',这里采用与产生置换矩阵P相同abN,但模数M的值等于循环块的长度pN0=NmodM,将这些参数代入式(5),通信双方可以同时获得相同的序列c',然后根据c'得到相同的校验矩阵H

      第一次通信时,通信双方基于序列c'产生校验矩阵H,下次通信时,通信双方可以协同产生新的递推公式初值N0(如N0=N0+1),进而得到新的序列c'和新的校验矩阵H,进一步增大通信的密钥空间,增强通信的安全性。

      本文通信方案中,因为校验矩阵H每间隔一定时间发生改变,所以译码器也应随之改变,这在一定程度上增加了系统的复杂度。由于校验矩阵H是根据密钥参数abN动态生成的,因此在密钥参数发生变化后,可以使用软件定义的方式,动态同步改变LDPC译码器。为了权衡系统的复杂度和安全性,可以考虑选择合适的校验矩阵变化频率。

    • 下面通过具体实例对以上算法进行说明和性能分析。

    • LDPC码的码长为1 024比特,码率为1/2。密钥参数:N=5 197、a=2^7+1、b=47。校验矩阵参数:B1=[417, 65, 323, 280, 494],B2=[463, 467, 142, 490, 80],p = 512,dv = 5。

      设需要编码的信息序列为m,编码加密方案为c=mSGP,仿真过程中每一帧都采用不同的置换矩阵P,校验矩阵H始终不变,仿真结果如图 1所示。

      图  1  置换矩阵P变化与P不变时的误码曲线对比图

      由仿真结果可以看出,每次通信都更新置换矩阵P的设计方案并不会影响系统的纠错能力,但该设计方案仅仅依靠Nab作为密钥,就可以产生M!种不同的编码加密方案。在此仿真中M=1 024,可以产生一个巨大的数,避免了通信双方对海量的置换矩阵P的存储,极大地降低了密钥存储量,而且每次通信采用不同的置换矩阵P,提高了系统的安全性。

    • 在仿真参数设置、加密编码方案与3.1节相同的情况下,为了模拟校验矩阵H的变化,仿真时,对于每个信噪比校验矩阵H改变20次,置换矩阵P始终不变,结果如图 2所示。

      图  2  校验矩阵H变化与H不变时的误码曲线对比图

      本文方案同样依靠Nab作为密钥,通信双方便可以同步产生多种具有相同性能的校验矩阵,不用存储这些校验矩阵就可以完成编译码操作,进一步降低了密钥存储量。由于在相同的参数下,基于RDF构造的LDPC码是等价码,所以,从该误码曲线对比图中可以看出,改变校验矩阵H对误码性能的影响很小,但通信双方通过同步改变校验矩阵H,可以有效增强系统的安全性。

    • 在仿真参数设置、加密编码方案与3.1节相同的情况下,为了模拟校验矩阵H的变化,仿真时每个信噪比校验矩阵H改变20次;仿真过程中每一帧都采用不同的置换矩阵P,仿真结果如图 3所示。

      图  3  置换矩阵P和校验矩阵H同时变化时的误码曲线图

      图 3图 2对比可知,在校验矩阵H发生变化的基础上,让置换矩阵P在每次通信中都发生改变,不会影响编译码性能。通信过程中同时改变置换矩阵P和校验矩阵H会进一步增强系统的安全性,系统的密钥始终只是Nab和可逆方阵S,降低了密钥的存储量。

    • 综上所述,本文提出的基于LDPC码的海量编码矩阵传输方案是一种高效的安全可靠传输方法。通过通信双方在海量编码矩阵中的随机选取,极大地增加了系统的安全性,提高了系统抗截获能力;另一方面,由于海量编码矩阵的性能等价性,通信系统的纠错性能不受影响,保证了系统的可靠性和高效性;最后,给出了一种降低开销密钥的编译码矩阵同步控制方案,与直接传递和存储编码矩阵相比,该方案大大降低了密钥开销。

      本文建议的基于LDPC码的安全可靠通信方法是一种编码域的抗干扰、抗截获通信方式,它通过信道编码矩阵的随机改变,在保证系统可靠性的同时,提高了编码被攻击者破译的难度。这对于提高基于LDPC码通信系统的安全性具有重要意义。

参考文献 (14)

目录

    /

    返回文章
    返回