基于区块链的网络分片认证方法、系统、网元及存储介质转让专利

申请号 : CN202110534521.5

文献号 : CN113286300B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 张伦泳

申请人 : 中国联合网络通信集团有限公司

摘要 :

本公开提供一种基于区块链的网络分片认证方法、系统、接入及移动性管理功能网元,其中,所述方法包括:接收用户终端的注册请求,所述注册请求中携带需要进行特定于网络分片的身份验证和授权的单网络分片标识;以及,判断区块链中是否存在所述用户终端的与所述单网络分片标识对应的单网络分片关于特定于网络分片的身份验证和授权的第一结果,若是,则基于所述第一结果允许或者拒绝所述单网络分片的使用。本公开实施例利用区块链的同步性、防篡改性及安全性等特点,AMF在每次接收到UE的注册请求时,根据区块链中的NSSAA结果允许或者拒绝单网络分片,而不用频繁执行NSSAA过程,以快速恢复UE意外断开的业务,提升用户的终端使用体验。

权利要求 :

1.一种基于区块链的网络分片认证方法,其特征在于,应用于AMF,包括:

接收用户终端的注册请求,所述注册请求中携带需要进行特定于网络分片的身份验证和授权的单网络分片标识;以及,判断区块链中是否存在所述用户终端的与所述单网络分片标识对应的单网络分片关于特定于网络分片的身份验证和授权的第一结果,若是,则基于所述第一结果允许或者拒绝所述单网络分片的使用。

2.根据权利要求1所述的方法,其特征在于,在判断区块链中是否存在所述用户终端的与所述单网络分片标识对应的单网络分片关于特定于网络分片的身份验证和授权的第一结果之后,以及基于所述第一结果允许或者拒绝所述单网络分片的使用之前,还包括:判断所述第一结果是否超过其预设的有效期限,若否,则执行基于所述第一结果允许或者拒绝所述单网络分片的使用的步骤。

3.根据权利要求1所述的方法,其特征在于,在判断区块链中是否存在所述用户终端的与所述单网络分片标识对应的单网络分片关于特定于网络分片的身份验证和授权的第一结果之后,还包括:若区块链中不存在所述第一结果,则执行针对所述单网络分片的特定于网络分片的身份验证和授权过程,得到所述单网络分片关于特定于网络分片的身份验证和授权的第二结果;以及,基于所述第二结果允许或者拒绝所述单网络分片的使用。

4.根据权利要求3所述的方法,其特征在于,在执行针对所述单网络分片的特定于网络分片的身份验证和授权过程,得到所述单网络分片关于特定于网络分片的身份验证和授权的第二结果之后,还包括:基于所述第二结果创建描述信息,所述描述信息中包括所述用户终端的用户身份标识、所述单网络分片标识、所述第二结果及其有效期限;以及,对所述描述信息进行签名并发送至所述用户终端,以使所述用户终端对所述描述信息追加签名后发送至统一数据管理功能网元,并使所述统一数据管理功能网元对所述描述信息再次追加签名后广播至区块链中。

5.根据权利要求4所述的方法,其特征在于,在对所述描述信息进行签名并发送至所述用户终端之后,还包括:判断是否接收到所述用户终端对所述描述信息中关于第二结果的有效期限的更新信息;

若是,则重新执行针对所述单网络分片的特定于网络分片的身份验证和授权过程,得到所述单网络分片关于特定于网络分片的身份验证和授权的第三结果;

基于所述第二结果的有效期限的更新信息和所述第三结果生成新的描述信息,所述新的描述信息包括所述用户终端的用户身份标识、所述单网络分片标识、所述第三结果及所述第二结果的有效期限的更新信息;以及,对所述新的描述信息进行签名并发送至所述用户终端,以使所述用户终端对所述新的描述信息追加签名后发送至统一数据管理功能网元,并使所述统一数据管理功能网元对所述新的描述信息再次追加签名后广播至区块链中。

6.一种基于区块链的网络分片认证系统,其特征在于,应用于AMF,包括:

接收模块,其设置为接收用户终端的注册请求,所述注册请求中携带需要进行特定于网络分片的身份验证和授权的单网络分片标识;以及,判断模块,其设置为判断区块链中是否存在所述用户终端的与所述单网络分片标识对应的单网络分片关于特定于网络分片的身份验证和授权的第一结果;

第一执行模块,其设置为在所述判断模块判断为存在所述第一结果时,基于所述第一结果允许或者拒绝所述单网络分片的使用。

7.根据权利要求6所述的系统,其特征在于,所述判断模块还设置为,在判断区块链中是否存在所述用户终端的与所述单网络分片标识对应的单网络分片关于特定于网络分片的身份验证和授权的第一结果之后,以及所述第一执行模块基于所述第一结果允许或者拒绝所述单网络分片的使用之前,判断所述第一结果是否超过其预设的有效期限,若否,则执行基于所述第一结果允许或者拒绝所述单网络分片的使用的步骤。

8.根据权利要求6所述的系统,其特征在于,还包括:

第二执行模块,其设置为在所述判断模块判断为区块链中不存在所述第一结果时,执行针对所述单网络分片的特定于网络分片的身份验证和授权过程,得到所述单网络分片关于特定于网络分片的身份验证和授权的第二结果;以及,基于所述第二结果允许或者拒绝所述单网络分片的使用。

