一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种数据报文验证传输方法与流程

2022-11-30 22:13:23 来源:中国专利 TAG:


1.本发明涉及ip报文通信技术领域,具体涉及一种数据报文验证传输方法。


背景技术:

2.ip报文在通信过程中,为了保证安全性和提高服务质量一般需要对其承载的业务类别进行区分、对报文的来源合法性进行鉴别以及对数据完整性进行保护以防止被篡改等。虽然通过ipsec隧道加密技术可以完成来源合法性验证与数据完整性保护,但ipsec隧道加密以后,原报文来源、业务类别、数据完整性保护的hmac校验码等信息被加密封装,只有到了接收端解密后才能得到,所有通信中间节点无法进行相应检测与确认。
3.在ip通信网络中为了提高服务质量保障以及对业务精细管控的能力,需要对ip报文承载的业务类别进行准确识别,一般通过其上层协议(udp和tcp)及端口号进行业务的区分,更细致的业务类型划分可能需要进一步对报文载荷进行分析。
4.另一方面,为了传输的完整性和隐蔽性,通常采用vpn封装报文(例如ipsec等)。在vpn隧道加密封装以后,这些业务类别信息都无法获取。在ip报文没有被加密时,获取这些业务相关信息的计算代价也比较大,或者由于用户业务敏感性或隐私保护等原因不便分析业务内容,同时也难以适应新业务不断变化的场景。
5.还有一种只保护传输完整性的方法,利用密码学手段,在密钥作用下对数据计算一个校验值,即密钥相关哈希运算消息认证码(hmac)方案中,虽然保证了数据的完整性和来源合法性,但一方面hmac验证码无法提供业务类型识别等语义信息,另一方面也存在密钥更新周期问题:如果更新周期太短,则密钥协商对网络通信带宽和终端的计算能力都有较大的消耗;如果更新周期太长,则难以防范报文重放攻击等风险。


技术实现要素:

6.针对现有技术中的上述不足,本发明提供的一种数据报文验证传输方法解决了现有对于报文传输过程的完整性、抗重放攻击和业务分类的问题。
7.为了达到上述发明目的,本发明采用的技术方案为:一种数据报文验证传输方法,包括以下步骤:
8.s1、根据ip报文的载荷内容,得到ip报文的染色值;
9.s2、将ip报文的载荷内容封装到隧道,并标上染色值后传输至接收端网关;
10.s3、在接收端网关处,验证染色值;
11.s4、将通过验证的封装在隧道内的ip报文进行还原。
12.进一步地,所述步骤s1包括以下分步骤:
13.s11、取ip报文的前16个字节,作为ip头部iph1;
14.s12、取ip报文载荷的前15个字节,不足的填充0至15字节,并在最后填充一个字节的有效载荷长度,作为荷载头部pl1;
15.s13、根据ip头部iph1和荷载头部pl1,计算采样哈稀sh1,sh1=hash(hashfactor,
iph1|pl1),其中,hash()为哈希函数,hashfactor为哈希因子,|为字符串加法运算;
16.s14、根据采样哈稀sh1,计算采样消息验证码sm1,sm1=mac(confusefactor,sh1|tsn|id),其中,mac()为消息验证码函数,confusefactor为混淆因子,tsn为utc时间,id为ip报文的身份标识;
17.s15、取采样消息验证码sm1前4字节,作为sm1头部sr1;
18.s16、将sm1头部sr1作为32bit无符号整数,判断作为32bit无符号整数的sm1头部sr1是否小于2
32
*r,若是,则跳转至步骤s19,若否,则跳转至步骤s17,其中,r为重型染色采样率;
19.s17、取采样消息验证码sm1末尾的数字节,作为轻型染色校验ck1;
20.s18、取轻型染色的校验ck1作为最终校验ck3,并跳转至步骤s23;
21.s19、计算ip报文哈稀ph1,ph1=hash(hashfactor,ip报文);
22.s20、根据ip报文哈稀ph1,计算ip报文消息验证码pm1,pm1=mac(confusefactor,ph1|tsn|id);
23.s21、取ip报文消息验证码pm1末尾的数字节,作为重型染色的校验ck2;
24.s22、取重型染色的校验ck2作为最终校验ck3;
25.s23、将utc时间tsn末4比特、最终校验ck3和ip报文的身份标识id嵌入到染色标记中,得到ip报文的染色值stain。
26.上述进一步的有益效果为:
27.1、哈稀函数采用带哈稀因子的,在攻击者不知晓哈稀因子的情况下,难以构造具有相同哈稀值的原始数据,同时利用哈稀简化了hmac计算量。
28.2、使用utc时间tsn计算消息验证码,提升了安全性。
29.3、utc时间tsn只传输了末4比特,而不是传输完整内容,提升了传输效率。
30.进一步地,所述步骤s3包括以下分步骤:
31.s31、在接收端网关处,获取到ip报文的时候,接收网关自己的utc时间tsn,取tsn的末4比特作为接收utc时间ltsn;从ip报文中恢复染色值stain,取出染色值stain携带的发送时的utc时间末4比特,作为报文utc时间ptsn;
32.s32、判断报文utc时间ptsn是否与接收utc时间ltsn相等,若是,则将utc时间tsn赋值给时间参数tsn2,并跳转至步骤s35,若否,则跳转至步骤s33;
33.s33、判断报文utc时间ptsn是否与(ltsn 15)mod 16相等,若是,则在utc时间tsn基础上减一赋值给时间参数tsn2,并跳转至步骤s35,若否,则跳转至步骤s34,其中,mod为取模运算;
34.s34、判断报文utc时间ptsn是否与(ltsn 1)mod 16相等,若是,则在utc时间tsn基础上加1赋值给时间参数tsn2,并跳转至步骤s35,若否,则时间错误;
35.s35、取ip报文的前16个字节,作为ip头部iph2;
36.s36、取ip报文载荷前15个字节,不足的填充0至15字节,并在最后填充一个字节的有效载荷长度,作为荷载头部pl2;
37.s37、根据ip头部iph2和荷载头部pl2,计算采样哈稀sh2,sh2=hash(hashfactor,iph2|pl2);
38.s38、根据采样哈稀sh2,计算采样消息验证码sm2,sm2=mac(confusefactor,sh2|
tsn2|id);
39.s39、取采样消息验证码sm2前4字节,作为sm2头部sr2;
40.s40、将sm2头部sr2作为32bit无符号整数,判断作为32bit无符号整数的sm2头部sr2是否小于2
32
*r,若是,则跳转至步骤s43,若否,则跳转至步骤s41;
41.s41、取采样消息验证码sm2末尾的数字节,作为轻型染色校验ck4;
42.s42、取轻型染色的校验ck4作为最终校验ck6,并跳转至步骤s47;
43.s43、计算ip报文哈稀ph2,ph2=hash(hashfactor,ip报文);
44.s44、根据ip报文哈稀ph2,计算ip报文消息验证码pm2,pm2=mac(confusefactor,ph2|tsn2|id);
45.s45、取ip报文消息验证码pm2末尾的数字节,作为重型染色的校验ck5;
46.s46、取重型染色的校验ck5作为最终校验ck6;
47.s47、若染色值stain中取出的最终校验ck3与接收方计算的最终校验ck6相同,则染色值验证通过。
48.上述进一步的有益效果为:利用接收端和发送端的时间基本同步,但可能有误差的特点,通过比较当前时间,上一个时间、下一个时间,确保了少量时间误差不影响校验,也不影响校验的效率。
49.本发明的有益效果为:
50.1、本发明通过核对ip报文携带的utc时间和染色值中utc时间的后4比特,两者在相同或者相差不大的情况,则ip报文通过第一部分验证,同时,ip报文携带的utc时间和染色值中utc时间都在实时更新,提升了ip报文被攻击的难度,从而有效避免重放攻击。
51.2、轻度染色和重度染色混合使用,平衡了计算代价和安全性。
52.3、无论轻度染色还是重度染色,都起到了消息验证码(mac)的作用,保证了报文传输的完整性。
53.4、在染色时通过报文特征,给与每个ip报文一个特定的身份标识id,将身份标识id嵌入到染色值中,即可使中间传输设备感知报文分类,也不会泄露隐私信息。
54.5、通过报文分类,有利于中间传输设备提升安全防护、服务质量保障、业务类型识别和业务态势感知等能力。
附图说明
55.图1为一种数据报文验证传输方法的流程图。
具体实施方式
56.下面对本发明的具体实施方式进行描述,以便于本技术领域的技术人员理解本发明,但应该清楚,本发明不限于具体实施方式的范围,对本技术领域的普通技术人员来讲,只要各种变化在所附的权利要求限定和确定的本发明的精神和范围内,这些变化是显而易见的,一切利用本发明构思的发明创造均在保护之列。
57.如图1所示,一种数据报文验证传输方法,包括以下步骤:
58.s1、根据ip报文的载荷内容,得到ip报文的染色值;
59.步骤s1的分步骤是在发送端执行。
60.所述步骤s1包括以下分步骤:
61.s11、取ip报文的前16个字节,作为ip头部iph1;
62.s12、取ip报文载荷的前15个字节,不足的填充0至15字节,并在最后填充一个字节的有效载荷长度,作为荷载头部pl1;
63.s13、根据ip头部iph1和荷载头部pl1,计算采样哈稀sh1,sh1=hash(hashfactor,iph1|pl1),其中,hash()为哈希函数,hashfactor为哈希因子,|为字符串加法运算;
64.s14、根据采样哈稀sh1,计算采样消息验证码sm1,sm1=mac(confusefactor,sh1|tsn|id),其中,mac()为消息验证码函数,confusefactor为混淆因子,tsn为utc时间,id为ip报文的身份标识;
65.s15、取采样消息验证码sm1前4字节,作为sm1头部sr1;
66.s16、将sm1头部sr1作为32bit无符号整数,判断作为32bit无符号整数的sm1头部sr1是否小于2
32
*r,若是,则跳转至步骤s19,若否,则跳转至步骤s17,其中,r为重型染色采样率;
67.s17、取采样消息验证码sm1末尾的数字节,作为轻型染色校验ck1;
68.s18、取轻型染色的校验ck1作为最终校验ck3,并跳转至步骤s23;
69.s19、计算ip报文哈稀ph1,ph1=hash(hashfactor,ip报文);
70.s20、根据ip报文哈稀ph1,计算ip报文消息验证码pm1,pm1=mac(confusefactor,ph1|tsn|id);
71.s21、取ip报文消息验证码pm1末尾的数字节,作为重型染色的校验ck2;
72.s22、取重型染色的校验ck2作为最终校验ck3;
73.s23、将utc时间tsn末4比特、最终校验ck3和ip报文的身份标识id嵌入到染色标记中,得到ip报文的染色值stain。
74.s2、将ip报文的载荷内容封装到隧道,并标上染色值后传输至接收端网关;
75.s3、在接收端网关处,验证染色值;
76.步骤s3的分步骤是在接收端执行。
77.所述步骤s3包括以下分步骤:
78.s31、在接收端网关处,获取到ip报文的时候,接收网关自己的utc时间tsn,取tsn的末4比特作为接收utc时间ltsn;从ip报文中恢复染色值stain,取出染色值stain携带的发送时的utc时间末4比特,作为报文utc时间ptsn;
79.s32、判断报文utc时间ptsn是否与接收utc时间ltsn相等,若是,则将utc时间tsn赋值给时间参数tsn2,并跳转至步骤s35,若否,则跳转至步骤s33;
80.s33、判断报文utc时间ptsn是否与(ltsn 15)mod 16相等,若是,则在utc时间tsn基础上减一赋值给时间参数tsn2,并跳转至步骤s35,若否,则跳转至步骤s34,其中,mod为取模运算;
81.s34、判断报文utc时间ptsn是否与(ltsn 1)mod 16相等,若是,则在utc时间tsn基础上加1赋值给时间参数tsn2,并跳转至步骤s35,若否,则时间错误;
82.在时间错误后,不再继续后续步骤,可以跳转至步骤s31,重新获取ip报文。
83.s35、取ip报文的前16个字节,作为ip头部iph2;
84.s36、取ip报文载荷前15个字节,不足的填充0至15字节,并在最后填充一个字节的
有效载荷长度,作为荷载头部pl2;
85.s37、根据ip头部iph2和荷载头部pl2,计算采样哈稀sh2,sh2=hash(hashfactor,iph2|pl2);
86.s38、根据采样哈稀sh2,计算采样消息验证码sm2,sm2=mac(confusefactor,sh2|tsn2|id);
87.s39、取采样消息验证码sm2前4字节,作为sm2头部sr2;
88.s40、将sm2头部sr2作为32bit无符号整数,判断作为32bit无符号整数的sm2头部sr2是否小于2
32
*r,若是,则跳转至步骤s43,若否,则跳转至步骤s41;
89.s41、取采样消息验证码sm2末尾的数字节,作为轻型染色校验ck4;
90.s42、取轻型染色的校验ck4作为最终校验ck6,并跳转至步骤s47;
91.s43、计算ip报文哈稀ph2,ph2=hash(hashfactor,ip报文);
92.s44、根据ip报文哈稀ph2,计算ip报文消息验证码pm2,pm2=mac(confusefactor,ph2|tsn2|id);
93.s45、取ip报文消息验证码pm2末尾的数字节,作为重型染色的校验ck5;
94.s46、取重型染色的校验ck5作为最终校验ck6;
95.s47、若染色值stain中取出的最终校验ck3与接收方计算的最终校验ck6相同,则染色值验证通过。
96.在步骤s3分步骤中,步骤s34中时间验证错误,以及步骤s47中不相同时,染色值验证就未通过,这时的ip报文就存在已经被攻击了的风险,需要进行通知或者报警。
97.s4、将通过验证的封装在隧道内的ip报文进行还原。验证通过,则封装在隧道内的ip报文,就可以被解封出来。
98.本发明的有益效果为:
99.1、本发明通过核对ip报文携带的utc时间和染色值中utc时间的后4比特,两者在相同或者相差不大的情况,则ip报文通过第一部分验证,同时,ip报文携带的utc时间和染色值中utc时间都在实时更新,提升了ip报文被攻击的难度,从而有效避免重放攻击。
100.2、轻度染色和重度染色混合使用,平衡了计算代价和安全性。
101.3、无论轻度染色还是重度染色,都起到了消息验证码(mac)的作用,保证了报文传输的完整性。
102.4、在染色时通过报文特征,给与每个ip报文一个特定的身份标识id,将身份标识id嵌入到染色值中,即可使中间传输设备感知报文分类,也不会泄露隐私信息。
103.5、通过报文分类,有利于中间传输设备提升安全防护、服务质量保障、业务类型识别和业务态势感知等能力。
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献