掌桥专利:专业的专利平台
掌桥专利
首页

4G到5G切换场景NAS解密方法、系统、设备及可读介质

文献发布时间:2024-01-17 01:27:33


4G到5G切换场景NAS解密方法、系统、设备及可读介质

技术领域

本申请涉及数据通信领域,尤其涉及一种4G到5G切换场景NAS解密方法、系统、设备及可读介质。

背景技术

第四代移动通信系统(4G)已实现正常生活中绝大部分场景的网络覆盖,第五代移动通信系统(5G)作为新一代信息通信技术演进升级的重要方向,是实现万物互联的关键信息基础设施、经济社会数字化转型的重要驱动力量,随着5G的持续部署,进行跨系统的移动通信时必然需要考虑4G和5G的交互场景。

5G新场景下,通过DPI解析可识别出网络、业务及用户感知等不同的指标体系,驱动网络的智能化运维;通过DPI解析同步实现对网络、业务及用户数据的挖潜变现,同时还可为不同的2B行业客户提供定制化能力支撑。实现这一切的基础在于对信令面数据的解析和元数据提取,NAS消息携带关键的UE相关信息,而核心网对NAS消息进行了加密处理,所以需要对NAS消息进行解密。

发明内容

本申请的一个目的是提供一种4G到5G切换场景NAS解密方法、系统、设备及可读介质,至少用以使得该方法可以实现对NAS消息进行解密,提高信令解析准确度。

为实现上述目的,本申请的一些实施例提供了4G到5G切换场景NAS解密方法,所述方法包括采集N1、N2、N11、N12、N26接口流量输入到DPI解析设备;对所述N26、N11、N2、N1、N12接口做协议解析得到NAS消息以及NAS解密相关的元数据;根据所述NAS消息和所述元数据,匹配UE上下文,并得到对应密钥,根据所述密钥对所述NAS消息进行解密。

进一步地,所述方法包括:提取N26接口Forward Relocation Request消息中的supi信息,通过所述supi信息关联到UE上下文,如果关联失败则以所述supi信息为key新建UE上下文hash表hash_supi;解析N26接口Forward Relocation Request消息中的MMContext信源,提取Kasme和NH值;使用所述Kasme和NH值通过KDF算法计算得到Kamf密钥,并存储到UE上下文中。

进一步地,所述方法包括:解析N11接口流量,提取所述UE上下文的supi和GTPtunnel信息,并以所述GTP tunnel信息为key建立UE上下文hash表hash_tunnel。

进一步地,所述方法包括:解析N2接口Handover Request消息,提取NAS加密算法enc-alg标识和GTP tunnel信息;通过所述GTP tunnel信息匹配hash_tunnel表得到所述UE上下文;根据所述UE上下文的Kamf密钥和所述NAS加密算法enc-alg标识,通过KDF算法计算得到Knas密钥。

进一步地,所述方法包括:解析N1接口Registation Request消息,提取TSC信息,如果TSC设置为1,则使用Knas密钥对后续NAS消息进行解密;如果TSC设置为0,则解析后续的SMC流程消息,提取NAS解密算法enc-alg_1标识并保存到UE上下文中。

进一步地,所述方法包括:提取N12接口中的supi信息和Kseaf密钥,并通过所述supi信息匹配到UE上下文;根据所述supi信息和所述Kseaf密钥,通过KDF算法计算得到Kamf_1密钥,并将所述Kamf_1密钥存储到所述UE上下文。

进一步地,所述方法包括:解析N1接口的Security Mode Command消息,提取NAS加密算法enc-alg_1标识;根据所述Kamf_1密钥和所述NAS加密算法enc-alg_1标识,通过KDF算法,得到Knas_1密钥;根据所述Knas_1密钥对后续NAS消息进行解密。

本申请的一些实施例还提供了一种4G到5G切换场景NAS解密系统,所述系统包括:数据采集模块,所述数据采集模块用于采集N1、N2、N11、N12、N26接口的流量数据,通过DPI技术对各接口协议进行解析,提取得到NAS消息以及NAS解密相关的元数据;上下文管理模块,所述上下文管理模块用于负责管理UE的上下文信息,包括关联UE上下文、创建新的UE上下文;密钥计算模块,所述密钥计算模块用于根据所述NAS消息和所述元数据,通过KDF算法计算得到对应的密钥;解密模块,所述解密模块用于根据所述密钥对所述NAS消息进行解密。