9.一种接入及移动性管理功能网元,其特征在于,包括存储器和处理器,所述存储器中存储有计算机程序,当所述处理器运行所述存储器存储的计算机程序时,所述处理器执行根据权利要求1至5中任一项所述的基于区块链的网络分片认证方法。

10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时,所述处理器执行根据权利要求1至5中任一项所述的基于区块链的网络分片认证方法。

说明书 :

基于区块链的网络分片认证方法、系统、网元及存储介质

技术领域

[0001] 本公开涉及区块链技术领域,尤其涉及一种基于区块链的网络分片认证方法、一种基于区块链的网络分片认证系统、一种接入和移动性管理网元以及一种计算机可读存储介质。

背景技术

[0002] 5G(5th‑Generation,第五代移动通信技术)网络用户的业务订购信息中,包含了对于特定的单网络分片是否需要单独进行身份验证和授权的指示信息。订购信息中指明需要进行单独身份验证和授权的分片,用户在请求相应的业务时,除了完成5G网络接入时的认证和授权操作外,还需要针对这些分片执行NSSAA(Network Slice‑Specific Authentication and Authorization,特定于网络分片的身份验证和授权)过程。
[0003] 目前NSSAA是由AMF(Access and Mobility Management Function,接入和移动性管理功能实体)来完成的。并且当UE保持在注册(RM‑REGISTERED)状态时,AMF不需要针对UE的周期性注册更新过程或移动性注册更新过程再次执行NSSAA过程。但是由于无线信号质量不佳、网络管理事件等因素,可能导致UE(User Equipment,用户设备)进入注销状态,这时UE就必须重新发起初始注册过程。由于UE每次向网络发起初始注册时,(如果注册请求中包含的NSSAI(Network Slice Selection Assistance Information,网络分片选择辅助信息)中含有需要进行NSSAA的S‑NSSAI(单网络分片选择辅助信息))AMF都会调用NSSAA过程,这不利于快速恢复UE意外断开的业务,进而影响用户的终端使用体验。

发明内容

[0004] 本公开提供了一种基于区块链的网络分片认证方法、系统、接入和移动性管理网元及计算机可读存储介质,利用区块链的防篡改性、同步性的特点,AMF在每次接收到UE的注册请求时,根据区块链中的NSSAA结果允许或者拒绝单网络分片,而不用频繁执行NSSAA过程,以至少解决上述技术问题。
[0005] 根据本公开实施例的一方面,提供一种基于区块链的网络分片认证方法,包括:
[0006] 接收用户终端的注册请求,所述注册请求中携带需要进行特定于网络分片的身份验证和授权的单网络分片标识;以及,
[0007] 判断区块链中是否存在所述用户终端的与所述单网络分片标识对应的单网络分片关于特定于网络分片的身份验证和授权的第一结果,若是,则基于所述第一结果允许或者拒绝所述单网络分片的使用。
[0008] 在这一种实施方式中,在判断区块链中是否存在所述用户终端的与所述单网络分片标识对应的单网络分片关于特定于网络分片的身份验证和授权的第一结果之后,以及基于所述第一结果允许或者拒绝所述单网络分片的使用之前,还包括:
[0009] 判断所述第一结果是否超过其预设的有效期限,若否,则执行基于所述第一结果允许或者拒绝所述单网络分片的使用的步骤。
[0010] 在一种实施方式中,在判断区块链中是否存在所述用户终端的与所述单网络分片标识对应的单网络分片关于特定于网络分片的身份验证和授权的第一结果之后,还包括:
[0011] 若区块链中不存在所述第一结果,则执行针对所述单网络分片的特定于网络分片的身份验证和授权过程,得到所述单网络分片关于特定于网络分片的身份验证和授权的第二结果;以及,
[0012] 基于所述第二结果允许或者拒绝所述单网络分片的使用。
[0013] 在一种实施方式中,在执行针对所述单网络分片的特定于网络分片的身份验证和授权过程,得到所述单网络分片关于特定于网络分片的身份验证和授权的第二结果之后,还包括:
[0014] 基于所述第二结果创建描述信息,所述描述信息中包括所述用户终端的用户身份标识、所述单网络分片标识、所述第二结果及其有效期限;以及,
[0015] 对所述描述信息进行签名并发送至所述用户终端,以使所述用户终端对所述描述信息追加签名后发送至统一数据管理功能网元,并使所述统一数据管理功能网元对所述描述信息再次追加签名后广播至区块链中。
[0016] 在一种实施方式中,在对所述描述信息进行签名并发送至所述用户终端之后,还包括:
[0017] 判断是否接收到所述用户终端对所述描述信息中关于第二结果的有效期限的更新信息;
[0018] 若是,则重新执行针对所述单网络分片的特定于网络分片的身份验证和授权过程,得到所述单网络分片关于特定于网络分片的身份验证和授权的第三结果;
[0019] 基于所述第二结果的有效期限的更新信息和所述第三结果生成新的描述信息,所述新的描述信息包括所述用户终端的用户身份标识、所述单网络分片标识、所述第三结果及所述第二结果的有效期限的更新信息;以及,
[0020] 对所述新的描述信息进行签名并发送至所述用户终端,以使所述用户终端对所述新的描述信息追加签名后发送至统一数据管理功能网元,并使所述统一数据管理功能网元对所述新的描述信息再次追加签名后广播至区块链中。
[0021] 根据本公开实施例的另一方面,提供一种基于区块链的网络分片认证系统,包括:
[0022] 接收模块,其设置为接收用户终端的注册请求,所述注册请求中携带需要进行特定于网络分片的身份验证和授权的单网络分片标识;以及,
[0023] 判断模块,其设置为判断区块链中是否存在所述用户终端的与所述单网络分片标识对应的单网络分片关于特定于网络分片的身份验证和授权的第一结果;
[0024] 第一执行模块,其设置为在所述判断模块判断为存在所述第一结果时,基于所述第一结果允许或者拒绝所述单网络分片的使用。
[0025] 在一种实施方式中,所述判断模块还设置为,在判断区块链中是否存在所述用户终端的与所述单网络分片标识对应的单网络分片关于特定于网络分片的身份验证和授权的第一结果之后,以及所述第一执行模块基于所述第一结果允许或者拒绝所述单网络分片的使用之前,判断所述第一结果是否超过其预设的有效期限,若否,则执行基于所述第一结果允许或者拒绝所述单网络分片的使用的步骤。
[0026] 在一种实施方式中,所述系统还包括:
[0027] 第二执行模块,其设置为在所述判断模块判断为区块链中不存在所述第一结果时,执行针对所述单网络分片的特定于网络分片的身份验证和授权过程,得到所述单网络分片关于特定于网络分片的身份验证和授权的第二结果;以及,基于所述第二结果允许或者拒绝所述单网络分片的使用。
[0028] 根据本公开实施例的又一方面,提供一种接入及移动性管理功能网元,包括存储器和处理器,所述存储器中存储有计算机程序,当所述处理器运行所述存储器存储的计算机程序时,所述处理器执行所述的基于区块链的网络分片认证方法。
[0029] 根据本公开实施例的再一方面,提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时,所述处理器执行所述的基于区块链的网络分片认证方法。
[0030] 本公开的实施例提供的技术方案可以包括以下有益效果:
[0031] 本公开实施例提供的基于区块链的网络分片认证方法,通过接收用户终端的注册请求,所述注册请求中携带需要进行特定于网络分片的身份验证和授权的单网络分片标识;以及,判断区块链中是否存在所述用户终端的与所述单网络分片标识对应的单网络分片关于特定于网络分片的身份验证和授权的第一结果,若是,则基于所述第一结果允许或者拒绝所述单网络分片的使用。本公开实施例利用区块链的同步性、防篡改性及安全性等特点,AMF在每次接收到UE的注册请求时,根据区块链中的NSSAA结果允许或者拒绝单网络分片,而不用频繁执行NSSAA过程,以快速恢复UE意外断开的业务,提升用户的终端使用体验。
[0032] 本公开的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本公开而了解。本公开的目的和其他优点可通过在说明书、权利要求书以及附图中所特别指出的结构来实现和获得。

