System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 对数据进行解密和完整性验证的方法和通信装置制造方法及图纸_技高网

对数据进行解密和完整性验证的方法和通信装置制造方法及图纸

技术编号:40968035 阅读:2 留言:0更新日期:2024-04-18 20:49
本申请提供了一种对数据进行解密和完整性验证的方法和通信装置,该方法包括:获取待解密的数据,待解密的数据包括至少一个分片序列,一个分片序列对应一个PDCP PDU,每个分片序列包括至少一个分片数据,一个分片数据对应一个分片描述符;根据分片数据对应的分片描述符,利用解密引擎对分片数据进行解密;利用完整性验证引擎对解密后的分片数据进行完整性验证。本申请提供的方法,将进行解密和完整性验证的PDCP PDU分成多个分片,将以PDCP PDU为粒度的解密和完整性验证变为以分片数据为粒度的,并支持属于不同分片序列的相互交织的分片数据的解密和完整性验证,提高解密引擎和完整性验证引擎的工作效率和实时处理能力。

【技术实现步骤摘要】

本申请涉及通信领域,更为具体的,涉及一种对数据进行解密和完整性验证的方法和通信装置


技术介绍

1、接收端设备(例如终端设备)接收到数据后,需要对数据进行解密以及完整性验证,在解密和完整性验证通过后,才可以正确获知数据信息。目前,接收端设备对数据进行解密和完整性验证的过程中,是以分组数据汇聚协议数据单元(packet data convergenceprotocol data unit,pdcp pdu)为粒度进行的,即先需要对一个pdcp pdu进行解密之后,再对该解密后pdcp pdu进行完整性验证。也即在对一个pdcp pdu进行解密或完整性验证时,不允许插入执行其它pdcp pdu的解密或完整性验证,只有在完全执行完一个pdcp pdu的解密或完整性验证后,才允许启动执行另一个pdcp pdu的解密和完整性验证。这样一方面需要处理系统具有很大的数据缓存容量,另一方面也会带来较大的处理延时,导致解密和完整性验证的效率较低,影响了通信效率。


技术实现思路

1、本申请提供了一种对数据进行解密和完整性验证的方法和通信装置,将需要进行解密和完整性验证的pdcp pdu分成多个分片,将对以pdcp pdu为粒度的解密和完整性验证改变为以分片为粒度的解密和完整性验证,提高了解密引擎和完整性验证引擎的工作效率,降低了解密和完整性验证的时间延迟。

2、第一方面,提供了一种对数据进行解密和完整性验证的方法,该方法的执行主体既可以是终端设备也可以是应用于终端设备的芯片。该方法包括:获取待解密的数据,待解密的数据包括至少一个分片序列,一个分片序列对应一个pdcp pdu,每个分片序列包括至少一个分片数据,一个分片数据对应一个分片描述符;根据第一分片数据对应的分片描述符,利用解密引擎对第一分片数据进行解密,第一分片数据为待解密的数据中的任意一个分片数据;根据第一分片数据对应的分片描述符,利用完整性验证引擎对经过解密后的第一分片数据进行完整性验证。

3、第一方面提供的对数据进行解密和完整性验证的方法,终端设备将需要进行解密和完整性验证的pdcp pdu分成多个分片(分片数据),将对以pdcp pdu为粒度的解密和完整性验证改变为以分片为粒度的解密和完整性验证。在解密完一个分片数据后,便可以对该解密后的分片数据进行完整性验证,实现了不同的pdcp pdu包括的分片可以交织进行处理,提高了解密引擎和完整性验证引擎的工作效率,降低了解密和完整性验证的时间延迟。

4、示例性的,解密引擎是以分片数据为粒度进行解密的,即是按照时间的先后,一个接一个的分片数据输入解密引擎。即在同一个时间或者时刻,只有一个分片数据输入(进入)至解密引擎,解密引擎在同一个时间或者时刻,只能解密一个分片数据。