本申请的一些实施例还提供了一种4G到5G切换场景NAS解密设备,所述设备包括:一个或多个处理器;以及存储有计算机程序指令的存储器,所述计算机程序指令在被执行时使所述处理器执行如上所述的方法。

本申请的一些实施例还提供了一种计算机可读介质,其上存储有计算机程序指令,所述计算机程序指令可被处理器执行以实现所述的4G到5G切换场景NAS解密方法。

相较于现有技术,本申请实施例提供的方案中,4G到5G切换场景NAS解密方法包括通过采集N1、N2、N11、N12、N26接口的流量输入到DPI解析设备,实现对网络接口数据的获取;对所述N26、N11、N2、N1、N12接口做协议解析得到NAS消息以及NAS解密相关的元数据;处理过程中,根据NAS消息中的标识信息,匹配到相应的UE上下文,如果匹配成功,则使用相关的上下文信息进行后续操作;如果匹配失败,则根据特定标识信息创建新的UE上下文;根据解析N26接口消息得到的信息,进行密钥的计算和提取,这些密钥用于后续的解密操作;利用解析和计算得到的密钥,对相应的NAS消息进行解密操作,确保消息内容的可读性和完整性。综上所述,本申请提供的方案中,通过DPI技术对各接口协议进行解析,提取得到NAS消息以及NAS解密相关的元数据,并根据UE上下文和密钥进行解密操作,能够有效实现4G到5G切换场景下的NAS解密,并相较于现有技术具备更完整和可靠的解密方法。

附图说明

图1为本申请实施例提供的一种4G到5G切换场景NAS解密方法的流程示意图;

图2为本申请实施例提供的一种4G到5G切换场景NAS解密设备的结构示意图。

具体实施方式

为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。

在本文中使用以下术语。

DPI:DPI技术指的是深度包检测(Deep Packet Inspection)技术。它是一种网络流量分析技术,用于对传输在网络中的数据包进行深入解析和分析。DPI技术能够对数据包的各个层次进行检查和处理,包括网络协议头、数据内容、应用层协议等。通过DPI技术,可以实现对网络流量的精确识别和分类,提取出关键信息并进行进一步的分析。它可以识别出特定的应用程序、协议或者数据类型,从而实现网络流量的管理、监测、安全策略的实施等功能。

N1接口:指的是UE(用户设备)和5G核心网络之间的接口,用于传输用户数据、控制信令和承载管理信息。

N2接口:是AMF和5G基站之间的接口,用于传输用户数据、控制信令和承载管理信息。

N11接口:是AMF和SMF之间的接口,用于处理安全性和认证等方面的信令和数据。

N12接口:是AMF和AUSF之间的接口,用于处理会话和会话相关的信令和数据。

N26接口:是AMF和MME之间的接口,用于处理移动性管理和会话管理相关的信令和数据。

Forward Relocation Request消息:是在5G网络中的移动性管理过程中使用的一种消息类型。它用于触发UE(用户设备)在切换或重定位时向目标网络发起请求,以便在目标网络上建立和更新UE的上下文信息。Forward Relocation Request消息用于MME和AMF之间同步UE信息其中包含了关于UE的相关信息和请求的参数。这些信息可能包括UE标识(如supi信息)、目标网络的标识、移动性相关的参数、安全性相关的参数等。通过发送ForwardRelocation Request消息,源MME请求目标AMF协助处理UE的移动性过程。目标AMF接收到消息后,会根据消息中的参数和请求进行相应的处理,如验证UE的合法性、更新UE的上下文、分配新的安全密钥等。

SUPI(Subscription Permanent Identifier)信息:是5G网络中用于标识订阅用户的唯一标识符。它是由MCC(Mobile Country Code)、MNC(Mobile Network Code)和MSIN(Mobile Subscriber Identification Number)组成的。SUPI信息通常用于识别和区分不同的用户,以确保在网络中对用户进行正确的身份验证和授权。它在5G网络中的各种消息和过程中起着重要的作用,包括认证、安全性保护、移动性管理等。在Forward RelocationRequest消息中,supi信息用于标识发起切换或重定位的UE(用户设备)。通过提取并使用supi信息,网络能够将消息与特定的用户关联起来,并根据需要进行相应的处理,如验证用户身份、更新用户上下文、分配安全密钥等。

