一种基于密码本置换加解密的跨网隧道报文传输方法与流程

allin2024-05-16  90



1.本发明涉及数据通信技术领域,具体涉及一种基于密码本置换加解密的跨网隧道报文传输方法。


背景技术:

2.私有的n2n隧道协议,解决了不同网系之间路由隔离,并且是物理隔离的情况下的跨网通信问题。但是在该方案中,数据是以明文的方式进行传输的,并不能保证跨网数据传输的保密性。


技术实现要素:

3.针对现有技术中的上述不足,本发明提供的一种基于密码本置换加解密的跨网隧道报文传输方法解决了通过n2n隧道协议进行跨网通信,不能保证跨网数据传输的保密性的问题。
4.为了达到上述发明目的,本发明采用的技术方案为:一种基于密码本置换加解密的跨网隧道报文传输方法,包括以下步骤:
5.s1、生成密码本矩阵;
6.s2、采用密码本矩阵将隧道报文中待做置换加密的数据单元进行加密,得到加密隧道报文;
7.s3、通过加密方发送携带密码本矩阵的唯一标识的加密隧道报文;
8.s4、通过解密方接收隧道报文,并基于密码本矩阵的唯一标识,对加密隧道报文进行解密。
9.进一步地,所述步骤s1中密码本矩阵的阶数为n阶,n=2m,m》=1,n阶密码本矩阵包含0到2
n-1的所有数据,m为整数。
10.进一步地,所述步骤s1中在生成密码本矩阵后,采用初等行变化和初等列变换对密码本矩阵进行更新,在每生成一个新的密码本矩阵时,均会产生一个相应的密码本矩阵的唯一标识。
11.上述进一步方案的有益效果为:通过密码本矩阵的唯一标识可确定相应的密码本矩阵,保证双方的数据加解密过程正常。
12.进一步地,所述密码本矩阵的唯一标识为md5值。
13.上述进一步方案的有益效果为:将密码本矩阵的md5值作为密码本矩阵的唯一标识,在做跨网隧道传输时,加密方需要将md5值携带在隧道报文中,以便接收方能通过该md5值选择正确的密码本矩阵进行解密。
14.进一步地,所述步骤s2包括以下分步骤:
15.s21、在隧道报文中获取待置换加密的数据单元;
16.s22、在密码本矩阵中找到数据单元在密码本矩阵中的坐标;
17.s23、根据数据单元在密码本矩阵中的坐标,计算被置换单元;
18.s24、将被置换单元替换隧道报文中的数据单元,得到加密隧道报文。
19.进一步地,所述步骤s23中计算被置换单元的公式为:
20.m=(x《《(n/2))|y
21.其中,m为被置换单元,x为数据单元在密码本矩阵中的横坐标,y为数据单元在密码本矩阵中的纵坐标,n为密码本矩阵的阶数,《《为左移,|为或运算。
22.进一步地,所述步骤s4包括以下分步骤:
23.s41、通过解密方接收隧道报文;
24.s42、根据隧道报文中携带的密码本矩阵的唯一标识,找到对应的密码本矩阵;
25.s43、根据对应的密码本矩阵阶数和被置换单元,计算出用于加密的数据单元在对应的密码本矩阵中的坐标;
26.s44、根据计算出的用于加密的数据单元在对应的密码本矩阵中的坐标,将被置换单元还原成数据单元。
27.综上,本发明的有益效果为:
28.(1)、本发明通过使用预制及定时更新的密码本矩阵,对跨网传输的原始业务数据做置换加密,以达到隐藏原始业务数据,保护跨网业务数据安全的目的。
29.(2)、通过本发明,不仅可以降低传统加密时的性能损耗,还能避免密码本在网络上传输,导致密码本泄露,定时更新密码本也能有效降低密码本被攻破的风险。极大加强跨网隧道传输的安全性及转发性能。
附图说明
30.图1为一种基于密码本置换加解密的跨网隧道报文传输方法的流程图。
具体实施方式
31.下面对本发明的具体实施方式进行描述,以便于本技术领域的技术人员理解本发明,但应该清楚,本发明不限于具体实施方式的范围,对本技术领域的普通技术人员来讲,只要各种变化在所附的权利要求限定和确定的本发明的精神和范围内,这些变化是显而易见的,一切利用本发明构思的发明创造均在保护之列。
32.如图1所示,一种基于密码本置换加解密的跨网隧道报文传输方法,包括以下步骤:
33.s1、生成密码本矩阵;
34.步骤s1中密码本矩阵的阶数为n阶,n=2m,m》=1,n阶密码本矩阵包含0到2
n-1的所有数据,m为整数,n为偶数。例如,n=16、256、65536等,n=16时,密码本矩阵的大小为16*16,16*16的密码本矩阵可以置换1字节的数据;n=256时,密码本矩阵的大小为256*256,256*256的密码本矩阵可以置换2字节的数据;n=65536时,密码本矩阵的大小为65536*65536,65536*65536的密码本矩阵可以置换4字节的数据。
35.以16*16的密码矩阵为例,如下表1所示。用x表示横轴,y表示纵轴,(x,y)就可以表示密码本矩阵中的一个数字。
36.表1
[0037][0038]
步骤s1中在生成密码本矩阵后,会进行动态更新,采用初等行变化和初等列变换对密码本矩阵进行更新,初等行变化和初等列变换的次数根据保密情况设置,多次进行初等行变化和初等列变换,可进一步提高保密性,在每生成一个新的密码本矩阵时,均会产生一个相应的密码本矩阵的唯一标识。密码本矩阵的唯一标识为md5值。
[0039]
密码本矩阵中的数据均用十六进制数表示,生成的密码本矩阵需完整的表示出数据单元的所有数据。根据被置换数据的大小,确定密码本矩阵的阶数,若数据单元大小为1字节,则大小为16*16的密码本矩阵需包含0到ff的所有数据,因此,可知,16*16密码本矩阵是256*256密码本矩阵的子集,同样256*256密码本矩阵也是65536*65536密码本矩阵的子集。
[0040]
密码本矩阵中数据可以随机排列,以增强密码本矩阵的随机性,降低密码本被破解的可能性,提高加密方法的安全性。
[0041]
为了避免在跨网数据转发的过程中,去生成密码本矩阵,可以在系统初始化的过程中就根据不同大小数据单元的指定不同的常量m,预先生成好密码本矩阵。
[0042]
加解密双方,生成密码本矩阵时应遵循同一规则,更新时,加解密双方同步进行,以保证密码本矩阵的统一性,确保加解密的正常进行。
[0043]
确定好用于置换加密的密码本矩阵之后,就确定了被置换单元的大小为n/2bit,根据被置换单元的大小,确保需要加密的数据长度是被置换单元的整数倍,不足的时候需要对被加密数据做填充,填充数据长度为0~n/2-1。
[0044]
s2、采用密码本矩阵将隧道报文中待做置换加密的数据单元进行加密,得到加密隧道报文;
[0045]
步骤s2包括以下分步骤:
[0046]
s21、在隧道报文中获取待置换加密的数据单元;
[0047]
s22、在密码本矩阵中找到数据单元在密码本矩阵中的坐标;
[0048]
s23、根据数据单元在密码本矩阵中的坐标,计算被置换单元;
[0049]
步骤s23中计算被置换单元的公式为:
[0050]
m=(x《《(n/2))|y
[0051]
其中,m为被置换单元,x为数据单元在密码本矩阵中的横坐标,y为数据单元在密码本矩阵中的纵坐标,n为密码本矩阵的阶数,《《为左移,|为或运算。
[0052]
s24、将被置换单元替换隧道报文中的数据单元,得到加密隧道报文。
[0053]
在隧道报文中存在多个需要加密的数据单元时,重复进行步骤s21~步骤s24,将隧道报文中所有的数据单元全部加密完成后,再发送至解密方。
[0054]
s3、通过加密方发送携带密码本矩阵的唯一标识的加密隧道报文;
[0055]
步骤s3的具体实现方式为:密码本矩阵的唯一标识写入加密隧道报文中。
[0056]
s4、通过解密方接收隧道报文,并基于密码本矩阵的唯一标识,对加密隧道报文进行解密。
[0057]
所述步骤s4包括以下分步骤:
[0058]
s41、通过解密方接收隧道报文;
[0059]
s42、根据隧道报文中携带的密码本矩阵的唯一标识,找到对应的密码本矩阵;
[0060]
s43、根据对应的密码本矩阵阶数和被置换单元,计算出用于加密的数据单元在对应的密码本矩阵中的坐标;
[0061]
s44、根据计算出的用于加密的数据单元在对应的密码本矩阵中的坐标,将被置换单元还原成数据单元。
[0062]
在步骤s44解密后,若在加密时对数据进行了填充,在解密后,需将填充数据剥离。
[0063]
以某跨域安全网关为例。该安全网关将不同网域的终端路由隔离,控制终端用户入网,通过在不同业务处理单元之间交换跨网隧道报文,实现不同网域之间的数据互通。
[0064]
设备初始化时,生成第一个16*16的密码本矩阵,对16*16的密码本矩阵进行更新时,先做四次行变换,再做四次列变换,得到新的16*16的密码本矩阵如表2。
[0065]
四次行变换为:r0、r1、r2、r3、r4、r5、r6、r7依次为第1行、第2行、第3行、第4行、第5行、第6行、第7行,为交换。
[0066]
四次列变换为:c0、c1、c2、c3、c4、c5、c6、c7依次为第1列、第2列、第3列、第4列、第5列、第6列、第7列。
[0067]
表2
[0068][0069]
当密码本矩阵过期时,需要再次更新密码本矩阵,第k次对密码本矩阵四次行变换,如下所示:r代表行。行变换时的下标大于密码本矩阵的阶数n时,取n的余数作为下标。
[0070]
然后做4次列变换,如下所示:然后做4次列变换,如下所示:c代表列,为第k列与第1+k列交换。列变换时的下标大于密码本矩阵的阶数n时,取n的余数作为下标
[0071]
隧道报文中待置换加密的数据单元为:0x12 0x34 0x56 0x78 0x90。使用s2的加密方法,对该数据单元进行加密,得到被置换单元:0x2e 0x4c 0x6a 0x88 0x06。