附图说明

[0033] 附图用来提供对本公开技术方案的进一步理解,并且构成说明书的一部分,与本公开的实施例一起用于解释本公开的技术方案,并不构成对本公开技术方案的限制。
[0034] 图1为本公开实施例提供的一种基于区块链的网络分片认证方法的流程示意图;
[0035] 图2为本公开实施例提供的另一种基于区块链的网络分片认证方法的流程示意图;
[0036] 图3为本公开实施例提供的又一种基于区块链的网络分片认证方法的流程示意图;
[0037] 图4为本公开实施例提供的一种基于区块链的网络分片认证系统的结构示意图;
[0038] 图5为本公开实施例提供的一种接入及移动性管理功能网元的结构示意图。

具体实施方式

[0039] 为使本公开实施例的目的、技术方案和优点更加清楚,以下结合附图对本公开的具体实施方式进行详细说明。应当理解的是,此处所描述的具体实施方式仅用于说明和解释本公开,并不用于限制本公开。
[0040] 需要说明的是,本公开的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序;并且,在不冲突的情况下,本公开中的实施例及实施例中的特征可以相互任意组合。
[0041] 在后续的描述中,使用用于表示元件的诸如“模块”、“部件”或“单元”的后缀仅为了有利于本公开的说明,其本身没有特定的意义。因此,“模块”、“部件”或“单元”可以混合地使用。
[0042] 目前在5G TS23.501 R16版本规范中定义的NSSAA方法是有AMF(Access and Mobility Management Function,接入和移动性管理功能实体)调用EAP(Extensible Authentication Protocol,可扩展身份验证协议)过程来完成的。并且当UE保持在注册(RM‑REGISTERED)状态时,AMF不需要针对UE的周期性注册更新过程或移动性注册更新过程再次执行NSSAA过程。
[0043] 但是由于无线信号质量不佳、网络管理事件等因素,可能导致UE进入注销(RM‑DEREGISTERED)状态,而且这些情况下,站在用户的角度,往往属于意外情况,即用户无法预知这些直接导致UE进入注销状态的事件的发生。这时UE就必须重新发起初始注册过程。由于UE(用户设备)每次向网络发起初始注册时,(如果注册请求中包含的NSSAI(Network Slice Selection Assistance Information,单网络分片选择辅助信息)中含有需要进行NSSAA的S‑NSSAI(单网络分片选择辅助信息))AMF都会调用NSSAA过程。特别是如果UE所请求的NSSAI中包含的S‑NSSAI全部都需要执行NSSAA,AMF只能先向UE返回一个允许NSSAI的空列表,等到S‑NSSAI对应的NSSAA过程执行完毕后再对允许NSSAI列表进行更新。终端在此期间,除紧急业务(例如报警)外,不能使用其他业务。
[0044] 这对于意外进入注销状态的UE来说,无法快速的恢复之前正在使用的业务。特别是使用订购信息中指明需要进行单独身份验证和授权的单网络分片的业务,一般都是比较重要的,甚至于是付费的。意外断开业务而又不能快速恢复,这降低了用户业务体验。
[0045] 为解决上述技术问题,本公开实施例提出了利用区块链技术,对于UE的注册请求,AMF根据区块链中的NSSAA过程执行结果允许或者拒绝S‑NSSAI的使用,不必频繁执行NSSAA过程。具体地,可以基于智能合约的形式,在UE和网络之间达成关于需要进行单独身份验证和授权的单网络分片的认证授权合约,并设立合约有效期,在合约有效期内,不论UE的初始注册过程还是周期性注册更新过程以及移动性注册更新过程,AMF都不必执行NSSAA过程。从而使意外进入注销状态的UE可以快速的恢复意外断开的业务,而不必等待现有NSSAA过程带来的延迟。
[0046] 请参照图1,图1为本公开实施例提供的一种基于区块链的网络分片认证方法的流程示意图,应用于AMF,所述方法包括步骤S101‑步骤S103。
[0047] 在步骤S101中,接收用户终端的注册请求,所述注册请求中携带需要进行特定于网络分片的身份验证和授权的单网络分片标识。
[0048] 其中用户终端的注册请求可以为初始注册过程向网络侧发起的注册请求,也可以是注册更新过程向网络侧发起的注册请求。
[0049] 可以理解的是,单网络分片标识即为单网络分片选择辅助信息S‑NSSAI,本实施例的S‑NSSAI为用户请求的网络分片NSSAI的S‑NSSAI集合中需要执行NSSAA过程的S‑NSSAI。
[0050] 在步骤S102中,判断区块链中是否存在所述用户终端的与所述单网络分片标识对应的单网络分片关于特定于网络分片的身份验证和授权的第一结果,若是,则执行步骤S103,否则,执行步骤S104。
[0051] 本实施例中,所述用户终端执行过NSSAA过程的S‑NSSAI的NSSAA结果会上传至区块链,若用户终端针对所述S‑NSSAI执行过NSSAA过程,AMF将从区块链中直接获取需要进行NSSAA过程的S‑NSSAI的NSSAA结果,而不需要再对其执行NSSAA过程。
[0052] 在一些实施例中,在步骤S101之后以及步骤S102之前,AMF首先检查本地是否保存了UE的注册请求中携带的S‑NSSAI的NSSAA的执行结果,如果没有再执行步骤S102。
[0053] 在步骤S103中,基于所述第一结果允许或者拒绝所述单网络分片的使用。
[0054] 具体地,NSSAA的执行结果中可以包括验证成功和验证失败,如果验证结果为成功,则AMF可以将该S‑NSSAI加入“允许列表”,允许用户终端对该S‑NSSAI的使用,否则,加入“拒绝列表”,拒绝用户终端对该S‑NSSAI的使用。
[0055] 需要说明的是,如果用户终端所请求的NSSAI中包括多个需要执行NSSAA过程的S‑NSSAI时,AMF可以同时判断区块链中是否存在各个S‑NSSAI的NSSAA的执行结果,并分别允许使用或者拒绝使用。
[0056] 在步骤S104中,执行针对所述单网络分片的特定于网络分片的身份验证和授权过程,得到所述单网络分片关于特定于网络分片的身份验证和授权的第二结果。
[0057] 在步骤S105中,基于所述第二结果允许或者拒绝所述单网络分片的使用。
[0058] 请参照图2,图2为本公开实施例提供的另一种基于区块链的网络分片认证方法,在上一实施例的基础上,本实施例对于S‑NSSAI的NSSAA执行结果的使用考虑了其有效期限,避免该NSSAA执行结果的无限期使用,具体地,在判断区块链中是否存在所述用户终端的与所述单网络分片标识对应的单网络分片关于特定于网络分片的身份验证和授权的第一结果(步骤S102)之后,以及基于所述第一结果允许或者拒绝所述单网络分片的使用(步骤S103)之前,还包括步骤S201。
[0059] 在步骤S201中,判断所述第一结果是否超过其预设的有效期限,若否,则执行步骤S103基于所述第一结果允许或者拒绝所述单网络分片的使用,否则,执行步骤S104。
[0060] 在一些实施例中,如果用户终端的S‑NSSAI执行过NSSAA,区块链节点在将NSSAA的第一结果上传至区块链时一并上传其有效期限,该NSSAA的第一结果在该有效期限内有效。
[0061] 可以理解的是,区块链虽然具备同步更新和防篡改等功能特性,但其对于区块链中记录的信息可以重复使用,例如本申请的NSSAA执行结果,如果UE的业务订购信息发生变化,当前的NSSAA执行结果将不再适用,因此本申请中设置区块链中NSSAA的有效期限,以避免该NSSAA执行结果的无限期使用。
[0062] 请参照图3,图3为本公开实施例提供的又一种基于区块链的网络分片认证方法的流程示意图,在上一实施例的基础上,本实施例AMF执行完NSSAA过程后,生成包含NSSAA第二结果的描述信息,并将描述信息上传至区块链,当UE再次发起注册请求时,任一AMF可以基于区块链中的该第二结果允许或者拒绝相应S‑NSSAI的使用,具体地,在执行针对所述单网络分片的特定于网络分片的身份验证和授权过程,得到所述单网络分片关于特定于网络分片的身份验证和授权的第二结果(即步骤S104)之后,还包括步骤S301和步骤S302。
[0063] 在步骤S301中,基于所述第二结果创建描述信息,所述描述信息中包括所述用户终端的用户身份标识、所述单网络分片标识、所述第二结果及其有效期限。
[0064] 其中,若存在多个需要执行NSSAA过程的S‑NSSAI,可以基于多个S‑NSSAI的执行结果创建描述信息,即描述信息中可以包括多组S‑NSSAI的执行结果。当然,在一些实施方式中,也可以针对每一个S‑NSSAI的执行结果建立一个描述信息,本公开实施对此并不对此进行限定。
[0065] 该第二结果的有效期限可以是AMF预先设定好的,并且该有效期限可以进行修改更新,用户终端以及网络侧的UDM(Unified Data Management,统一数据管理功能网元)设备均可以对该有效期限进行修改更新。
[0066] 在步骤S302中,对所述描述信息进行签名并发送至所述用户终端,以使所述用户终端对所述描述信息追加签名后发送至统一数据管理功能网元,并使所述统一数据管理功能网元对所述描述信息再次追加签名后广播至区块链中。
[0067] 本实施例中,为保证该NSSAA执行结果的安全性,描述信息需要经过用户终端、AMF及UDM的签名,并由UDM广播至区块链才能生效(具体原理参见下述实施例中签名步骤的内容)。其中UDM具备3GPP AKA身份验证凭证的生成、用户标识处理、支持取消隐藏受隐私保护的用户标识符(SUCI)、基于签约数据的接入认证(例如漫游限制)、UE服务的NF注册管理(例如,为UE存储服务AMF)、支持服务/会话连续性等功能。
[0068] 在一些实施例中,AMF如果需要使用到该第二结果,需先验证UDM签名和UE签名,以保证第二结果的安全性,相应的,对于步骤S102的第一结果,在其上传至区块链之前也经过上述相应步骤,需要验证该第一结果是否具备UDM签名和UE签名,如果有则判定存在第一结果,否则判定其为虚假或者无不执行后续步骤S103。
[0069] 在此过程中,本实施例移动网络对UE通过NSSAA过程获得的认证和授权信息签名,然后发送给UE。UE自己决定是否需要广播到区块链。如果UE将该信息广播到区块链,则对该信息签名并发送给UDM。UDM决定是否需要广播到区块链。如果将该信息广播到区块链,则在该信息的有效期内,移动网络不会再针对该信息中包含的S‑NSSAI和UE执行NSSAA过程。
[0070] 进一步地,本实施例UE可以在第二结果上传至区块链之后,对描述信息中的有效期限进行修改更新,具体地,在对所述描述信息进行签名并发送至所述用户终端(步骤S302)之后,还包括以下步骤:
[0071] 判断是否接收到所述用户终端对所述描述信息中关于第二结果的有效期限的更新信息;
[0072] 若是,则重新执行针对所述单网络分片的特定于网络分片的身份验证和授权过程,得到所述单网络分片关于特定于网络分片的身份验证和授权的第三结果;
[0073] 基于所述第二结果的有效期限的更新信息和所述第三结果生成新的描述信息,所述新的描述信息包括所述用户终端的用户身份标识、所述单网络分片标识、所述第三结果及所述第二结果的有效期限的更新信息;以及,
[0074] 对所述新的描述信息进行签名并发送至所述用户终端,以使所述用户终端对所述新的描述信息追加签名后发送至统一数据管理功能网元,并使所述统一数据管理功能网元对所述新的描述信息再次追加签名后广播至区块链中。
[0075] 需要说明的是,本实施例中UE、UDM均可以对有效期限进行修改更新,考虑到AMF不知道UE业务订购信息过程,其对于UE发起的有效期限更新需要AMF重新执行NSSAA过程,以实现切片信息的认证授权,而UDM可存储业务订购信息,UDM发起的修改更新则不再需要重新执行NSSAA过程。
[0076] 在上述实施例的基础上,本公开实施例提供再一种基于区块链的网络分片认证方法,本实施例以创建智能合约的形式实现本公开的技术方案,该智能合约包括下述步骤(1)‑(7):
[0077] (1)UE的注册请求中包含了某个需要执行NSSAA过程的S‑NSSAI
[0078] (2)AMF检查本地是否保存了UE的注册请求中携带的S‑NSSAI的NSSAA的执行结果。如果有则跳过(3)至(6)。
[0079] (3)AMF查看区块链上是否有描述信息D{GPSI,(S‑NSSAI,RESULT),EXPIRATION‑TIME},其中的GPSI与发起注册请求的UE的GPSI匹配,且S‑NSSAI与UE注册请求中的S‑NSSAI相匹配,且EXPIRATION‑TIME尚未到达:
[0080] a)如果有,
[0081] 1.验证UDM签名和UE签名
[0082] 2.根据RESULT的值,将S‑NSSAI加入对应的列表:
[0083] 1)如果RESULT值为success,则将S‑NSSAI加入“允许列表”
[0084] 2)如果RESULT值为failure,则将S‑NSSAI加入“拒绝列表”
[0085] 3.跳过步骤(3)b)及(4)至(7)
[0086] b)执行(4)至(7)
[0087] (A)需要说明的是,所述的AMF指的是UE发起注册请求时为UE提供服务的AMF,因此可能是UE归属网络的AMF也可能是漫游地网络的AMF。而(3)a)1.中的UDM始终指的是UE归属网络的UDM。UE在漫游地网络时生成的描述信息D,在UE回到归属网络后,如果尚未超期,则其有效与否属于运营商的商业策略,本发明不做限定。同样的,UE在归属网络中时生成的描述信息D,在UE进入到漫游地网络后,如果尚未超期,其有效与否同样属于运营商的商业策略。GPSI:Generic Public Subscription Identifier,通用公共用户标识,即本公开中的用户身份标识。
[0088] (4)AMF执行NSSAA过程,根据NSSAA过程执行结果创建描述信息D{GPSIUE,(S‑NSSAI,RESULT),EXPIRATION‑TIMEUE&S‑NSSAI}
[0089] AMF设置的EXPIRATION‑TIMEUE&S‑NSSAI的值,可以根据AMF的本地策略,也可以向PCF查询移动通信网络的上配置的策略。
[0090] 其中,D中的(S‑NSSAI,RESULT)可以有多组,也可以只有一组。即可以把多个不同S‑NSSAI及其认证和授权结果写在一个描述信息D中,也可以每条描述信息仅包含一个S‑NSSAI及其认证和鉴权结果。AMF可以根据本地策略或来自PCF(Policy Control Function,策略控制功能实体)的动态策略决定。UE也可以(根据本地策略或用户设置)将包含多个不同S‑NSSAI及其认证和授权结果的D,进行拆分,然后发送给AMF,然后执行(5)至(7)。
[0091] (5)AMF对D签名,然后将D发送给UE
[0092] (6)UE对D追加签名,然后将D发送给UDM
[0093] 在此过程中,如果(4)中的RESULT值为failure,UE可以选择不将D发送给UDM。即对于NSSAA认证和授权失败的S‑NSSAI,UE选择每次进行初始注册时都执行NSSAA。从而避免因为D的存在影响该S‑NSSAI认证和授权结果的更新。
[0094] (7)UDM对D追加签名,然后将D广播到区块链
[0095] 其中,UDM可以在将D广播到区块链之前,修改EXPIRATION‑TIMEUE&S‑NSSAI的值,将修改后的D发送给AMF,然后执行(5)至(7)。例如UDM在收到来自UE的带有AMF和UE签名的D之后,检查是否存在UE业务订购信息变更的信息,如果业务订购信息的变更会引起D中的S‑NSSAI的认证和鉴权关系的变化,则修改EXPIRATION‑TIMEUE&S‑NSSAI的值以消除这种影响。UDM也可以选择不广播D,从而回到现有的标准过程。
[0096] 在一些实施例中,还该智能合约还包括对描述信息D的更新过程:
[0097] (1)UE将区块链上的,尚在有效期内的,关于某个S‑NSSAI的D的EXPIRATION‑TIMEUE&S‑NSSAI的值修改为一个预期的数值EXPIRATION‑TIMErenew,得到Drenew{GPSIUE,(S‑NSSAI,RESULT),EXPIRATION‑TIMErenew}
[0098] 其中UE可以选择在空闲状态下自动(后台)更新D。由此可以使D经常处于有效状态。
[0099] (2)UE对Drenew签名,发送给AMF。
[0100] (3)AMF对Drenew中的S‑NSSAI执行NSSAA过程,将得到的执行结果RESULTrenew写入Drenew,得到Drenew{GPSIUE,(S‑NSSAI,RESULTrenew),EXPIRATION‑TIMErenew}[0101] 其中,AMF可以根据本地策略或者通过PCF查询网络侧的策略,修改EXPIRATION‑TIMErenew的值。
[0102] (4)AMF对Drenew签名后发送给UE
[0103] (5)UE对Drenew追加签名,然后将Drenew发送给UDM
[0104] 相应的,如果(4)中的RESULTrenew值为failure,UE可以选择不对D进行签名,并不将D发送给UDM。
[0105] (6)UDM对Drenew追加签名,然后将Drenew广播到区块链
[0106] 具体地,UDM可以在将D广播到区块链之前,修改EXPIRATION‑TIMErenew的值,将修改后的D发送给AMF,然后执行(4)至(6)
[0107] 需要说明的是,按照TS23.501  R16版本规范中的规定,NSSAA过程的AAA(Authentication Authorization Accounting,认证授权)服务器、AMF等均可以根据本地策略或动态网络策略随时重新发起对某个S‑NSSAI重新执行NSSAA过程。如果因此而得出的结果与尚处在有效期内的D中的结果不同。同样的UE发起的对更新过程合约的执行结果,也会面临某个S‑NSSAI的NSSAA过程结果与现有的描述信息中的不同。上述两种情况下,具体应用哪个结果属于运营商的商业策略,以及运营商与用户是否另有约定,此实施例中不做限定。但是如果确实出现这种情况,本实施例并不妨碍UE和AMF按照现有5G规范中定义的方式执行规定的操作。例如,如果某个s‑nssai在描述信息中的RESULT为success,而执行NSSAA过程的结果为failure,AMF可以按照现有5G规范中的定义,通知UE关闭与该s‑nssai向关联的业务会话。
[0108] 为便于理解,本实施例对上述智能合约的实现过程作以下示例,针对用户终端初始注册,提供示例1:
[0109] (1)UE的GPSI为gpsi,其发起的注册请求中携带了4个S‑NSSAI,s‑nssai1、s‑nssai2、s‑nssai3和s‑nssai4。其中,s‑nssai2、s‑nssai3和s‑nssai4需要执行NSSAA过程。
[0110] (2)由于是初始注册,AMF本地没有保存UE的S‑NSSAI的NSSAA过程的执行结果。因此继续执行(3)
[0111] (3)当前时刻为time0,AMF检查区块链上是否有描述信息D1{gpsi,(s‑nssai2,success),expiration‑time1}、D2{gpsi,(s‑nssai3,failure),expiration‑time2}和D3{gpsi,(s‑nssai4,success),expiration‑time3}。其中expiration‑time2和expiration‑time3均在time0之前,即已超期。
[0112] a)D1为满足条件的描述信息,因此:
[0113] 1.AMF验证D1所带有的UDM签名和UE签名均有效
[0114] 2.将s‑nssai2加入允许列表
[0115] 3.对s‑nssai3和s‑nssai4执行上述智能合约(4)至(7)
[0116] (4)AMF对s‑nssai3和s‑nssai4执行NSSAA过程,结果均为success。创建描述信息D4{gpsi,(s‑nssai3,success),(s‑nssai4,success),expiration‑time4}[0117] (5)AMF对D4签名,然后将D4发送给UE
[0118] (6)UE对D4追加签名,然后将D4发送给UDM
[0119] (7)UDM对D4追加签名,然后将D4广播到区块链。
[0120] 需要说明的是,示例1将UE注册时包含的多个S‑NSSAI混合在一个过程里面一起描述,对于上述智能合约的描述方式是针对每一个S‑NSSAI进行描述的。
[0121] 进一步地,在示例1的基础上,提供示例2:
[0122] (1)UDM收到来自UE的D4后,发现expiration‑time4(例如某月1日24点整)在UE所预定的业务变更生效期(例如某月1日0点整)之后,如是将D4修改为D5{gpsi,(s‑nssai3,success),(s‑nssai4,success),expiration‑time5},对D5签名后发送给AMF。其中expiration‑time5的为所预定的业务变更生效期或生效期之前(例如某月1日0点整;或某月1日0点前1秒,即上月最后1日23点59分59秒)
[0123] (2)AMF对D5追加签名,然后将D5发送给UE
[0124] (3)UE对D5追加签名,然后将D5发送给UDM
[0125] (4)UDM将D5广播到区块链
[0126] 进一步地,在示例1的基础上,提供示例3:
[0127] (1)示例1中的(6),UE此时认为将s‑nssai3和s‑nssai4设置在同一个描述信息D4中不符合本地策略(或不符合用户设置),于是将D4拆分为D5{gpsi,(s‑nssai3,success),expiration‑time4}和D6{gpsi,(s‑nssai4,success),expiration‑time4}。然后对D5和D6分别签名后发送给AMF。
[0128] (2)AMF对D5和D6分别追加签名,然后将D5和D6发送给UDM
[0129] (3)UDM对D5和D6分别追加签名,然后将D5和D6广播到区块链进一步地,在示例1的基础上,提供可进行描述信息更新的示例4:
[0130] (1)UE处于RM‑REGISTERED状态,UE识别到区块链上的D1的有效期即将超期,于是根据本地策略将expiration‑time1的值增加了86400秒(即24小时),得到expiration‑time6,将D1修改为D6{gpsi,(s‑nssai2,success),expiration‑time6}
[0131] (2)UE对D6签名,发送给AMF
[0132] (3)AMF对D6中的s‑nssai2执行NSSAA过程,结果为failure,于是将D6修改为D7{gpsi,(s‑nssai2,failure),expiration‑time6}
[0133] (4)AMF对D7签名后发送给UE
[0134] (5)UE发现D7的RESULT为failure,于是不执行后续操作。
[0135] 需要说明的是,(1)UE不执行后续操作,表明UE希望按照区块链上的智能合约维持s‑nssai2的success状态。并且担心区块链上存在的以failure为NSSAA结果的描述信息会对后续的业务产生影响。(2)但是如上述实施例关于超期的阐述,移动通信网络是否按照区块链上的智能合约维持s‑nssai2的success状态知道D1的有效期超期,可以取决于运营商的商业策略以及运营商是否与用户就此另有约定。
[0136] 进一步地,在示例4的基础上,提供示例5:
[0137] (1)示例5中的步骤(5),UE发现D7的RESULT为failure,但仍然对D7追加签名,发送给UDM。
[0138] (2)UDM对D7追加签名,然后将D7广播到区块链。
[0139] 需要说明的是,UE继续执行后续操作,表明UE并不需要继续维持s‑nssai2的success状态。并且不担心区块链上存在的以failure为NSSAA结果的描述信息会对后续的业务产生影响。
[0140] 进一步地,在示例4的基础上,提供示例6:
[0141] (1)实施例4中的步骤(3),AMF对D6中的s‑nssai2执行NSSAA过程,结果为success。并且expiration‑time6不与本地策略冲突且不与来自PCF的动态策略冲突,于是将D6修改为D7{gpsi,(s‑nssai2,sucess),expiration‑time6}
[0142] (2)AMF对D7签名后发送给UE
[0143] (3)UE对D7追加签名,发送给UDM。
[0144] (4)UDM判断出expiration‑time6不会产生冲突,对D7追加签名,然后将D7广播到区块链。
[0145] 另一方面,针对用户终端段周期性注册更新或移动性注册更新,提供示例7:
[0146] (1)UE的GPSI为gpsi,其发起的注册请求中携带了4个S‑NSSAI,s‑nssai1、s‑nssai2、s‑nssai3和s‑nssai4。其中,s‑nssai2、s‑nssai3和s‑nssai4需要执行NSSAA过程。
[0147] (2)AMF本地保存了s‑nssai2的NSSAA执行结果success。
[0148] (3)对s‑nssai3和s‑nssai4执行上述智能合约的步骤(3)至(7)
[0149] 需要说明的是,示例7将UE注册时包含的多个S‑NSSAI混合在一个过程里面一起描述。而上述智能合约的描述方式是针对每一个S‑NSSAI进行描述的。
[0150] 基于相同的技术构思,本公开实施例相应还提供一种基于区块链的网络分片认证系统,如图4所示,所述系统包括接收模块41、判断模块42以及第一执行模块43,其中,[0151] 所述接收模块41,其设置为接收用户终端的注册请求,所述注册请求中携带需要进行特定于网络分片的身份验证和授权的单网络分片标识;以及,
[0152] 所述判断模块42,其设置为判断区块链中是否存在所述用户终端的与所述单网络分片标识对应的单网络分片关于特定于网络分片的身份验证和授权的第一结果;
[0153] 所述第一执行模块43,其设置为在所述判断模块判断为存在所述第一结果时,基于所述第一结果允许或者拒绝所述单网络分片的使用。
[0154] 在一种实施方式中,所述判断模块还设置为,在判断区块链中是否存在所述用户终端的与所述单网络分片标识对应的单网络分片关于之后,以及所述第一执行模块基于所述第一结果允许或者拒绝所述单网络分片的使用之前,判断所述第一结果是否超过其预设的有效期限,若否,则执行基于所述第一结果允许或者拒绝所述单网络分片的使用的步骤。
[0155] 在一种实施方式中,所述系统还包括:
[0156] 第二执行模块,其设置为在所述判断模块判断为区块链中不存在所述第一结果时,执行针对所述用户终端的所述单网络分片的特定于网络分片的身份验证和授权过程,得到所述单网络分片的特定于网络分片的身份验证和授权的第二结果;以及,基于所述第二结果允许或者拒绝所述单网络分片的使用。
[0157] 基于相同的技术构思,本公开实施例相应还提供一种接入及移动性管理功能网元,如图5所示,所述接入及移动性管理功能网元包括存储器51和处理器52,所述存储器51中存储有计算机程序,当所述处理器52运行所述存储器存储的计算机程序时,所述处理器执行所述的基于区块链的网络分片认证方法。
[0158] 基于相同的技术构思,本公开实施例相应还提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时,所述处理器执行所述的基于区块链的网络分片认证方法。
[0159] 本领域普通技术人员可以理解,上文中所公开方法中的全部或某些步骤、系统、装置中的功能模块/单元可以被实施为软件、固件、硬件及其适当的组合。在硬件实施方式中,在以上描述中提及的功能模块/单元之间的划分不一定对应于物理组件的划分;例如,一个物理组件可以具有多个功能,或者一个功能或步骤可以由若干物理组件合作执行。某些物理组件或所有物理组件可以被实施为由处理器,如中央处理器、数字信号处理器或微处理器执行的软件,或者被实施为硬件,或者被实施为集成电路,如专用集成电路。这样的软件可以分布在计算机可读介质上,计算机可读介质可以包括计算机存储介质(或非暂时性介质)和通信介质(或暂时性介质)。如本领域普通技术人员公知的,术语计算机存储介质包括在用于存储信息(诸如计算机可读指令、数据结构、程序模块或其他数据)的任何方法或技术中实施的易失性和非易失性、可移除和不可移除介质。计算机存储介质包括但不限于RAM、ROM、EEPROM、闪存或其他存储器技术、CD‑ROM、数字多功能盘(DVD)或其他光盘存储、磁盒、磁带、磁盘存储或其他磁存储装置、或者可以用于存储期望的信息并且可以被计算机访问的任何其他的介质。此外,本领域普通技术人员公知的是,通信介质通常包含计算机可读指令、数据结构、程序模块或者诸如载波或其他传输机制之类的调制数据信号中的其他数据,并且可包括任何信息递送介质。
[0160] 最后应说明的是:以上各实施例仅用以说明本公开的技术方案,而非对其限制;尽管参照前述各实施例对本公开进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本公开各实施例技术方案的范围。