KDF(Key Derivation Function)算法:是一种密码学算法,用于从给定的输入派生出密钥或密钥材料。它主要用于从一个或多个初始密钥或秘密值生成更多的密钥,以供在加密和安全通信中使用。KDF算法通过在输入值上应用密码学哈希函数、伪随机函数或其他衍生函数,按照特定的算法生成新的密钥。它的设计目的是在输入值的基础上生成更长、更复杂的密钥,以提供更高的安全性。在4G到5G切换场景的NAS解密过程中,KDF算法被用于根据特定的输入值派生出关键的安全密钥,如Kamf(Access Management Function Key)、Knas(NAS加密密钥)等。通过应用KDF算法,可以确保派生的密钥具有足够的强度和安全性,以保护通信中的敏感信息。

在相关技术中的NAS解密方法中,NAS解密过程中涉及多个密钥的生成和管理,包括Kamf、Knas等。密钥的生成、更新和分发需要进行严格的控制和协调,存在一定的复杂性和管理成本。

针对上述技术问题,本申请实施例提供了一种4G到5G切换场景NAS解密方法,本申请实施例的核心在于:采集N1、N2、N11、N12、N26接口流量输入到DPI解析设备;对所述N26、N11、N2、N1、N12接口做协议解析得到NAS消息以及NAS解密相关的元数据;根据所述NAS消息和所述元数据,匹配UE上下文,并得到对应密钥,根据所述密钥对所述NAS消息进行解密。

可以理解的是通过采集N1、N2、N11、N12、N26接口流量,并借助DPI解析设备进行处理,针对N26、N11、N2、N1和N12接口的数据流量,进行协议解析,提取其中的NAS消息和相关的元数据。这些元数据可以包括用户标识(supi)、加密算法(enc-alg)、GTP隧道信息等。根据提取到的元数据信息解析和计算得到的密钥,可以对加密的NAS消息进行解密,以提取其中的有效信息。通过这种方法,网络运营商和相关机构能够获得解密后的NAS消息,从而进行更深入的分析和监控。这有助于提高网络管理和安全水平,并为网络优化、故障排查和用户体验提供准确的数据支持。整体而言,本申请实施例的方法能够有效地解决NAS解密的技术问题,为4G到5G切换场景下的网络管理提供了一种可行的解决方案。

如图1所示,下面结合一些实施例对本申请的4G到5G切换场景NAS解密方法的实现细节进行具体的说明,以下内容仅为方便理解提供的实现细节,并非实施本方案的必须。

在本申请一些实施例中,所述方法包括:提取N26接口Forward RelocationRequest消息中的supi信息,通过所述supi信息关联到UE上下文,如果关联失败则以所述supi信息为key新建UE上下文hash表hash_supi;解析N26接口Forward RelocationRequest消息中的MM Context信源,提取Kasme和NH值;使用所述Kasme和NH值通过KDF算法计算得到Kamf密钥,并存储到UE上下文中。

在NAS解密方法中的第一步是提取N26接口的Forward Relocation Request消息,在该消息中,需要定位并提取其中的supi信息,一旦成功提取到supi信息,将其用作关联UE上下文的依据,查询已有的UE上下文,尝试通过supi信息来找到对应的UE上下文。如果成功找到对应的UE上下文,则该UE上下文与supi信息关联成功,后续的操作将基于该UE上下文进行。这意味着我们可以使用该UE上下文中存储的相关信息,例如安全参数、会话状态等来进行后续的解密和处理。如果关联失败,表示没有找到与supi信息对应的UE上下文,或者该UE上下文已失效。在这种情况下,系统会采取一种策略,即以所提取的supi信息为key,在特定的数据结构中创建一个新的UE上下文。这个特定的数据结构可以是一个哈希表,我们称之为hash_supi。它是一个键值对的数据结构,以supi信息作为键,将新创建的UE上下文存储在该哈希表中。这样,在后续的操作中,系统就可以通过supi信息来访问和管理相应的UE上下文。

解析N26接口的Forward Relocation Request消息中MM Context信息元素,从中提取出Kasme和NH值。根据Kasme和NH值,通过KDF算法来计算得到Kamf密钥。一旦我们计算得到Kamf密钥,我们将其存储到关联的UE上下文中。这样,UE上下文中就包含了Kamf密钥这个重要的安全参数,后续的解密操作可以使用该密钥来解密相关的NAS消息。这样确保了后续的解密操作能够使用正确的密钥进行解密,并维护了UE上下文中的关键安全参数。