5、示例性的,完整性验证引擎是以分片数据为粒度进行完整性验证的,即是按照时间的先后,一个接一个的分片数据输入完整性验证引擎。即在同一个时间或者时刻,只有一个分片数据输入(进入)至完整性验证引擎,完整性验证引擎在同一个时间或者时刻,只能对一个分片数据进行完整性验证。

6、在第一方面一种可能的实现方式中,当第一分片数据为分片序列的首分片数据时,根据第一分片数据对应的分片描述符,利用解密引擎对第一分片数据进行解密,包括:初始化第一分片数据所属的分片序列对应的解密引擎;根据第一分片数据对应的分片描述符中的解密算法字段,并利用初始化后的解密引擎对第一分片数据进行解密;根据第一分片数据对应的分片描述符,利用完整性验证引擎对经过解密后的第一分片数据进行完整性验证,包括:初始化第一分片数据所属的分片序列对应的完整性验证引擎;根据第一分片数据对应的分片描述符的完整性验证算法字段,并利用初始化后的完整性验证引擎对经过解密后的第一分片数据进行完整性验证。

7、在第一方面一种可能的实现方式中,当第一分片数据不是分片序列的首分片数据时,根据第一分片数据对应的分片描述符,利用解密引擎对第一分片数据进行解密,包括:根据第一分片数据对应的分片描述符中的工作平面指示字段,确定第一分片数据对应的第一解密上下文,不同的工作平面对应不同的解密上下文;利用第一解密上下文,恢复解密引擎的工作状态;利用工作状态恢复后的解密引擎,以及第一分片数据对应的分片描述符中的解密算法字段指示的解密算法,对第一分片数据进行解密。在该实现方式中,解密引擎可以在不同的工作平面上分时地进行处理,提高了解密引擎的工作效率和实时处理能力,降低处理时延。

8、在本申请实施例中,工作平面可以理解为:在处理过程中,例如协议处理引擎进行的协议格式解析、ase进行的解密以及完整性验证等使用的上下文内容。其中,上下文内容可以理解为进行各个处理过程中相关工作寄存器的状态信息。对于任意一个处理过程(例如协议格式解析、解密、完整性验证等),不同的工作平面对应不同的上下文内容,即处理引擎(例如协议格式解析引擎、ase等)可以在不同的工作平面上分时进行切换工作。例如,协议格式解析引擎在第一时间段在第一工作平面进行协议格式解析、在第二时间段在第二工作平面进行协议格式解析、在第三时间段又回在第一工作平面进行协议格式解析。其中,第一时间段、第二时间段、第三时间段在时间上是连续的,第一时间段最早,第三时间段最晚。一个工作平面上可以对应或者包括多个分片,例如,一个分片可以为一个cb。

9、在第一方面一种可能的实现方式中,当第一分片数据不是分片序列的首分片数据时,根据第一分片数据对应的分片描述符,利用完整性验证引擎对经过解密后的第一分片数据进行完整性验证,包括:根据第一分片数据对应的分片描述符中的工作平面指示字段,确定第一分片数据对应的第一完整性验证上下文,不同的工作平面对应不同的完整性验证上下文;利用第一完整性验证上下文,恢复完整性验证引擎的工作状态;利用工作状态恢复后的完整性验证引擎,以及第一分片数据对应的分片描述符中的完整性验证算法字段指示的完整性验证算法,对经过解密后的第一分片数据进行完整性验证。在该实现方式中,完整性验证引擎可以在不同的工作平面上分时地进行处理,提高了完整性验证引擎的工作效率和实时处理能力,降低处理时延。

10、在第一方面一种可能的实现方式中,当第一分片数据不是分片序列的尾分片数据时,该方法还包括:对第一分片数据解密完成后,根据第一分片数据对应的分片描述符中的工作平面指示字段,将该解密引擎的工作状态存储在解密上下文信息中,该解密上下文信息包括:多个不同的解密上下文,其中,不同的工作平面对应不同的解密上下文。在该实现方式中,可以保证解密引擎在不同的工作平面之间切换工作过程的稳定性和正确性,保证了解密引擎正常的工作。

