首页 / 专利分类库 / 基本电子电路 / 一般编码、译码或代码转换 / 一种同步编译码的方法、发送端和接收端

一种同步编译码的方法、发送端和接收端

申请号 CN202410175495.5 申请日 2024-02-07 公开(公告)号 CN118018039A 公开(公告)日 2024-05-10
申请人 清华大学; 上海清申科技发展有限公司; 发明人 陈钊; 潘兴; 裴玉奎; 殷柳国;
摘要 本 申请 公开一种同步编译码的方法、发送端和接收端,本公开 实施例 设置译码器根据预先设定的同步余量确定第二初始化向量,同步余量用于使第二码字同步值小于或等于第一码字同步值,保证了接收端译码器的码字同步值是对发送端码字同步值的单向搜索,为实现接收端译码器的快速同步提供了技术支持;通过更新第二码字同步值,保证了接收端同步值对发送端同步值的持续追踪同步,有效解决了码字丢失时接收端的同步问题;进一步的,引入共享随机数作为初始化向量,保证不同校验矩阵的随机选取,保证每次传输任务使用的动态校验矩阵不同,提升了系统的安全性能。
权利要求

1.一种同步编译码的方法,适用于面向动态随机矩阵的传输,其特征在于,包括:
发送端根据预先设定的第一初始化向量和发送码字序号,确定第一码字同步值;
发送端根据确定的第一码字同步值及预先确定的对称密钥,产生第一伪随机向量,以构建第一动态校验矩阵;
发送端根据构建的第一动态校验矩阵对发送的消息进行编码,发送编码的消息至接收端,编码的消息中包含n个发送码字,n为正整数;
接收端根据第二初始化向量确定第i个接收码字的第二码字同步值,其中,第二初始化向量包含预先设定的同步余量,同步余量用于使第二码字同步值小于或等于第一码字同步值,i为小于或等于n的正整数;
接收端根据对称密钥与第二码字同步值产生第二伪随机向量,以构建第二动态校验矩阵;
接收端根据第二动态校验矩阵对来自发送端的消息中的第i个接收码字进行译码,得到第i个接收码字的接收明文及译码过程中的中间硬判决译码结果;
接收端根据中间硬判决译码结果与第二动态校验矩阵,更新第i+1个接收码字的第二码字同步值。
2.一种同步编译码的方法,适用于面向动态随机矩阵的传输,其特征在于,包括:
发送端根据预先设定的第一初始化向量和发送码字序号,确定第一码字同步值;
根据确定的第一码字同步值及预先确定的对称密钥,产生第一伪随机向量,以构建第一动态校验矩阵;
根据构建的第一动态校验矩阵对发送的消息进行编码,发送编码的消息至接收端,编码的消息中包含n个发送码字,n为正整数;
其中,同步编译码时接收端的第i个接收码字的第二码字同步值根据第二初始化向量确定,i为小于或等于n的正整数,第二初始化向量包含预先设定的同步余量,同步余量用于使第二码字同步值小于或等于第一码字同步值。
3.根据权利要求2所述的方法,其特征在于,所述确定第一码字同步值,包括:
将所述第一初始化向量与发送码字序号求和,获得所述第一码字同步值。
4.根据权利要求2或3所述的方法,其特征在于,所述第一初始化向量和所述第二初始化向量包括:通过预先方式确定的共享随机数。
5.根据权利要求4所述的方法,其特征在于:
所述第一初始化向量为编码器开机时间;
所述第二初始化向量为译码器开机时间与所述同步余量之差。
6.一种同步编译码的方法,适用于面向动态随机矩阵的传输,其特征在于,包括:
接收端根据第二初始化向量确定第i个接收码字的第二码字同步值,其中,第二初始化向量包含预先设定的同步余量,同步余量用于使第二码字同步值小于或等于第一码字同步值,第i个接收码字为接收端接收到的第i个码字;
根据对称密钥与第二码字同步值产生第二伪随机向量,以构建第二动态校验矩阵;
接收端根据第二动态校验矩阵对来自发送端的消息中的第i个接收码字进行译码,得到第i个接收码字的接收明文及译码过程中的中间硬判决译码结果;
根据中间硬判决译码结果与第二动态校验矩阵,更新第i+1个接收码字的第二码字同步值;
其中,所述同步编译码的发送端的第一码字同步值由第一初始化向量和发送码字序号确定。
7.根据权利要求6所述的方法,其特征在于,所述更新第i+1个接收码字的第二码字同步值,包括:
所述接收端根据所述第i个接收码字中间硬判决译码结果与所述第二动态校验矩阵,确定不满足校验关系的校验方程个数;
所述接收端通过确定的所述不满足校验关系的校验方程个数,判断当前的所述第二动态校验矩阵是否与接收码字匹配;
所述接收端根据判断的当前的第二动态校验矩阵是否与接收码字匹配,更新i+1个接收码字的所述第二码字同步值。
8.根据权利要求7所述的方法,其特征在于,所述判断当前的第二动态校验矩阵是否与接收码字匹配,包括:
所述不满足校验关系的校验方程个数小于预先设定的错误限时,确定所述第二动态校验矩阵与接收码字匹配;
所述不满足校验关系的校验方程个数大于或等于所述错误门限时,确定所述第二动态校验矩阵与接收码字匹配失败。
9.根据权利要求8所述的方法,其特征在于,所述更新i+1个接收码字的第二码字同步值,包括:
所述接收端判断当前的所述第二动态校验矩阵与接收码字匹配,确定码字同步成功,(i 1) (i)
更新Qde+c =Qd ec+1;
所述接收端判断当前的所述第二动态校验矩阵与接收码字匹配失败,确定码字同步失(i 1) (i)
败,更新Qde+c =Qd ec+2;
(i) (i)
其中,Q d ec中右上标表示接收码字序号,Q d ec表示第i个接收码字的第二码字同步值。
10.根据权利要求6至9任一项所述的方法,其特征在于,所述第一初始化向量和所述第二初始化向量包括:通过预先方式确定的共享随机数。
11.根据权利要求10所述的方法,其特征在于:
所述第一初始化向量为编码器开机时间;
所述第二初始化向量为译码器开机时间与所述同步余量之差。
12.根据权利要求6至9任一项所述的方法,其特征在于,第一个所述接收码字的第二码(1)
字同步值为Qdec=IVdec+1;
(1) ( 1)
其中,Q d ec中右上标表示接收码字序号,Qd ec表示第一个接收码字的第二码字同步值,IVdec表示第二初始化向量。
13.一种计算机存储介质,所述计算机存储介质中存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求2至5、或6至12中任一项所述的同步编译码的方法。
14.一种终端,包括:存储器和处理器,所述存储器中保存有计算机程序;其中,处理器被配置为执行存储器中的计算机程序;
所述计算机程序被所述处理器执行时实现如权利要求2至5、或6至12中任一项所述的同步编译码的方法。
15.一种同步编译码的发送端,适用于面向动态随机矩阵的传输,其特征在于,包括:第一码字同步单元、第一伪随机向量发生器;其中,
第一码字同步单元设置为:根据预先设定的第一初始化向量和发送码字序号,确定第一码字同步值;
第一伪随机向量发生器设置为:根据确定的第一码字同步值及预先确定的对称密钥,产生第一伪随机向量,以构建第一动态校验矩阵;
LDPC编码器设置为:根据构建的第一动态校验矩阵对发送的消息进行编码,发送编码的消息至接收端,编码的消息中包含n个发送码字,n为正整数;
其中,同步编译码时接收端的第i个接收码字的第二码字同步值根据第二初始化向量确定,i为小于或等于n的正整数,第二初始化向量包含预先设定的同步余量,同步余量用于使第二码字同步值小于或等于第一码字同步值。
16.一种同步编译码的接收端,适用于面向动态随机矩阵的传输,其特征在于,包括:第二码字同步单元、第二伪随机向量发生器、低密度奇偶校验码LDPC译码器;其中,第二码字同步单元设置为:根据第二初始化向量确定第i个接收码字的第二码字同步值,其中,第二初始化向量包含预先设定的同步余量,同步余量用于使第二码字同步值小于或等于第一码字同步值,第i个接收码字为接收端接收到的第i个码字;
第二伪随机向量发生器设置为:根据对称密钥与第二码字同步值产生第二伪随机向量,以构建第二动态校验矩阵;
LDPC译码器设置为:根据第二动态校验矩阵对来自发送端的消息中的第i个接收码字进行译码,得到第i个接收码字的接收明文及译码过程中的中间硬判决译码结果;根据中间硬判决译码结果与第二动态校验矩阵,更新第i+1个接收码字的第二码字同步值;
其中,所述同步编译码的发送端的第一码字同步值由第一初始化向量和发送码字序号确定。