在4G/5G通信中,Kasme(Key for Access Security Management Entity)和NH(Next Hop)是两个重要的安全参数。Kasme是用于保护通信链路的安全密钥,它在网络中的不同节点之间进行传输时起到加密和解密的作用。Kasme的生成和分发是基于认证和密钥协商过程,它用于确保通信的机密性和完整性,NH用于UE和核心网同步密钥。

Kamf(Key for Authentication and Mobility Management Function)密钥是在4G/5G移动通信中用于认证和移动管理功能的关键密钥。Kamf密钥的生成是通过使用Kasme和NH值,结合KDF算法进行计算得到的。Kamf密钥在UE上下文中被存储,并用于解密和加密NAS消息。Kamf密钥用于加密和解密NAS消息,以保护通信内容的机密性和完整性。

在本申请一些实施例中,所述方法包括:解析N11接口流量,提取所述UE上下文的supi和GTP tunnel信息,并以所述GTP tunnel信息为key建立UE上下文hash表hash_tunnel。从N11接口流量中提取出与UE相关的信息,并以GTP tunnel信息为关键词建立UE上下文的哈希表hash_tunnel。这样可以更方便地根据GTP tunnel信息进行快速查找和关联,以支持后续的NAS解密和其他操作。

在本申请一些实施例中,所述方法包括:解析N2接口Handover Request消息,提取NAS加密算法enc-alg标识和GTP tunnel信息;通过所述GTP tunnel信息匹配hash_tunnel表得到所述UE上下文;根据所述UE上下文的Kamf密钥和所述NAS加密算法enc-alg标识,通过KDF算法计算得到Knas密钥。

N2接口的Handover Request消息是在5G移动网络中用于请求切换到新的基站的消息。它包含了与切换相关的信息,例如目标基站的标识、UE的身份信息、切换类型等。该消息用于通知目标基站以及核心网的相关节点,以便进行无缝的切换过程。在NAS解密方法中,解析N2接口的Handover Request消息,提取其中的NAS加密算法enc-alg标识和GTPtunnel信息,用于后续的解密操作和UE上下文的匹配。

根据UE上下文中的Kamf密钥和NAS加密算法enc-alg标识,可以使用KDF算法来计算得到Knas密钥。在NAS解密过程中,需要根据Kamf密钥和enc-alg标识来派生出对应的Knas密钥,当没有关联到UE上下文时停止NAS解密,当匹配到上下文时,Knas密钥以用于后续的NAS消息解密。具体的KDF算法实现可能会根据具体的标准和协议而有所不同,但其主要目的是根据输入的密钥和其他参数生成一个新的密钥。这个新生成的Knas密钥将用于解密接收到的NAS消息,以确保消息的机密性和完整性。

在本申请一些实施例中,所述方法包括:解析N1接口Registation Request消息,提取TSC信息,如果TSC设置为1,则使用Knas密钥对后续NAS消息进行解密;如果TSC设置为0,则解析后续的SMC流程消息,提取NAS解密算法enc-alg_1标识并保存到UE上下文中。

可以理解的是TSC设置为1和设置为0表示的意思是NAS解密的两种状态,并不局限于设置值。当TSC为1时,采用上述通过N2接口计算得到的Knas对后续的NAS消息进行解密;当TSC为0时,需要提取对所需密钥进行进一步处理,得到合适的NAS解密密钥。

在本申请一些实施例中,所述方法包括:提取N12接口中的supi信息和Kseaf密钥,并通过所述supi信息匹配到UE上下文;根据所述supi信息和所述Kseaf密钥,通过KDF算法计算得到Kamf_1密钥,并将所述Kamf_1密钥存储到所述UE上下文。

可以理解的时,这一步与N26接口密钥的计算方式相似,都是采用supi匹配到相应的UE上下文,再通过KDF算法计算得到Kamf_1密钥,并将Kamf_1密钥存储到UE上下文用于和加密算法进行处理得到后续对应的Knas密钥。

在本申请一些实施例中,所述方法包括:解析N1接口的Security Mode Command消息,提取NAS加密算法enc-alg_1标识;根据所述Kamf_1密钥和所述NAS加密算法enc-alg_1标识,通过KDF算法,得到Knas_1密钥;根据所述Knas_1密钥对后续NAS消息进行解密。

