【技术实现步骤摘要】
数据完整性保护方法及系统
[0001]本申请涉及数据保护领域,特别涉及一种数据完整性保护方法及系统。
技术介绍
[0002]5G使用的三大场景为eMBB、mMTC、URLLC,这些场景中,对于高速数据,特别是在TSN网络(时间敏感网络)中,加密和完整性保护时延可能会影响数据传输。如果不进行加密和完整性保护,能够满足数据性能要求,但不满足安全性要求,系统在不加密的情况下需要进行一定程度的完整性保护。目前3GPP给出的处理方法如下:
[0003]一、目前3GPP定义的完整性保护
[0004]目前3GPP完整性保护主要是在基站PDCP协议层完成。完整性保护算法原理如图1所示,图1中NIA是指完整性保护算法,针对完整性保护算法,目前3GPP定义了三种算法,如下表1所示:
[0005]比特位算法名详细解释"00002"NIA0Null Integrity Protection"00012"128
‑
NIA1128
‑
bit SNOW 3G based algorithm;"0
【技术保护点】
【技术特征摘要】
1.一种数据完整性保护方法,包括以下步骤:基站侧参数配置:基站侧设置数据包的固定分组长度N,其中,所述固定分组长度N为数据包的个数;固定分组:发送方根据固定分组长度N,将N个数据包分为一组固定数据组(data1,data2,data3,
…
,data n);接收方收到数据后,也按上述进行固定分组;分组内数据完整性保护:发送方以串行merkle树方式进行计算,H(1)=hash(data1,data2),得到的H(1)与后一个数据进行hash,即H(2)=hash(H(1),data3),依次类推,直至本组内最后一个数据,最终形成H(n
‑
1):H(n
‑
1)=hash(H(n
‑
2),data(n)),H(n
‑
1)作为分组的mac值;接收方收到数据后,以上述串行merkle树方式进行计算,得到H
’
(n
‑
1);完整性保护数据的传递及比较:发送方在第m个分组上得到组MAC:H(n
‑
1),附加在m+1分组上并发送给接收方;接收方收到并解析发送方的H(n
‑
1),与接收方自己计算的H
’
(n
‑
1)进行比较,若相等,则完整性保护成功,继续进行数据收发,若不相等,则释放链路。2.如权利要求1所述的数据完整性保护方法,其特征在于,在基站参数配置步骤中:基站侧设置PDCP PDU数据包的固定分组长度N;固定分组步骤中,由PDCP count计数器统计,PDCP count的N个计数(x,x+1,
……
,x+n
‑
1)为一组,对应的固定数据组为(data1,data2,
……
,data n),x初始值为0。3.如权利要求1所述的数据完整性保护方法,其特征在于:在所述完整性保护数据的传递及比较的步骤中,所述发送方在第m个分组上得到的MAC:H(n
‑
1),附加在m+1分组的第一包数据上并发送给接收方。4.一种数据完整性保护方法,包括以下步骤:基站侧参数配置:基站侧设置自适应分组长度标识x,并通过信令配置到终端侧;其中,所述分组长度标识x为:xbit所代表的数据为0~2
x
,自适应分组长度为0~2
x
中的一个,每次分组长度并不固定,具体为多少通过对特性值Nrand的循环移位,取xbit得到;自适应分组:发送方对一特定值Nrand,从低位起取xbit得到的值,为第一次分组长度N1,对Nrand循环移位,从低位起取xbit,得到的值,即为第二次分组长度N2,依次类推,循环移位后取低位xbit,不断分组,直至业务结束;每次分组的长度Ni,即得到的xbit的数据的值;每次分组内的数据为(data1,data2,
……
,data(Ni));接收方收到数据后,也采用与发送方相同的自适应分组方法,得到与发送方相同的分组;自适应分组完整性保护:发送方对每次分组内的数据(data1,data2,
……
,data(Ni)),以串行merkle树方式进行计算,H(1)=hash(data1,data2),得到的H(1)与后一个数据进行hash,H(2)=hash(H(1),data3),依次类推,直至本组内最后一个数据,最终形成H(Ni
‑
1):H(Ni
‑
1)=hash(H(Ni
‑
2),data(Ni));H(Ni
‑
1)作为分组的mac值;接收方对每次分组内的数据,采用相同的方法得到分组的mac值H
’
(Ni
‑
1)。完整性保护数据的传递及比较:发送方在第m个分组上得到组MAC:H(Ni
‑
1),附加在m+1分组上并发送给接收方;接收方接收并解析出H(Ni
‑
1),与自己计算的H
’
(Ni
‑
1)进行比较,若相等,则完整性保护成功,继续进行数据收发,若不相等,则释放链路。5.如权利要求4所述的数据完整性保护方法,其特征在于,自适应分组步骤中,通过以下公式得到特定值Nrand:KgNB=KDF(KAMF,NAS UPLINK COUNT)
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(1)
计算Nrand=Trunc(KDF(KgNB,N))(2)其中,KgNB为gNB(基站)的K值(密钥);N:为参数配置的分组长度N,用于表示固定分组长度,也用于公式(2)计算Nrand;KDF:Key Derivation Function,为加salt的hash,能防彩虹表,用于计算密钥;Trunc:Trunc函数,做截取处理,生成整数密钥。6.如权利要求4所述的数据完整性保...
【专利技术属性】
技术研发人员:刘建伟,姜勇,刘懿中,吴成琦,关振宇,杨林,
申请(专利权)人:北京航空航天大学,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。