说明书全文

一种同步编译码的方法、发送端和接收端

技术领域

[0001] 本申请涉及但不限于无线通信技术,其中涉及一种同步编译码的方法、发送端和接收端。

背景技术

[0002] 随着空间信息网络等新技术的兴起,无线通信系统面临着通信质量与保密能的双重挑战;如何在新的应用场景中同时保证信息的可靠传输与安全性能,已经成为一个重要且关键的问题。对于该问题,相关技术中的无线通信解决方案是分开研究加密、纠错两个步骤,相对独立地设计加解密器和信道编译码器;这种加密、纠错分离的通信体制没有考虑通信系统的整体特性,存在一定的传输性能瓶颈和信息泄露险。
[0003] 相关文献提出的基于动态随机矩阵的物理层安全传输系统,是一种兼顾信息传输可靠性与安全性的有效系统;图1为相关技术基于动态随机矩阵的物理层安全传输系统的示意图,如图1所示,该系统的核心特征是在收发两端根据对称密钥产生同步的伪随机序列用于动态校验矩阵的扩展构造,且一个发送码字对应一个动态校验矩阵。根据生成的动态校验矩阵,发送端融合编码器对明文进行加密和编码,接收端融合译码器对接收码字进行译码和解密,从而实现整个系统加解密功能和纠错能力的融合统一。
[0004] 上述基于动态随机矩阵的安全传输系统没有充分考虑实际通信场景中接收端和发送端的收发两端的同步问题。该系统直接默认收发两端完全同步,均从初始的序号0开始同步跳变编码;这一做法的缺陷在于:实际通信场景中可能由于收发两端开机时间不一致、信道阻塞等因素发生码字丢失问题,导致收发两端的伪随机序列不再同步,译码器无法针对接收码字构建相匹配的动态校验矩阵,进而导致译码失败,整个系统无法正常工作;此外,在基础校验矩阵和对称密钥固定的条件下,多次通信时,相同序号的发送码字使用的动态校验矩阵相同,窃听者能够根据已有的矩阵重建算法恢复校验矩阵,带来了一定的安全风险。综上,如何解决基于动态随机矩阵的物理层安全传输系统存在同步问题和安全性问题,成为一个有待解决的问题。发明内容
[0005] 以下是对本申请详细描述的主题的概述。本概述并非是为了限制权利要求的保护范围。
[0006] 本公开实施例提供一种同步编译码的方法、发送端和接收端,能够实现接收端译码器的快速同步。
[0007] 本公开实施例提供了一种同步编译码的方法,适用于面向动态随机矩阵的传输,包括:
[0008] 发送端根据预先设定的第一初始化向量和发送码字序号,确定第一码字同步值;
[0009] 发送端根据确定的第一码字同步值及预先确定的对称密钥,产生第一伪随机向量,以构建第一动态校验矩阵;
[0010] 发送端根据构建的第一动态校验矩阵对发送的消息进行编码,发送编码的消息至接收端,编码的消息中包含n个发送码字,n为正整数;
[0011] 接收端根据第二初始化向量确定第i个接收码字的第二码字同步值,其中,第二初始化向量包含预先设定的同步余量,同步余量用于使第二码字同步值小于或等于第一码字同步值,i为小于或等于n的正整数;
[0012] 接收端根据对称密钥与第二码字同步值产生第二伪随机向量,以构建第二动态校验矩阵;
[0013] 接收端根据第二动态校验矩阵对来自发送端的消息中的第i个接收码字进行译码,得到第i个接收码字的接收明文及译码过程中的中间硬判决译码结果,i为正整数;
[0014] 接收端根据中间硬判决译码结果与第二动态校验矩阵,更新第i+1个接收码字的第二码字同步值。
[0015] 另一方面,本公开实施例还提供一种同步编译码的方法,适用于面向动态随机矩阵的传输,包括:
[0016] 发送端根据预先设定的第一初始化向量和发送码字序号,确定第一码字同步值;
[0017] 根据确定的第一码字同步值及预先确定的对称密钥,产生第一伪随机向量,以构建第一动态校验矩阵;
[0018] 根据构建的第一动态校验矩阵对发送的消息进行编码,发送编码的消息至接收端,编码的消息中包含n个发送码字,n为正整数;
[0019] 其中,同步编译码时接收端的第i个接收码字的第二码字同步值根据第二初始化向量确定,i为小于或等于n的正整数,第二初始化向量包含预先设定的同步余量,同步余量用于使第二码字同步值小于或等于第一码字同步值。
[0020] 再一方面,本公开实施例还提供一种同步编译码的方法,适用于面向动态随机矩阵的传输,包括:
[0021] 接收端根据第二初始化向量确定第i个接收码字的第二码字同步值,其中,第二初始化向量包含预先设定的同步余量,同步余量用于使第二码字同步值小于或等于第一码字同步值,第i个接收码字为接收端接收到的第i个码字;
[0022] 根据对称密钥与第二码字同步值产生第二伪随机向量,以构建第二动态校验矩阵;
[0023] 根据第二动态校验矩阵对来自发送端的消息中的第i个接收码字进行译码,得到第i个接收码字的接收明文及译码过程中的中间硬判决译码结果;
[0024] 根据中间硬判决译码结果与第二动态校验矩阵,更新第i+1个接收码字的第二码字同步值;
[0025] 其中,所述同步编译码的发送端的第一码字同步值由第一初始化向量和发送码字序号确定。
[0026] 还一方面,本公开实施例还提供一种计算机存储介质,所述计算机存储介质中存储有计算机程序,所述计算机程序被处理器执行时实现上述同步编译码的方法。
[0027] 还一方面,本公开实施例还提供一种终端,包括:存储器和处理器,所述存储器中保存有计算机程序;其中,
[0028] 处理器被配置为执行存储器中的计算机程序;
[0029] 所述计算机程序被所述处理器执行时实现如上述同步编译码的方法。
[0030] 还一方面,本公开实施例还提供一种同步编译码的发送端,适用于面向动态随机矩阵的传输,包括:第一码字同步单元、第一伪随机向量发生器、低密度奇偶校验码LDPC编码器;其中,
[0031] 第一码字同步单元设置为:根据预先设定的第一初始化向量和发送码字序号,确定第一码字同步值;
[0032] 第一伪随机向量发生器设置为:根据确定的第一码字同步值及预先确定的对称密钥,产生第一伪随机向量,以构建第一动态校验矩阵;
[0033] LDPC编码器设置为:根据构建的第一动态校验矩阵对发送的消息进行编码,发送编码的消息至接收端,编码的消息中包含n个发送码字,n为正整数;
[0034] 其中,同步编译码时接收端的第i个接收码字的第二码字同步值根据第二初始化向量确定,i为小于或等于n的正整数,第二初始化向量包含预先设定的同步余量,同步余量用于使第二码字同步值小于或等于第一码字同步值。
[0035] 还一方面,本公开实施例还提供一种同步编译码的接收端,适用于面向动态随机矩阵的传输,包括:第二码字同步单元、第二伪随机向量发生器、低密度奇偶校验码LDPC译码器;其中,
[0036] 第二码字同步单元设置为:根据第二初始化向量确定第i个接收码字的第二码字同步值,其中,第二初始化向量包含预先设定的同步余量,同步余量用于使第二码字同步值小于或等于第一码字同步值,第i个接收码字为接收端接收到的第i个码字;
[0037] 第二伪随机向量发生器设置为:根据对称密钥与第二码字同步值产生第二伪随机向量,以构建第二动态校验矩阵;
[0038] LDPC译码器设置为:根据第二动态校验矩阵对来自发送端的消息中的第i个接收码字进行译码,得到第i个接收码字的接收明文及译码过程中的中间硬判决译码结果;根据中间硬判决译码结果与第二动态校验矩阵,更新第i+1个接收码字的第二码字同步值;
[0039] 其中,所述同步编译码的发送端的第一码字同步值由第一初始化向量和发送码字序号确定。
[0040] 本公开实施例设置译码器根据预先设定的同步余量确定第二初始化向量,同步余量用于使第二码字同步值小于或等于第一码字同步值,保证了接收端译码器的码字同步值是对发送端码字同步值的单向搜索,为实现接收端译码器的快速同步提供了技术支持;通过更新第二码字同步值,保证了接收端同步值对发送端同步值的持续追踪同步,有效解决了码字丢失时接收端的同步问题;进一步的,引入共享随机数作为初始化向量,保证不同校验矩阵的随机选取,保证每次传输任务使用的动态校验矩阵不同,提升了系统的安全性能。
[0041] 本申请的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本申请而了解。本申请的其他优点可通过在说明书以及附图中所描述的方案来实现和获得。