本申请实施例提供了一种基于DPI技术的4G到5G切换场景NAS解密系统,所述系统包括:数据采集模块,所述数据采集模块用于采集N1、N2、N11、N12、N26接口的流量数据,通过DPI技术对各接口协议进行解析,提取得到NAS消息以及NAS解密相关的元数据;上下文管理模块,所述上下文管理模块用于负责管理UE的上下文信息,包括关联UE上下文、创建新的UE上下文;密钥计算模块,所述密钥计算模块用于根据所述NAS消息和所述元数据,通过KDF算法计算得到对应的密钥;解密模块,所述解密模块用于根据所述密钥对所述NAS消息进行解密。

不难发现,本申请实施例是与方法实施例相对应的系统实施例,本申请实施例的实现细节已在系统实施例中阐述,为避免重复,此处不再赘述。

此外,本申请实施例还提供了一种基于DPI技术的4G到5G切换场景NAS解密设备,该设备的结构如图2所示,所述设备包括用于存储计算机可读指令的存储器90和用于执行计算机可读指令的处理器100,其中,当该计算机可读指令被该处理器执行时,触发所述处理器执行所述的虚拟内容的分发方法。

本申请实施例中的方法和/或实施例可以被实现为计算机软件程序。例如,本公开的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在该计算机程序被处理单元执行时,执行本申请的方法中限定的上述功能。

需要说明的是,本申请所述的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本申请中,计算机可读介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。

而在本申请中,计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:无线、电线、光缆、RF等等,或者上述的任意合适的组合。

可以以一种或多种程序设计语言或其组合来编写用于执行本申请的操作的计算机程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如Java、Smalltalk、C++,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。

附图中的流程图或框图示出了按照本申请各种实施例的设备、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,该模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的针对硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。

作为另一方面,本申请实施例还提供了一种计算机可读介质,该计算机可读介质可以是上述实施例中描述的设备中所包含的;也可以是单独存在,而未装配入该设备中。上述计算机可读介质承载有一个或者多个计算机可读指令,所述计算机可读指令可被处理器执行以实现前述本申请的多个实施例的方法和/或技术方案的步骤。

在本申请一个典型的配置中,终端、服务网络的设备均包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。

内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器 (RAM) 和/或非易失性内存等形式,如只读存储器 (ROM) 或闪存(flash RAM)。内存是计算机可读介质的示例。

计算机可读介质包括永久性和非永久性、可移动和非可移动媒体,可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器 (DRAM)、其他类型的随机存取存储器 (RAM)、只读存储器(ROM)、电可擦除可编程只读存储器 (EEPROM)、快闪记忆体或其他内存技术、只读光盘(CD-ROM)、数字多功能光盘 (DVD) 或其他光学存储、磁盒式磁带,磁带磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。

此外,本申请实施例还提供了一种计算机程序,所述计算机程序存储于计算机设备,使得计算机设备执行所述控制代码执行的方法。

需要注意的是,本申请可在软件和/或软件与硬件的组合体中被实施,例如,可采用专用集成电路(ASIC)、通用目的计算机或任何其他类似硬件设备来实现。在一些实施例中,本申请的软件程序可以通过处理器执行以实现上文步骤或功能。同样地,本申请的软件程序(包括相关的数据结构)可以被存储到计算机可读记录介质中,例如,RAM存储器,磁或光驱动器或软磁盘及类似设备。另外,本申请的一些步骤或功能可采用硬件来实现,例如,作为与处理器配合从而执行各个步骤或功能的电路。

对于本领域技术人员而言,显然本申请不限于上述示范性实施例的细节,而且在不背离本申请的精神或基本特征的情况下,能够以其他的具体形式实现本申请。因此,无论从哪一点来看,均应将实施例看作是示范性的,而且是非限制性的,本申请的范围由所附权利要求而不是上述说明限定,因此旨在将落在权利要求的等同要件的含义和范围内的所有变化涵括在本申请内。不应将权利要求中的任何附图标记视为限制所涉及的权利要求。此外,显然“包括”一词不排除其他单元或步骤,单数不排除复数。装置权利要求中陈述的多个单元或装置也可以由一个单元或装置通过软件或者硬件来实现。第一,第二等词语用来表示名称,而并不表示任何特定的顺序。

技术分类

06120116222582