11、在第一方面一种可能的实现方式中,当第一分片数据不是分片序列的尾分片数据时,该方法还包括:对第一分片数据完整性验证完成后,根据第一分片数据对应的分片描述符中的工作平面指示字段,将该完整性验证引擎的工作状态存储在完整性验证上下文信息中,该完整性验证上下文信息包括:多个不同的完整性验证上下文,其中,不同的工本文档来自技高网...

【技术保护点】

1.一种对数据进行解密和完整性验证的方法,其特征在于,所述方法包括:

2.根据权利要求1所述的方法,其特征在于,当所述第一分片数据为分片序列的首分片数据时,所述根据所述第一分片数据对应的分片描述符,利用解密引擎对所述第一分片数据进行解密,包括:

3.根据权利要求1所述的方法,其特征在于,当所述第一分片数据不是分片序列的首分片数据时,所述根据所述第一分片数据对应的分片描述符,利用解密引擎对所述第一分片数据进行解密,包括:

4.根据权利要求1所述的方法,其特征在于,当所述第一分片数据不是分片序列的首分片数据时,所述根据所述第一分片数据对应的分片描述符,利用完整性验证引擎对经过解密后的第一分片数据进行完整性验证,包括:

5.根据权利要求2至4中任一项所述的方法,其特征在于,当所述第一分片数据不是分片序列的尾分片数据时,所述方法还包括:

6.根据权利要求2至5中任一项所述的方法,其特征在于,当所述第一分片数据不是分片序列的尾分片数据时,所述方法还包括:

7.根据权利要求3至6中任一项所述的方法,其特征在于,属于一个分片序列的各分片数据属于同一个工作平面。

8.根据权利要求3至7中任一项所述的方法,其特征在于,属于同一个工作平面的两个分片序列不交织。

9.根据权利要求3至8中任一项所述的方法,其特征在于,属于不同工作平面的分片序列相互交织或者不交织。

10.根据权利要求1至9中任一项所述的方法,其特征在于,所述分片描述符中还包括:首分片指示字段、尾分片指示字段、分片长度字段、分片序列长度字段、解密算法字段、完整性算法字段、解密秘钥索引字段、完整性验证秘钥索引字段中的至少一个。

11.根据权利要求1至10中任一项所述的方法,其特征在于,第一分片序列包括的多个分片之间是保证顺序的,在时间先后顺序上,所述第一分片序列包括的多个分片数据之间存在或者不存在第二分片序列包括的分片数据。

12.根据权利要求4至11中任一项所述的方法,其特征在于,所述解密上下文包括:解密引擎在执行完一个分片数据的解密算法后内部工作寄存器的状态信息;

13.根据权利要求1至12中任一项所述的方法,其特征在于,所述解密引擎包括:先进NULL解密引擎、先进SNOW 3G解密引擎、先进AES128-CTR解密引擎、或者先进ZUC解密引擎中的任意一个。

14.根据权利要求1至13中任一项所述的方法,其特征在于,所述完整性验证引擎包括:先进NULL完整性验证引擎、先进SNOW 3G完整性验证引擎、先进AES128-CMAC完整性验证引擎、或者先进ZUC完整性验证引擎中的任意一个。

15.根据权利要求1至14中任一项所述的方法,其特征在于,所述方法还包括:

16.根据权利要求15所述的方法,其特征在于,当第一CB为CB序列的首CB时,初始化协议格式解析引擎,并利用初始化后的协议格式解析引擎,对所述第一CB进行协议格式解析以及分段重组。

17.根据权利要求15所述的方法,其特征在于,当第一CB不是CB序列的首CB时,根据所述第一CB对应的CB描述符中的工作平面指示字段,确定所述第一CB对应的第一协议格式解析上下文,不同的工作平面对应不同的协议格式解析上下文;

18.根据权利要求16或17所述的方法,其特征在于,当所述第一CB不是CB序列的尾CB时,所述方法还包括:

19.根据权利要求17或18所述的方法,其特征在于,属于一个CB序列的各CB属于同一个工作平面。

20.根据权利要求17至19中任一项所述的方法,其特征在于,属于同一个工作平面的两个CB序列不交织。

21.根据权利要求17至19中任一项所述的方法,其特征在于,属于不同工作平面的CB序列相互交织或者不交织。

22.根据权利要求15至21中任一项所述的方法,其特征在于,所述CB描述符中还包括:CB编号字段、尾CB指示字段、CB的大小、CB所属的TB的长度字段中的至少一个。

23.根据权利要求15至22中任一项所述的方法,其特征在于,第一CB序列包括的多个CB之间按照时间的先后顺序,CB编号依次增大,所述第一CB序列包括的多个CB之间存在或者不存在第二CB序列包括的CB。

24.根据权利要求17至23中任一项所述的方法,其特征在于,所述协议格式解析上下文包括:协议格式解析引擎在执行完一个分片数据的协议格式解析后内部工作寄存器的状态信息。

25.一种通信装置,其特征在于,包括用于执行如权利要求1至24中任一项所述方法的各个步骤的单元。

...

【技术特征摘要】

1.一种对数据进行解密和完整性验证的方法,其特征在于,所述方法包括:

2.根据权利要求1所述的方法,其特征在于,当所述第一分片数据为分片序列的首分片数据时,所述根据所述第一分片数据对应的分片描述符,利用解密引擎对所述第一分片数据进行解密,包括:

3.根据权利要求1所述的方法,其特征在于,当所述第一分片数据不是分片序列的首分片数据时,所述根据所述第一分片数据对应的分片描述符,利用解密引擎对所述第一分片数据进行解密,包括:

4.根据权利要求1所述的方法,其特征在于,当所述第一分片数据不是分片序列的首分片数据时,所述根据所述第一分片数据对应的分片描述符,利用完整性验证引擎对经过解密后的第一分片数据进行完整性验证,包括:

5.根据权利要求2至4中任一项所述的方法,其特征在于,当所述第一分片数据不是分片序列的尾分片数据时,所述方法还包括:

6.根据权利要求2至5中任一项所述的方法,其特征在于,当所述第一分片数据不是分片序列的尾分片数据时,所述方法还包括:

7.根据权利要求3至6中任一项所述的方法,其特征在于,属于一个分片序列的各分片数据属于同一个工作平面。

8.根据权利要求3至7中任一项所述的方法,其特征在于,属于同一个工作平面的两个分片序列不交织。

9.根据权利要求3至8中任一项所述的方法,其特征在于,属于不同工作平面的分片序列相互交织或者不交织。

10.根据权利要求1至9中任一项所述的方法,其特征在于,所述分片描述符中还包括:首分片指示字段、尾分片指示字段、分片长度字段、分片序列长度字段、解密算法字段、完整性算法字段、解密秘钥索引字段、完整性验证秘钥索引字段中的至少一个。

11.根据权利要求1至10中任一项所述的方法,其特征在于,第一分片序列包括的多个分片之间是保证顺序的,在时间先后顺序上,所述第一分片序列包括的多个分片数据之间存在或者不存在第二分片序列包括的分片数据。

12.根据权利要求4至11中任一项所述的方法,其特征在于,所述解密上下文包括:解密引擎在执行完一个分片数据的解密算法后内部工作寄存器的状态信息;

13.根据权利要求1至12中任一项所述的方法,其特征在于,所述解密引擎包括:先进null解密引擎、先进snow 3g解密引擎、先进aes128-ctr解密引擎、或者先进zuc解密引擎中的任意一个。

14.根据权利要求1至13中任一项所述的方法,其特征在于,所述完整性验证引擎包括:先进null完整性验证引擎、先进snow 3g完整性验证引擎、先进aes128-cmac完整性验证引擎、或者先进...

【专利技术属性】
技术研发人员:李新昌徐华春王盖卢双第李延冰
申请(专利权)人:华为技术有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1