附图说明

[0042] 附图用来提供对本申请技术方案的理解,并且构成说明书的一部分,与本申请的实施例一起用于解释本申请的技术方案,并不构成对本申请技术方案的限制。
[0043] 图1为相关技术基于动态随机矩阵的物理层安全传输系统的示意图;
[0044] 图2为本公开实施例一同步编译码的方法的流程图
[0045] 图3为本公开实施例另一同步编译码的方法的流程图;
[0046] 图4为本公开实施例再一同步编译码的方法的流程图;
[0047] 图5为本公开实施例发送端的组成结构示意图;
[0048] 图6为本公开实施例接收端的组成结构示意图;
[0049] 图7本公开实施例基础校验矩阵的示意图;
[0050] 图8本公开实施例中同步过程示意图。

具体实施方式

[0051] 本申请描述了多个实施例,但是该描述是示例性的,而不是限制性的,并且对于本领域的普通技术人员来说显而易见的是,在本申请所描述的实施例包含的范围内可以有更多的实施例和实现方案。尽管在附图中示出了许多可能的特征组合,并在具体实施方式中进行了讨论,但是所公开的特征的许多其它组合方式也是可能的。除非特意加以限制的情况以外,任何实施例的任何特征或元件可以与任何其它实施例中的任何其他特征或元件结合使用,或可以替代任何其它实施例中的任何其他特征或元件。
[0052] 本申请包括并设想了与本领域普通技术人员已知的特征和元件的组合。本申请已经公开的实施例、特征和元件也可以与任何常规特征或元件组合,以形成由权利要求限定的独特的发明方案。任何实施例的任何特征或元件也可以与来自其它发明方案的特征或元件组合,以形成另一个由权利要求限定的独特的发明方案。因此,应当理解,在本申请中示出和/或讨论的任何特征可以单独地或以任何适当的组合来实现。因此,除了根据所附权利要求及其等同替换所做的限制以外,实施例不受其它限制。此外,可以在所附权利要求的保护范围内进行各种修改和改变。
[0053] 此外,在描述具有代表性的实施例时,说明书可能已经将方法和/或过程呈现为特定的步骤序列。然而,在该方法或过程不依赖于本文所述步骤的特定顺序的程度上,该方法或过程不应限于所述的特定顺序的步骤。如本领域普通技术人员将理解的,其它的步骤顺序也是可能的。因此,说明书中阐述的步骤的特定顺序不应被解释为对权利要求的限制。此外,针对该方法和/或过程的权利要求不应限于按照所写顺序执行它们的步骤,本领域技术人员可以容易地理解,这些顺序可以变化,并且仍然保持在本申请实施例的精神和范围内。
[0054] 图2为本公开实施例一同步编译码的方法的流程图,适用于面向动态随机矩阵的传输,如图2所示,包括:
[0055] 步骤201、发送端根据预先设定的第一初始化向量和发送码字序号,确定第一码字同步值;
[0056] 步骤202、发送端根据确定的第一码字同步值及预先确定的对称密钥,产生第一伪随机向量,以构建第一动态校验矩阵;
[0057] 步骤203、发送端根据构建的第一动态校验矩阵对发送的消息进行编码,发送编码的消息至接收端,编码的消息中包含n个发送码字,n为正整数;
[0058] 步骤204、接收端根据第二初始化向量确定第i个接收码字的第二码字同步值,其中,第二初始化向量包含预先设定的同步余量,同步余量用于使第二码字同步值小于或等于第一码字同步值,i为小于或等于n的正整数;
[0059] 步骤205、接收端根据对称密钥与第二码字同步值产生第二伪随机向量,以构建第二动态校验矩阵;
[0060] 步骤206、接收端根据第二动态校验矩阵对来自发送端的消息中的第i个接收码字进行译码,得到第i个接收码字的接收明文及译码过程中的中间硬判决译码结果,i为正整数;
[0061] 步骤207、接收端根据中间硬判决译码结果与第二动态校验矩阵,更新第i+1个接收码字的第二码字同步值。
[0062] 本公开实施例设置译码器根据预先设定的同步余量确定第二初始化向量,同步余量用于使第二码字同步值小于或等于第一码字同步值,保证了接收端译码器的码字同步值是对发送端码字同步值的单向搜索,为实现接收端译码器的快速同步提供了技术支持;通过更新第二码字同步值,保证了接收端同步值对发送端同步值的持续追踪同步,有效解决了码字丢失时接收端的同步问题;进一步的,引入共享随机数作为初始化向量,保证不同校验矩阵的随机选取,保证每次传输任务使用的动态校验矩阵不同,提升了系统的安全性能。
[0063] 本公开实施例中的发送码字,指发送端发送的码字;接收码字至接收端接收到的码字,由于传输过程中码字可能发生包括丢失在内的情况,因此,发送码字和接收码字可能并不对应。
[0064] 图3为本公开实施例另一同步编译码的方法的流程图,适用于面向动态随机矩阵的传输,如图3所示,包括:
[0065] 步骤301、发送端根据预先设定的第一初始化向量和发送码字序号,确定第一码字同步值;
[0066] 步骤302、根据确定的第一码字同步值及预先确定的对称密钥,产生第一伪随机向量,以构建第一动态校验矩阵;
[0067] 步骤303、根据构建的第一动态校验矩阵对发送的消息进行编码,发送编码的消息至接收端,编码的消息中包含n个发送码字,n为正整数;
[0068] 其中,同步编译码时接收端的第i个接收码字的第二码字同步值根据第二初始化向量确定,i为小于或等于n的正整数,第二初始化向量包含预先设定的同步余量,同步余量用于使第二码字同步值小于或等于第一码字同步值。
[0069] 本公开实施例设置译码器根据预先设定的同步余量确定第二初始化向量,同步余量用于使第二码字同步值小于或等于第一码字同步值,保证了接收端译码器的码字同步值是对发送端码字同步值的单向搜索,为实现接收端译码器的快速同步提供了技术支持;通过更新第二码字同步值,保证了接收端同步值对发送端同步值的持续追踪同步,有效解决了码字丢失时接收端的同步问题;进一步的,引入共享随机数作为初始化向量,保证不同校验矩阵的随机选取,保证每次传输任务使用的动态校验矩阵不同,提升了系统的安全性能。
[0070] 在一种示例性实例中,本公开实施例确定第一码字同步值,包括:
[0071] 将第一初始化向量与发送码字序号求和,获得第一码字同步值。
[0072] 在一种示例性实例中,本公开实施例第一初始化向量和第二初始化向量,可以设置为发送端和接收端均能共享的一个共享随机数。在一种示例性实例中,本公开实施例可以通过可信的第三方,如基站或卫星等,将相同的随机数公开发送给发送端和接收端,作为上述共享随机数。
[0073] 在一种示例性实例中,本公开实施例:
[0074] 第一初始化向量为编码器开机时间;
[0075] 第二初始化向量为译码器开机时间与同步余量之差。
[0076] 在一种示例性实例中,本公开实施例同步余量可以由本领域技术人员根据经验设定和调整,例如,可以是1~20小时内的一个时间值,本公开实施例对此不作限制。
[0077] 本公开实施例通过引入开机时间作为初始化向量,保证每次传输任务使用的动态校验矩阵不同,提升了系统的安全性能。
[0078] 图4为本公开实施例再一同步编译码的方法的流程图,适用于面向动态随机矩阵的传输,如图4所示,包括:
[0079] 步骤401、接收端根据第二初始化向量确定第i个接收码字的第二码字同步值,其中,第二初始化向量包含预先设定的同步余量,同步余量用于使第二码字同步值小于或等于第一码字同步值,第i个接收码字为接收端接收到的第i个码字;
[0080] 步骤402、根据对称密钥与第二码字同步值产生第二伪随机向量,以构建第二动态校验矩阵;
[0081] 步骤403、根据第二动态校验矩阵对来自发送端的消息中的第i个接收码字进行译码,得到第yi个接收码字的接收明文及译码过程中的中间硬判决译码结果;
[0082] 步骤404、根据中间硬判决译码结果与第二动态校验矩阵,更新第i+1个接收码字的第二码字同步值;
[0083] 其中,同步编译码的发送端的第一码字同步值由第一初始化向量和发送码字序号确定。
[0084] 本公开实施例设置译码器根据预先设定的同步余量确定第二初始化向量,同步余量用于使第二码字同步值小于或等于第一码字同步值,保证了接收端译码器的码字同步值是对发送端码字同步值的单向搜索,为实现接收端译码器的快速同步提供了技术支持;通过更新第二码字同步值,保证了接收端同步值对发送端同步值的持续追踪同步,有效解决了码字丢失时接收端的同步问题;进一步的,引入共享随机数作为初始化向量,保证不同校验矩阵的随机选取,保证每次传输任务使用的动态校验矩阵不同,提升了系统的安全性能。
[0085] 在一种示例性实例中,本公开实施例更新第i+1个接收码字的第二码字同步值,包括:
[0086] 接收端根据第i个接收码字中间硬判决译码结果与第二动态校验矩阵,确定不满足校验关系的校验方程个数;
[0087] 接收端通过确定的不满足校验关系的校验方程个数,判断当前的第二动态校验矩阵是否与接收码字匹配;
[0088] 接收端根据判断的当前的第二动态校验矩阵是否与接收码字匹配,更新i+1个接收码字的第二码字同步值。
[0089] 在一种示例性实例中,本公开实施例判断当前的第二动态校验矩阵是否与接收码字匹配,包括:
[0090] 不满足校验关系的校验方程个数小于预先设定的错误限时,确定第二动态校验矩阵与接收码字匹配;
[0091] 不满足校验关系的校验方程个数大于或等于错误门限时,确定第二动态校验矩阵与接收码字匹配失败。
[0092] 在一种示例性实例中,本公开实施例更新第i+1个接收码字的第二码字同步值,包括:
[0093] 接收端判断当前的第二动态校验矩阵与接收码字匹配,确定码字同步成功,更新[0094] 接收端判断当前的第二动态校验矩阵与接收码字匹配失败,确定码字同步失败,更新
[0095] 其中, 中右上标表示接收码字序号, 表示第i个接收码字的第二码字同步值。
[0096] 在一种示例性实例中,本公开实施例第一初始化向量和第二初始化向量包括:通过预先方式确定的共享随机数。
[0097] 在一种示例性实例中,本公开实施例,第一初始化向量为编码器开机时间;第二初始化向量为译码器开机时间与同步余量之差。
[0098] 在一种示例性实例中,本公开实施例第一个接收码字的第二码字同步值为[0099] 其中, 中右上标表示接收码字序号, 表示第一个接收码字的第二码字同步值,IVdec表示第二初始化向量。
[0100] 本公开实施例还提供一种计算机存储介质,计算机存储介质中存储有计算机程序,计算机程序被处理器执行时实现上述同步编译码的方法。
[0101] 本公开实施例还提供一种终端,包括:存储器和处理器,存储器中保存有计算机程序;
[0102] 其中,
[0103] 处理器被配置为执行存储器中的计算机程序;
[0104] 计算机程序被处理器执行时实现如上述同步编译码的方法。
[0105] 本公开实施例还提供一种同步编译码的发送端,适用于面向动态随机矩阵的传输,包括:第一码字同步单元、第一伪随机向量发生器、低密度奇偶校验码LDPC编码器;其中,
[0106] 第一码字同步单元设置为:根据预先设定的第一初始化向量和发送码字序号,确定第一码字同步值;
[0107] 第一伪随机向量发生器设置为:根据确定的第一码字同步值及预先确定的对称密钥,产生第一伪随机向量,以构建第一动态校验矩阵;
[0108] LDPC编码器设置为:根据构建的第一动态校验矩阵对发送的消息进行编码,发送编码的消息至接收端,编码的消息中包含n个发送码字,n为正整数;
[0109] 其中,同步编译码时接收端的第i个接收码字的第二码字同步值根据第二初始化向量确定,i为小于或等于n的正整数,第二初始化向量包含预先设定的同步余量,同步余量用于使第二码字同步值小于或等于第一码字同步值。
[0110] 本公开实施例设置译码器根据预先设定的同步余量确定第二初始化向量,同步余量用于使第二码字同步值小于或等于第一码字同步值,保证了接收端译码器的码字同步值是对发送端码字同步值的单向搜索,为实现接收端译码器的快速同步提供了技术支持;通过更新第二码字同步值,保证了接收端同步值对发送端同步值的持续追踪同步,有效解决了码字丢失时接收端的同步问题;进一步的,引入共享随机数作为初始化向量,保证不同校验矩阵的随机选取,保证每次传输任务使用的动态校验矩阵不同,提升了系统的安全性能。
[0111] 在一种示例性实例中,本公开实施例第一码字同步单元是设置为:
[0112] 将第一初始化向量与发送码字序号求和,获得第一码字同步值。
[0113] 在一种示例性实例中,本公开实施例第一初始化向量和第二初始化向量包括:通过预先方式确定的共享随机数。
[0114] 在一种示例性实例中,本公开实施例:
[0115] 第一初始化向量为编码器开机时间;
[0116] 第二初始化向量为译码器开机时间与同步余量之差。
[0117] 本公开实施例还提供一种同步编译码的接收端,适用于面向动态随机矩阵的传输,包括:第二码字同步单元、第二伪随机向量发生器、LDPC译码器;其中,[0118] 第二码字同步单元设置为:根据第二初始化向量确定第i个接收码字的第二码字同步值,其中,第二初始化向量包含预先设定的同步余量,同步余量用于使第二码字同步值小于或等于第一码字同步值,第i个接收码字为接收端接收到的第i个码字;
[0119] 第二伪随机向量发生器设置为:根据对称密钥与第二码字同步值产生第二伪随机向量,以构建第二动态校验矩阵;
[0120] LDPC译码器设置为:根据第二动态校验矩阵对来自发送端的消息中的第i个接收码字进行译码,得到第i个接收码字的接收明文及译码过程中的中间硬判决译码结果;根据中间硬判决译码结果与第二动态校验矩阵,更新第i+1个接收码字的第二码字同步值;
[0121] 其中,同步编译码的发送端的第一码字同步值由第一初始化向量和发送码字序号确定。
[0122] 本公开实施例设置译码器根据预先设定的同步余量确定第二初始化向量,同步余量用于使第二码字同步值小于或等于第一码字同步值,保证了接收端译码器的码字同步值是对发送端码字同步值的单向搜索,为实现接收端译码器的快速同步提供了技术支持;通过更新第二码字同步值,保证了接收端同步值对发送端同步值的持续追踪同步,有效解决了码字丢失时接收端的同步问题;进一步的,引入共享随机数作为初始化向量,保证不同校验矩阵的随机选取,保证每次传输任务使用的动态校验矩阵不同,提升了系统的安全性能。
[0123] 在一种示例性实例中,本公开实施例LDPC译码器设置为更新第i+1个接收码字的第二码字同步值,包括:
[0124] 接收端根据第i个接收码字中间硬判决译码结果与第二动态校验矩阵,确定不满足校验关系的校验方程个数;
[0125] 接收端通过确定的不满足校验关系的校验方程个数,判断当前的第二动态校验矩阵是否与接收码字匹配;
[0126] 接收端根据判断的当前的第二动态校验矩阵是否与接收码字匹配,更新i+1个接收码字的第二码字同步值。
[0127] 在一种示例性实例中,本公开实施例LDPC译码器设置为判断当前的第二动态校验矩阵是否与接收码字匹配,包括:
[0128] 不满足校验关系的校验方程个数大于或等于预先设定的错误门限时,确定第二动态校验矩阵与接收码字匹配;
[0129] 不满足校验关系的校验方程个数小于错误门限时,确定第二动态校验矩阵与接收码字匹配失败。
[0130] 在一种示例性实例中,本公开实施例LDPC译码器设置为更新第i+1个接收码字的第二码字同步值,包括:
[0131] 接收端判断当前的第二动态校验矩阵与接收码字匹配,确定码字同步成功,更新[0132] 接收端判断当前的第二动态校验矩阵与接收码字匹配失败,确定码字同步失败,更新
[0133] 其中, 中右上标表示接收码字序号, 表示第i个接收码字的第二码字同步值。
[0134] 在一种示例性实例中,本公开实施例第一初始化向量和第二初始化向量包括:通过预先方式确定的共享随机数。
[0135] 在一种示例性实例中,本公开实施例中的第一初始化向量为编码器开机时间,第二初始化向量为译码器开机时间与同步余量之差。
[0136] 在一种示例性实例中,本公开实施例第一个接收码字的第二码字同步值为[0137] 其中, 中右上标表示接收码字序号, 表示第一个接收码字的第二码字同步值,IVdec表示第二初始化向量。
[0138] 以下通过应用示例对本公开实施例进行简要说明,应用示例仅用于陈述本公开实施例,并不用于限定本公开实施例的保护范围。
[0139] 应用示例本公开实施例提出了一种同步编译码的方法,适用于面向动态随机矩阵的传输,解决了原有安全传输的码字同步问题,可以实现在传输过程中码字丢失时接收端译码器的正确同步与译码;通过引入开机时间作为初始化向量,保证每次传输任务使用的动态校验矩阵不同,提升了系统的安全性能。
[0140] 图5为本公开实施例发送端的组成结构示意图,图6为本公开实施例接收端的组成结构示意图,参见图5和图6,本公开实施例同步编译码的方法,包括:
[0141] 在发送端,设置编码器开机时间为第一初始化向量IVenc,第一码字同步值 为第一初始化向量IVenc与发送码字序号i之和;第一伪随机向量发生器参照相关技术,根据对称密钥与第一码字同步值 产生第一伪随机向量;通过第一校验矩阵构造器构建第一动态校验矩阵;LDPC编码器根据第一动态校验矩阵对消息进行编码;
[0142] 在接收端,设置译码器开机时间与预先设定的同步余量之差为第二初始化向量IVdec,保证接收端第二码字同步值始终不超过发送端的第一码字同步值;设置接收到第一消息时,接收端第二码字同步值 为第二初始化向量IVdec+1;接收到第二帧消息时,接收端第二伪随机向量发生器根据对称密钥与第二码字同步值 产生第二伪随机向量,通过第二校验矩阵构造器构建第二动态校验矩阵,LDPC译码器根据第二动态校验矩阵对接收码字进行译码得到接收明文,并在译码过程中得到中间硬判决译码结果;根据中间硬判决译码结果与第二动态校验矩阵,计算不满足校验关系的校验方程个数,通过与设定的错误门限比较判断当前第二动态校验矩阵是否与接收码字匹配,并输出反馈信号;根据反馈信号,按照预设策略更新下一个接收码字的第二码字同步值。
[0143] 以下就本公开实施例同步编译码方法所使用的符号进行定义说明。同步编译码开始之前,发送端与接收端通过密钥交换协议约定长度为l比特的对称密钥k;发送端与接收端约定大小为mB×nB的基础校验矩阵HB,以及矩阵扩展因子T;码字长度n=nB·T,信息位长度k=(nB‑mB)·T,校验位长度m=mB·T,发送端的第一动态校验矩阵和接收端的第二动态检验矩阵的大小均为m×n;用于构建第一动态校验矩阵和第二动态校验矩阵的伪随机向量长度为r=J·log2T,其中,J为基础校验矩阵HB中元素“1”的个数;发送端开机时间为Timeenc,发送端的第一初始化向量为IVenc,且对第i个发送明文mi,设定的第一码字同步值为 构建的第一动态校验矩阵为 生成的发送码字为xi;接收端开机时间为Timedec,接收端的第二初始化向量为IVdec,且对第i个接收码字yi,设定的第二码字同步值为构建的第二动态校验矩阵为 接收明文为m′i。
[0144] 本公开实施例同步编译码方法,发送端产生发送码字处理包括:
[0145] 1)设定发送端的第一初始化向量为IVenc为编码器开机时间Timeenc,即IVenc=Timeenc;
[0146] 2)发送端对消息按k比特一段分段,得到发送明文序列(m1,m2,…,mi,…),序号i=1,2,…;
[0147] 3)发送端的第一伪随机向量发生器根据对称密钥k和第一码字同步值产生第一伪随机向量,第一伪随机向量包含长为r比特的第一控制伪随机
向量 和长为k比特的第一加密伪随机 向量 即第一伪随机 向量
[0148] 4)发送端校验矩阵构造器根据第一控制伪随机向量 对基础校验矩阵HB进行扩展,产生第i个第一动态校验矩阵 即 并进一步得到对应的生成矩阵;第一动态校验矩阵可以通过以下方式构建:将第一控制伪随机向量 按log2T比特一段进行划分,一共J段,每段对应基础校验矩阵HB中的一个“1”元素;将基础校验矩阵HB中的每个元素扩展成T×T的循环矩阵,其中元素“0”扩展为全零矩阵,元素“1”扩展为行重为1的循环矩阵,且第一行1的位置由第一控制伪随机向量 对应段的值决定;
[0149] 5)第一加密伪随机向量 与发送明文mi进行逐比特异或操作,得到长为k比特的密文vi;LDPC编码器根据密文vi和第一控制伪随机向量 对应的生成矩阵生成第i个发送码字xi。
[0150] 接收端译码的处理包括:
[0151] 6)由发送码字组成的发送码字序列(x1,x2,…,xi,…)经主信道传输后,接收端得到接收码字序列(y1,y2,…,yi,…);
[0152] 7)设定接收端的第二初始化向量IVdec为译码器开机时间Timedec与设定的同步余量ΔTime之差,即第二初始化向量IVdec=Timedec‑ΔTime,其中,ΔTime应使得IVdec≤IVenc,即Timedec‑ΔTime≤Timeenc;
[0153] 8)设定第一个接收码字y1的第二码字同步值为
[0154] 9)对于第i个接收码字yi,i=1,2,…,接收端根据基础校验矩阵HB、对称密钥k,以及第二码字同步值 通过已有的LDPC迭代译码算法对yi进行信道译码,并输出中间硬判决译码结果gi与接收明文m′i,可以包括:
[0155] 9.1)根据对称密钥k与第二码字同步值 伪随机数发生器通过对称加密算法产生第二伪随机向量,第二伪随机向量包括长度为r比特的第二控制伪随机向量 和长度为k比特的第二加密伪随机向量 即
[0156] 9.2)根据基础校验矩阵HB和第二控制伪随机向量 构建第二动态校验矩阵[0157] 9.3)LDPC译码器根据第二动态校验矩阵 对接收码字yi进行迭代译码,设定总迭代次数为ITERtotal;译码算法采用已有的LDPC软判决迭代算法,如BP译码算法、最小和译码算法等;
[0158] 9.4)在ITERcheck次迭代后译码器得到n比特中间硬判决译码结果gi,其中ITERcheck
[0159] 9.5)接收密文v′i与第二加密伪随机向量 进行逐比特异或操作,得到k比特接收明文m′i;
[0160] 10)根据步骤9)产生的中间硬判决译码结果gi和第二动态校验矩阵 计算不满足校验关系的校验方程个数: 其中为1×m的全1向量;
[0161] 11)设定错误阈值Err_threshold,Err_threshold为整数且0≤Err_threshold≤m;若wi≤Err_threshold,表明第二动态校验矩阵 与接收码字yi相匹配,同步成功,令反馈信号fi=1;否则同步失败,令反馈信号fi=0;
[0162] 12)根据步骤11)产生的反馈信号fi,更新下一接收码字yi+1的第二码字同步值具体方法为:若fi=1,表明上一码字已正确同步,更新 若fi=0,即上一码字同步失败,更新
[0163] 本公开实施例中发送端发送PN23伪随机序列,采用的基本校验矩阵HB如图7所示,大小为64×96,即nB=64,mB=96;基本校验矩阵HB中每个黑色方代表“1”元素,其总个数为J=256,其余为“0”元素;矩阵扩展因子T=32,用于构建动态校验矩阵的伪随机向量r长度为r=Jlog2T=1280比特;通过矩阵扩展构造可得到2048×3072的动态校验矩阵H,对应码率为1/3,编码参数为(3072,1024)的LDPC码,码长n=3072,信息位长度k=1024。采用国密SM4分组密码算法作为伪随机向量生成算法;本公开实施例中可高效同步的基于动态矩阵编码的安全通信方法,包括:
[0164] (1)在发送端,配置编码器的IVenc值为分钟形式的编码器开机时间Timeenc;
[0165] (2)发送端对数据源产生的PN23伪随机序列按照k=1024比特一段进行划分,得到发送明文序列(m1,m2,…,mi,…);
[0166] (3)根据发送明文mi生成n=3072比特发送码字xi,处理流程为:
[0167] (3.1)设定第一码字同步值 根据第一码字同步值 与对称密钥k,第一伪随机向量发生器产生第一伪随机向量,第一伪随机向量包含r=1280比特的第一控制伪随机向量 和k=1024比特的第一加密伪随机向量
[0168] (3.2)校验矩阵构造器根据基础校验矩阵HB和第一控制伪随机向量 构造2048×3072的第一动态校验矩阵 具体方法为:将第一控制伪随机向量 按5比特一段进行划分,一共256段,每段对应基础校验矩阵HB中的一个“1”元素;将HB中的每个元素扩展成32×32的循环矩阵,其中元素“0”扩展为全零矩阵,元素“1”扩展为行重为1的循环矩阵,且第一行1的位置由 对应段的值决定;
[0169] (3.3)第一加密伪随机向量 与发送明文mi逐比特异或,得到k=1024比特的密文vi。
[0170] (3.4)根据第一动态校验矩阵 得到对应的生成矩阵,LDPC编码器根据获得的生成矩阵对密文vi进行编码,得到n=3072比特发送码字xi;
[0171] (4)将发送码字序列(x1,x2,…,xi,…)发送到主信道进行传输;
[0172] (5)在接收端,将到达的接收码字按照先后顺序记为(y1,y2,…,yi,…),每个接收码字yi为n=3072维实数向量;
[0173] (6)在接收端,配置译码器的IVdec为分钟形式的译码器开机时间Timedec与同步余量ΔTime之差,ΔTime设定为20;
[0174] (7)在接收端,对每个接收码字yi进行联合纠错加密译码,得到对应的k=1024比特接收明文m′i,包括:
[0175] (7.1)伪随机数发生器根据对称密钥k与第二码字同步值 产生第二伪随机向量,第二伪随机向量包括长为1280比特的第二控制伪随机向量 与长为1024比特的第二加密伪随机向量
[0176] (7.2)接收端校验矩阵构造器根据第二控制伪随机向量 构造大小为2048×3072的第二动态校验矩阵
[0177] (7.3)LDPC译码器对接收码字yi进行LDPC译码,在第ITERcheck=20次迭代后得到长为3072比特的中间迭代结果gi,在第ITERtotal=60次迭代后输出长为1024比特的接收密文v′i;
[0178] (7.4)接收密文v′i与第二加密伪随机向量ui逐比特异或,得到接收明文m′i;
[0179] (8)根据LDPC译码器的中间迭代结果gi进行第二码字同步值的实时更新,可以包括:
[0180] (8.1)计算 并将wi与错误阈值Errthreshold=700比较。若wi≤700,令反馈信号fi=1;若wi>700,令反馈信号fi=0;
[0181] (8.2)根据反馈信号fi的取值,确定下一接收码字的第二码字同步值:若fi=1,令若fi=0,令
[0182] 为了说明本公开实施例同步编译码方法与系统具有高效的同步能力,设置每一码字丢失的概率为0.1,图8展示了前50个码字的同步过程;由于码字丢失,接收端只接收到45个码字,图中曲线8‑1表示编码器同步值,曲线8‑2表示译码器同步值,两条曲线重合部分为同步阶段。从图中可以看出,由于开机时间不同步,译码器初始同步值与编码器初始同步值相差10;在第12个码字之前,译码器的同步曲线斜率是编码器同步曲线的2倍,从而能够完成同步值的快速搜索,并在第12个码字处完成同步。之后,在第28、第37个接收码字处各发生了连续两个码字的丢失,但译码器均能在三步以内重新完成同步。因此,本方法提出的同步编译码方法,能够有效地解决实际通信场景中动态随机矩阵安全传输系统的码字同步问题。
[0183] 此外,多次使用该系统进行通信时,由于开机时间不同,构建的伪随机序列和动态校验矩阵也不同,防止窃听者根据相同序号的发送码字破译校验矩阵,有效地提升了系统的安全性。
[0184] 本公开实施例设置译码器的初始化向量为译码器开机时间与同步余量之差,设置编码器码字同步值为编码器开机时间与码字序号之和,伪随机向量生成器根据码字同步值与对称密钥产生伪随机向量,构建动态校验矩阵,对发送明文进行编码,能够保证接收端译码器的码字同步值是对发送端码字同步值的单向搜索,方便接收端译码器的快速同步。码字同步值的设计引入了时间随机性,保证不同时间通信时校验矩阵的随机选取,提升了系统的安全性。译码器在迭代过程中输出中间迭代结果;将中间迭代结果与动态校验矩阵的乘积结果与错误阈值比较,判断校验矩阵是否与码字匹配,并输出反馈信号;根据反馈信号更新下一接收码字的码字同步值,保证了接收端同步值对发送端同步值的持续追踪同步,能够有效解决码字丢失时接收端的同步问题。
[0185] 本领域普通技术人员可以理解,上文中所公开方法中的全部或某些步骤、系统、装置中的功能模块/单元可以被实施为软件固件硬件及其适当的组合。在硬件实施方式中,在以上描述中提及的功能模块/单元之间的划分不一定对应于物理组件的划分;例如,一个物理组件可以具有多个功能,或者一个功能或步骤可以由若干物理组件合作执行。某些组件或所有组件可以被实施为由处理器,如数字信号处理器或微处理器执行的软件,或者被实施为硬件,或者被实施为集成电路,如专用集成电路。这样的软件可以分布在计算机可读介质上,计算机可读介质可以包括计算机存储介质(或非暂时性介质)和通信介质(或暂时性介质)。如本领域普通技术人员公知的,术语计算机存储介质包括在用于存储信息(诸如计算机可读指令、数据结构、程序模块或其他数据)的任何方法或技术中实施的易失性和非易失性、可移除和不可移除介质。计算机存储介质包括但不限于RAM、ROM、EEPROM、闪存或其他存储器技术、CD‑ROM、数字多功能盘(DVD)或其他光盘存储、磁盒、磁带、磁盘存储或其他磁存储装置、或者可以用于存储期望的信息并且可以被计算机访问的任何其他的介质。此外,本领域普通技术人员公知的是,通信介质通常包含计算机可读指令、数据结构、程序模块或者诸如载波或其他传输机制之类的调制数据信号中的其他数据,并且可包括任何信息递送介质。
QQ群二维码
意见反馈