技术特征:
1.一种基于密码本置换加解密的跨网隧道报文传输方法,其特征在于,包括以下步骤:s1、生成密码本矩阵;s2、采用密码本矩阵将隧道报文中待做置换加密的数据单元进行加密,得到加密隧道报文;s3、通过加密方发送携带密码本矩阵的唯一标识的加密隧道报文;s4、通过解密方接收隧道报文,并基于密码本矩阵的唯一标识,对加密隧道报文进行解密。2.根据权利要求1所述的基于密码本置换加解密的跨网隧道报文传输方法,其特征在于,所述步骤s1中密码本矩阵的阶数为n阶,n=2
m
,m>=1,n阶密码本矩阵包含0到2
n-1的所有数据,m为整数。3.根据权利要求1所述的基于密码本置换加解密的跨网隧道报文传输方法,其特征在于,所述步骤s1中在生成密码本矩阵后,采用初等行变化和初等列变换对密码本矩阵进行更新,在每生成一个新的密码本矩阵时,均会产生一个相应的密码本矩阵的唯一标识。4.根据权利要求3所述的基于密码本置换加解密的跨网隧道报文传输方法,其特征在于,所述密码本矩阵的唯一标识为md5值。5.根据权利要求1所述的基于密码本置换加解密的跨网隧道报文传输方法,其特征在于,所述步骤s2包括以下分步骤:s21、在隧道报文中获取待置换加密的数据单元;s22、在密码本矩阵中找到数据单元在密码本矩阵中的坐标;s23、根据数据单元在密码本矩阵中的坐标,计算被置换单元;s24、将被置换单元替换隧道报文中的数据单元,得到加密隧道报文。6.根据权利要求5所述的基于密码本置换加解密的跨网隧道报文传输方法,其特征在于,所述步骤s23中计算被置换单元的公式为:m=(x<<(n/2))|y其中,m为被置换单元,x为数据单元在密码本矩阵中的横坐标,y为数据单元在密码本矩阵中的纵坐标,n为密码本矩阵的阶数,<<为左移,|为或运算。7.根据权利要求5所述的基于密码本置换加解密的跨网隧道报文传输方法,其特征在于,所述步骤s4包括以下分步骤:s41、通过解密方接收隧道报文;s42、根据隧道报文中携带的密码本矩阵的唯一标识,找到对应的密码本矩阵;s43、根据对应的密码本矩阵阶数和被置换单元,计算出用于加密的数据单元在对应的密码本矩阵中的坐标;s44、根据计算出的用于加密的数据单元在对应的密码本矩阵中的坐标,将被置换单元还原成数据单元。

技术总结
本发明公开了一种基于密码本置换加解密的跨网隧道报文传输方法,包括以下步骤:S1、生成密码本矩阵;S2、采用密码本矩阵将隧道报文中待做置换加密的数据单元进行加密,得到加密隧道报文;S3、通过加密方发送携带密码本矩阵的唯一标识的加密隧道报文;S4、通过解密方接收隧道报文,并基于密码本矩阵的唯一标识,对加密隧道报文进行解密;本发明解决了通过N2N隧道协议进行跨网通信,不能保证跨网数据传输的保密性的问题。的保密性的问题。的保密性的问题。


技术研发人员:任宇豪 芦伟 张晋 陈世伟
受保护的技术使用者:深圳市风云实业有限公司
技术研发日:2022.03.16
技术公布日:2022/7/5
转载请注明原文地址: https://www.8miu.com/read-13660.html

最新回复(0)