CN117082507A - 通信方法和网元设备 - Google Patents
通信方法和网元设备 Download PDFInfo
- Publication number
- CN117082507A CN117082507A CN202210499769.7A CN202210499769A CN117082507A CN 117082507 A CN117082507 A CN 117082507A CN 202210499769 A CN202210499769 A CN 202210499769A CN 117082507 A CN117082507 A CN 117082507A
- Authority
- CN
- China
- Prior art keywords
- network element
- network function
- authentication result
- network
- function network
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 315
- 238000004891 communication Methods 0.000 title claims abstract description 54
- 230000006870 function Effects 0.000 claims description 644
- 238000012795 verification Methods 0.000 claims description 112
- 230000015654 memory Effects 0.000 claims description 49
- 230000032683 aging Effects 0.000 claims description 15
- 238000004590 computer program Methods 0.000 claims description 13
- 238000010295 mobile communication Methods 0.000 abstract description 7
- 230000004044 response Effects 0.000 description 56
- 238000013475 authorization Methods 0.000 description 48
- 230000008569 process Effects 0.000 description 42
- 238000012545 processing Methods 0.000 description 39
- 238000007726 management method Methods 0.000 description 33
- 230000003993 interaction Effects 0.000 description 32
- 230000000875 corresponding effect Effects 0.000 description 22
- 230000011664 signaling Effects 0.000 description 17
- 230000005540 biological transmission Effects 0.000 description 15
- 230000002829 reductive effect Effects 0.000 description 15
- 238000005259 measurement Methods 0.000 description 10
- 230000036961 partial effect Effects 0.000 description 8
- 230000007774 longterm Effects 0.000 description 6
- 238000012423 maintenance Methods 0.000 description 6
- 238000010586 diagram Methods 0.000 description 5
- 230000008447 perception Effects 0.000 description 5
- 238000005516 engineering process Methods 0.000 description 4
- 238000012986 modification Methods 0.000 description 4
- 230000004048 modification Effects 0.000 description 4
- 230000001360 synchronised effect Effects 0.000 description 4
- 238000012546 transfer Methods 0.000 description 4
- 239000002699 waste material Substances 0.000 description 4
- 230000008859 change Effects 0.000 description 3
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 238000013523 data management Methods 0.000 description 3
- 238000013461 design Methods 0.000 description 3
- 230000000977 initiatory effect Effects 0.000 description 3
- 230000002159 abnormal effect Effects 0.000 description 2
- 230000009471 action Effects 0.000 description 2
- 230000003190 augmentative effect Effects 0.000 description 2
- 230000006399 behavior Effects 0.000 description 2
- 230000008901 benefit Effects 0.000 description 2
- 230000001413 cellular effect Effects 0.000 description 2
- 239000003795 chemical substances by application Substances 0.000 description 2
- 238000007405 data analysis Methods 0.000 description 2
- 238000001514 detection method Methods 0.000 description 2
- 230000001976 improved effect Effects 0.000 description 2
- 230000008093 supporting effect Effects 0.000 description 2
- 230000001960 triggered effect Effects 0.000 description 2
- 101150119040 Nsmf gene Proteins 0.000 description 1
- 230000006978 adaptation Effects 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 230000001010 compromised effect Effects 0.000 description 1
- 238000012790 confirmation Methods 0.000 description 1
- 230000001276 controlling effect Effects 0.000 description 1
- 235000014510 cooky Nutrition 0.000 description 1
- 238000012517 data analytics Methods 0.000 description 1
- 238000012217 deletion Methods 0.000 description 1
- 230000037430 deletion Effects 0.000 description 1
- 230000036541 health Effects 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 230000000670 limiting effect Effects 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000007430 reference method Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000011144 upstream manufacturing Methods 0.000 description 1
- XLYOFNOQVPJJNP-UHFFFAOYSA-N water Substances O XLYOFNOQVPJJNP-UHFFFAOYSA-N 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W12/00—Security arrangements; Authentication; Protecting privacy or anonymity
- H04W12/06—Authentication
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W12/00—Security arrangements; Authentication; Protecting privacy or anonymity
- H04W12/10—Integrity
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
本申请实施例提供了一种通信方法和网元设备。该方法包括:第一网络功能网元获取具有完整性保护的证明信息,该证明信息包括认证结果以及与认证结果关联的范围指示信息,并在确定需要请求第二网络功能网元提供的服务的情况下,第一网络功能网元生成服务请求消息,以及向第二网络功能网元发送服务请求消息,该服务请求消息包括证明信息以及第一网络功能网元的标识。本申请所揭示的方法,能够抵御、减少移动通信网络中网络功能面临的潜在的安全风险,特别是针对采用软件实现或虚拟化方式实现的网络功能。
Description
技术领域
本申请涉及通信领域,并且更具体地,涉及一种通信方法和网元设备。
背景技术
当前,在服务化的架构(service based architecture,SBA)中,网络功能(network functions,NFs)网元之间基于服务化的接口进行交互。每个NF可以由硬件来实现,也可以由软件来实现。其中,软件实现的NFs具有可灵活部署、撤销、升级以及NFs间可共享资源、成本低等优越性,因此得到了许多运营商和生产厂商的关注。
然而,如果NFs采用软件或者虚拟化的方式来实现,例如,在进行实例化时、初次启动时、或者是在长时间的运行中,相比硬件实现的NFs,软件实现的NFs会面对更多的潜在安全风险,例如NFs软件代码被恶意篡改,运行状态被恶意监控,敏感信息遭到泄露,虚拟化功能、操作系统、虚拟机、虚拟机监控器等被黑客攻击等。因此,亟需采取额外的措施来应对,以便抵御、减少潜在的安全风险。
发明内容
本申请提供一种通信方法和网元设备,能够抵御、减少移动通信网络中网络功能面临的潜在的安全风险,特别是针对采用软件实现或虚拟化方式实现的网络功能。
第一方面,提供了一种通信方法,该方法可以由第一网络功能网元执行,或者,也可以由用于第一网络功能网元的芯片或电路执行,本申请对此不作限定。为了便于描述,下面以由第一网络功能网元执行为例进行说明。
该方法包括:第一网络功能网元获取具有完整性保护的证明信息,证明信息包括认证结果以及与认证结果关联的范围指示信息,认证结果用于表征第一网络功能网元是否可信,范围指示信息用于指示认证结果的有效范围,且范围指示信息包括第一网络功能网元的标识;在确定需要请求第二网络功能网元提供的服务的情况下,第一网络功能网元生成服务请求消息,服务请求消息包括证明信息以及第一网络功能网元的标识;第一网络功能网元向第二网络功能网元发送服务请求消息。
根据本申请提供的方案,通过在服务请求消息中携带证明信息,增加对第一网络功能网元的安全可信性的认证,能够减少移动通信网络中网络功能面临的潜在的安全风险,特别是针对采用软件实现或虚拟化方式实现的网络功能。
结合第一方面,在第一方面的某些实现方式中,范围指示信息还包括以下一项或者多项:第一网络功能网元的配置数据(例如,NF Profile)或部分配置数据;或第二网络功能网元的标识(例如,NRF ID)。
基于上述方案,通过范围指示信息携带额外的认证结果的有效范围,即第二网络功能网元不止验证第一网络功能网元的标识,还需要验证第一网络功能网元的配置数据或部分配置数据,和/或第二网络功能网元的标识,提高对第一网络功能网元的验证维度,进一步确保第一网络功能网元的真实可信。
结合第一方面,在第一方面的某些实现方式中,第一网络功能网元向验证方发送远程认证请求,远程认证请求包括度量,度量用于表征第一网络功能网元的运行状态;第一网络功能网元获取具有完整性保护的证明信息,具体为:第一网络功能网元接收来自验证方的证明信息,证明信息与度量关联。
基于上述方案,通过网络层和远程证明(RA)层之间的跨层交互(证明信息),实现网络层感知第一网络功能网元在RA层进行的远程证明的认证结果,并确保该远程证明是针对该第一网络功能网元的远程证明,从而确保在网络层请求服务的第一网络功能网元是安全可信的,有效减少虚拟化、软件化带来的安全风险。另外,本申请最大限度地实现网络层的服务请求流程和RA层的远程证明流程解耦,能够避免远程证明的敏感信息(例如evidence)在网络层泄露,即没有新增隐私泄露的安全风险。
结合第一方面,在第一方面的某些实现方式中,第一网络功能网元接收来自第二网络功能网元的新鲜性参数;其中,远程认证请求还包括新鲜性参数,证明信息还与新鲜性参数关联。
基于上述方案,新鲜性参数即为第二网络功能网元提供RA层的远程证明流程需要绑定的网络层参数。第二网络功能网元可以根据服务请求消息中携带的该新鲜性参数确定RA层的远程证明流程是专门响应第二网络功能网元发起的远程证明,更具有针对性和实效性。
结合第一方面,在第一方面的某些实现方式中,范围指示信息还包括新鲜性参数。
基于上述方案,通过携带第二网络功能网元提供的新鲜性参数,能够增加第一网络功能网元的实时可信度,避免由于第一网络功能网元携带的认证结果是较长时间以前完成的,而增加认证结果被恶意篡改的几率,使得第一网络功能网元不安全可信的情况发生。该实现方式能够增加第二网络功能网元对进行远程证明的控制权,减少潜在的风险。另外,第二网络功能网元可以根据携带的NRF的标识和NRF的地址确定是否进行后续的验证工作,可以避免不必要的资源浪费(例如,后续的验证操作)。
结合第一方面,在第一方面的某些实现方式中,第一网络功能网元向第二网络功能网元发送服务请求消息,包括:当认证结果表征第一网络功能网元是可信时,第一网络功能网元向第二网络功能网元发送服务请求消息。
基于上述方案,在确定认证结果表征第一网络功能网元是可信的情况下,第一网络功能网元才发送服务请求消息,能够减少后续不必要的网络流程,避免资源浪费。这是因为第二网络功能网元可能会在确定第一网络功能网元不可信的情况下而拒绝提供服务,造成不必要的信令开销。
结合第一方面,在第一方面的某些实现方式中,当服务为注册服务时,服务请求消息还包括第一网络功能网元的配置数据,服务请求消息用于请求存储第一网络功能网元的配置数据。
结合第一方面,在第一方面的某些实现方式中,当服务为授权服务时,证明信息还包括认证结果的有效期限,服务请求消息用于请求获取第一令牌,第一令牌用于授权第一网络功能网元访问第三网络功能网元的业务,方法还包括:第一网络功能网元接收来自第二网络功能网元的第一令牌和第一令牌的有效期限,第一令牌的有效期限小于或等于认证结果的有效期限。
基于上述方案,以服务请求消息为授权服务请求消息为例,能够避免第一网络功能网元无限制的访问第三网络功能网元的业务,尤其是在第一网络功能网元不安全可信的情况下,减少了潜在的风险。通过确定第一令牌的有效期限(小于认证结果的有效期限),能够保证当前访问第三网络功能网元的业务的第一网络功能网元是安全可信的。
结合第一方面,在第一方面的某些实现方式中,范围指示信息还包括认证结果的时效信息,该时效信息包括以下一项或者多项:认证结果的生成时间;认证结果生成时间以及有效时长;认证结果的有效的截止时间;或者认证结果的计数器值。
基于上述方案,通过携带远程认证的认证结果的时效信息,能够确定第一网络功能网元进行的远程认证的实时有效性,有利于第二网络功能网元确定是否为第一网络功能网元提供服务,从而避免第一网络功能网元在即将超过认证结果的有效期限时被提供服务,随即却被恶意篡改或攻击等而引入潜在的风险。
第二方面,提供了一种通信方法,该方法可以由第二网络功能网元执行,或者,也可以由用于第二网络功能网元的芯片或电路执行,本申请对此不作限定。为了便于描述,下面以由第二网络功能网元执行为例进行说明。
该方法包括:第二网络功能网元接收来自第一网络功能网元的服务请求消息,服务请求消息用于请求服务,服务请求消息包括第一网络功能网元的标识;在服务请求消息还包括具有完整性保护的证明信息的情况下,第二网络功能网元对证明信息的完整性保护进行验证;当证明信息的完整性保护验证通过时,第二网络功能网元根据证明信息确定是否向第一网络功能网元提供服务。
根据本申请提供的方案,第二网络功能网元在确定服务请求消息中携带具有完整性保护的证明信息的情况下,对证明信息进行验证,并在验证通过后进一步根据证明信息的具体内容确认是否向第一网络功能网元提供服务。该实现方式相比于现有技术,增加对第一网络功能网元的多重验证,能够减少移动通信网络中网络功能面临的潜在的安全风险,特别是针对采用软件实现或虚拟化方式实现的网络功能。
结合第二方面,在第二方面的某些实现方式中,在服务请求消息不包括具有完整性保护的证明信息的情况下,第二网络功能网元根据预先配置的执行策略确定是否向第一网络功能网元提供服务。
结合第二方面,在第二方面的某些实现方式中,第二网络功能网元根据预先配置的执行策略确定是否向第一网络功能网元提供服务,包括:第二网络功能网元拒绝向第一网络功能网元提供服务;或者,第二网络功能网元根据第一网络功能网元遵循的标准版本确定是否向第一网络功能网元提供服务。
基于上述方案,第二网络功能网元在确定服务请求消息中不携带具有完整性保护的证明信息的情况下,通过执行策略确定是否向第一网络功能网元提供服务。该实现方式相比于现有技术,既考虑到第一网络功能网元的安全可信度,又考虑到当前第一网络功能网元所遵循的版本。该实现方式更具兼容性,在一定程度上可以保证遵循旧标准版本的第一网络功能网元的正常运行。
结合第二方面,在第二方面的某些实现方式中,证明信息包括认证结果以及与认证结果关联的范围指示信息,认证结果用于表征第一网络功能网元是否可信,范围指示信息用于指示认证结果的有效范围,且范围指示信息包括第一网络功能网元的标识。
结合第二方面,在第二方面的某些实现方式中,第二网络功能网元根据证明信息确定是否向第一网络功能网元提供服务,包括:当认证结果表征第一网络功能网元是可信的,且认证结果的有效范围指示认证结果针对该第一网络功能网元是有效时,第二网络功能网元确定向第一网络功能网元提供服务。
基于上述方案,第二网络功能网元通过综合考虑认证结果表征第一网络功能网元是可信的,以及范围指示信息所指示的认证结果的有效范围,进而确定向第一网络功能网元提供服务。该实现方式能够提高第一网络功能网元的安全性,减少网络层的网络功能面临的潜在的安全风险。
结合第二方面,在第二方面的某些实现方式中,第二网络功能网元确定认证结果的有效范围指示认证结果针对第一网络功能网元是否有效。
结合第二方面,在第二方面的某些实现方式中,第二网络功能网元确定认证结果的有效范围指示认证结果针对第一网络功能网元是否有效,包括:第二网络功能网元判断范围指示信息中携带的第一网络功能网元的标识,是否与服务请求消息中携带的第一网络功能网元的标识相同。
示例性的,当第二网络功能网元判断范围指示信息中携带的第一网络功能网元的标识,与服务请求消息中携带的第一网络功能网元的标识相同时,则确定认证结果的有效范围指示认证结果针对第一网络功能网元是有效的,反之则无效。
基于上述方案,在认证结果表征第一网络功能网元是可信的情况下,进一步地,确定当认证结果中携带的第一网络功能网元的标识以及服务请求消息中携带的第一网络功能网元的标识是一致时,第二网络功能网元才接受服务请求,确保第一网络功能网元的安全性,减少网络层的网络功能面临的潜在的安全风险。
结合第二方面,在第二方面的某些实现方式中,范围指示信息还包括以下一项或者多项:第一网络功能网元的配置数据或部分配置数据;或第二网络功能网元的标识。
基于上述方案,通过携带的范围指示信息增加认证结果的有效范围,即第二网络功能网元在验证第一网络功能网元的标识的情况下,还需要进一步验证第一网络功能网元的配置数据或部分配置数据,和/或第二网络功能网元的标识,增加对第一网络功能网元的验证维度,能够提高第一网络功能网元的真实可信,避免网络层的潜在风险。可选地,第二网络功能网元在确认范围指示信息不携带第二网络功能网元的标识时,可以拒绝第一网络功能网元的服务请求,减少不必要的由于验证证明信息导致的资源浪费。
结合第二方面,在第二方面的某些实现方式中,第二网络功能网元预先配置验证方的公钥或共享密钥;其中,第二网络功能网元对证明信息的完整性保护进行验证,包括:第二网络功能网元根据验证方的公钥或共享密钥对证明信息的完整性保护进行验证。
基于上述方案,通过公钥或者共享密钥对证明信息的完整性保护进行验证,能够确定证明信息的真实性,即在传递过程中是否被攻击或篡改过,用于第二网络功能网元对第一网络功能网元的安全可信度进行判断,能够减少网络层的潜在风险。
结合第二方面,在第二方面的某些实现方式中,范围指示信息还包括认证结果的时效信息;其中,时效信息包括以下一项或者多项:认证结果的生成时间;认证结果生成时间以及有效时长;认证结果的有效的截止时间;或者认证结果的计数器值。
基于上述方案,通过携带远程认证的完成时刻、认证结果的有效期限,或认证结果的计数器值等信息,能够确定第一网络功能网元进行的远程认证的实时有效性,有利于第二网络功能网元确定是否为第一网络功能网元提供服务,从而避免第一网络功能网元在即将超过认证结果的有效期限时被提供服务,随即又被恶意篡改或攻击等而引入潜在的风险。
结合第二方面,在第二方面的某些实现方式中,在第二网络功能网元接收来自第一网络功能网元的服务请求消息之前,第二网络功能网元向第一网络功能网元发送第二网络功能网元的新鲜性参数。其中,证明信息与新鲜性参数关联。
基于上述方案,第二网络功能网元提供的新鲜性参数,用于RA层的远程证明流程需要绑定的网络层参数。第二网络功能网元可以根据服务请求消息中携带的该新鲜性参数确定RA层的远程证明流程是专门响应第二网络功能网元发起的远程证明,更具有针对性和实效性。
结合第二方面,在第二方面的某些实现方式中,范围指示信息还包括新鲜性参数。
基于上述方案,通过携带第二网络功能网元提供的新鲜性参数,能够增加第一网络功能网元的实时可信度,避免由于第一网络功能网元携带的认证结果是较长时间以前完成的,而增加认证结果被恶意篡改的几率,使得第一网络功能网元不安全可信的情况发生。该实现方式能够增加第二网络功能网元对进行远程证明的控制权,减少潜在的风险。另外,第二网络功能网元可以根据携带的NRF的标识和NRF的地址确定是否进行后续的验证工作,可以避免不必要的资源浪费(例如,后续的验证操作)。
结合第二方面,在第二方面的某些实现方式中,第二网络功能网元接收来自验证方的具有完整性保护的通知消息,通知消息用于指示更新第二网络功能网元当前的配置信息,通知消息包括更新后的配置信息;第二网络功能网元根据预先配置的验证方的公钥或共享密钥对通知消息的完整性保护进行验证;当通知消息的完整性保护验证通过时,第二网络功能网元存储更新后的配置信息。
基于上述方案,网络层(例如,第二网络功能网元)可以与RA层(例如,RAS和依赖方)之间建立联系,通过参数的跨层交互实现网络层感知RA层的通知消息。第二网络功能网元对具有完整性保护的通知消息进行验证,并在验证通过后存储更新后的配置信息。该实现方式能够避免由于通知消息被篡改,但是第二网络功能网元基于该通知消息进行配置信息的更新的情况,降低网络层的潜在风险。
结合第二方面,在第二方面的某些实现方式中,更新后的配置信息包括以下一项或者多项:更新后的认证结果;或验证方的更新后的公钥或共享密钥、验证方的更新后的标识或地址信息。
结合第二方面,在第二方面的某些实现方式中,第二网络功能网元向服务器功能网元发送验证请求消息,验证请求消息包括证明信息,验证请求消息用于请求对证明信息的完整性保护进行验证;第二网络功能网元接收来自服务器功能网元的验证结果,验证结果用于指示证明信息的完整性保护是否验证通过。
基于上述方案,将RAS的公钥或共享密钥配置在其他服务器功能网元,例如验证服务器(verification server function,VSF),由VSF对对证明信息的完整性保护进行验证。这样能够简化第二网络功能网元的逻辑,尽量避免对现有标准化系统、流程和第二网络功能网元的改动。
结合第二方面,在第二方面的某些实现方式中,当服务为注册服务时,服务请求消息还包括第一网络功能网元的配置数据,服务请求消息用于请求存储第一网络功能网元的配置数据。
结合第二方面,在第二方面的某些实现方式中,当服务为授权服务时,证明信息还包括认证结果的有效期限,服务请求消息用于请求获取第一令牌,第一令牌用于授权第一网络功能网元访问第三网络功能网元的业务;第二网络功能网元根据证明信息确定是否向第一网络功能网元提供服务,包括:第二网络功能网元生成第一令牌,第一令牌的有效期限小于或等于认证结果的有效期限;第二网络功能网元向第一网络功能网元发送第一令牌和第一令牌的有效期限。
基于上述方案,结合远程证明技术,实现在网络层感知第一网络功能网元在RA层的远程证明的认证结果,确保被授权使用第三网络功能网元服务的第一网络功能网元是安全可信的。同时,考虑到认证结果的实时有效性,该实现方式在认证结果中增加认证结果的有效期限,第二网络功能网元也可以根据认证结果的有效期限进一步确定第一令牌的有效期,控制第一网络功能网元访问第三网络功能网元业务的时间,从而消减网络软件化、虚拟化所带来的潜在安全风险。
结合第二方面,在第二方面的某些实现方式中,当服务为授权服务时,证明信息还包括认证结果的有效期限,服务请求消息用于请求获取第一令牌,第一令牌用于授权第一网络功能网元访问第三网络功能网元的业务;第二网络功能网元根据证明信息确定是否向第一网络功能网元提供服务包括:第二网络功能网元向归属网络功能存储库功能网元发送服务请求消息;第二网络功能网元接收来自归属网络功能存储库功能网元的第一令牌和第一令牌的有效期限,第一令牌的有效期限小于或等于认证结果的有效期限;第二网络功能网元向第一网络功能网元发送第一令牌和第一令牌的有效期限。
基于上述方案,考虑到漫游场景下授权服务请求的流程,即第一网络功能网元和第二网络功能网元归属于不同的运营商网络PLMN的场景,例如第一网络功能网元通过拜访网络功能存储库功能网元向归属网络功能存储库功能网元发送授权服务请求。该实现方式在确保第一网络功能网元是安全可信的情况下,考虑到认证结果的实时有效性,即在认证结果中增加认证结果的有效期限,进一步确定第一令牌的有效期,控制第一网络功能网元访问第三网络功能网元业务的时间,从而消减网络软件化、虚拟化所带来的潜在安全风险。
第三方面,提供了一种第一网络功能网元。该网元包括:处理单元,用于获取具有完整性保护的证明信息,证明信息包括认证结果以及与认证结果关联的范围指示信息,认证结果用于表征第一网络功能网元是否可信,范围指示信息用于指示认证结果的有效范围,且范围指示信息包括第一网络功能网元的标识;在确定需要请求第二网络功能网元提供的服务的情况下,处理单元,还用于生成服务请求消息,服务请求消息包括证明信息以及第一网络功能网元的标识;收发单元,用于向第二网络功能网元发送服务请求消息。
结合第三方面,在第三方面的某些实现方式中,范围指示信息还包括以下一项或者多项:第一网络功能网元的配置数据或部分配置数据;或第二网络功能网元的标识。
结合第三方面,在第三方面的某些实现方式中,收发单元,还用于向验证方发送远程认证请求,远程认证请求包括度量,度量用于表征第一网络功能网元的运行状态;收发单元,还用于接收来自验证方的证明信息,证明信息与度量关联。
结合第三方面,在第三方面的某些实现方式中,收发单元,还用于接收来自第二网络功能网元的新鲜性参数;其中,远程认证请求还包括新鲜性参数,证明信息还与新鲜性参数关联。
结合第三方面,在第三方面的某些实现方式中,范围指示信息还包括新鲜性参数。
结合第三方面,在第三方面的某些实现方式中,当认证结果表征第一网络功能网元是可信时,收发单元,还用于向第二网络功能网元发送服务请求消息。
结合第三方面,在第三方面的某些实现方式中,范围指示信息还包括认证结果的时效信息,该时效信息包括以下一项或者多项:认证结果的生成时间;认证结果生成时间以及有效时长;认证结果的有效的截止时间;或者认证结果的计数器值。
结合第三方面,在第三方面的某些实现方式中,当服务为注册服务时,服务请求消息还包括第一网络功能网元的配置数据,服务请求消息用于请求存储第一网络功能网元的配置数据。
结合第三方面,在第三方面的某些实现方式中,当服务为授权服务时,证明信息还包括认证结果的有效期限,服务请求消息用于请求获取第一令牌,第一令牌用于授权第一网络功能网元访问第三网络功能网元的业务。收发单元,还用于接收来自第二网络功能网元的第一令牌和第一令牌的有效期限,第一令牌的有效期限小于或等于认证结果的有效期限。
结合第三方面,在第三方面的某些实现方式中,范围指示信息还包括以下一项或者多项:远程认证的完成时刻;或认证结果的计数器值。
第四方面,提供了一种第二网络功能网元。该网元包括:收发单元,用于接收来自第一网络功能网元的服务请求消息,服务请求消息用于请求服务,服务请求消息包括第一网络功能网元的标识;在服务请求消息还包括具有完整性保护的证明信息的情况下,处理单元,用于对证明信息的完整性保护进行验证;当证明信息的完整性保护验证通过时,处理单元,还用于根据证明信息确定是否向第一网络功能网元提供服务。
结合第四方面,在第四方面的某些实现方式中,在服务请求消息不包括具有完整性保护的证明信息的情况下,处理单元,还用于根据预先配置的执行策略确定是否向第一网络功能网元提供服务。
结合第四方面,在第四方面的某些实现方式中,处理单元,还用于拒绝向第一网络功能网元提供服务;或者,处理单元,还用于根据第一网络功能网元遵循的标准版本确定是否向第一网络功能网元提供服务。
结合第四方面,在第四方面的某些实现方式中,证明信息包括认证结果以及与认证结果关联的范围指示信息,认证结果用于表征第一网络功能网元是否可信,范围指示信息用于指示认证结果的有效范围,且范围指示信息包括第一网络功能网元的标识。
结合第四方面,在第四方面的某些实现方式中,当认证结果表征第一网络功能网元是可信的,且认证结果的有效范围指示认证结果针对该第一网络功能网元是有效时,处理单元,还用于确定向第一网络功能网元提供服务。
结合第四方面,在第四方面的某些实现方式中,处理单元,还用于确定认证结果的有效范围指示认证结果针对第一网络功能网元是否有效。
结合第四方面,在第四方面的某些实现方式中,处理单元,还用于判断范围指示信息中携带的第一网络功能网元的标识,是否与服务请求消息中携带的第一网络功能网元的标识相同。
结合第四方面,在第四方面的某些实现方式中,范围指示信息还包括以下一项或者多项:第一网络功能网元的配置数据或部分配置数据;或第二网络功能网元的标识。
结合第四方面,在第四方面的某些实现方式中,处理单元,还用于预先配置验证方的公钥或共享密钥,并根据验证方的公钥或共享密钥对证明信息的完整性保护进行验证。
结合第四方面,在第四方面的某些实现方式中,当范围指示信息中携带的第一网络功能网元的标识与服务请求消息中携带的第一网络功能网元的标识相同时,处理单元,还用于确定向第一网络功能网元提供服务。
结合第四方面,在第四方面的某些实现方式中,范围指示信息还包括认证结果的时效信息;其中,该时效信息包括以下一项或者多项:认证结果的生成时间;认证结果生成时间以及有效时长;认证结果的有效的截止时间;或者认证结果的计数器值。
结合第四方面,在第四方面的某些实现方式中,收发单元,还用于向第一网络功能网元发送第二网络功能网元的新鲜性参数。其中,证明信息与新鲜性参数关联。
结合第四方面,在第四方面的某些实现方式中,范围指示信息还包括新鲜性参数。
结合第四方面,在第四方面的某些实现方式中,收发单元,还用于接收来自验证方的具有完整性保护的通知消息,通知消息用于指示更新第二网络功能网元当前的配置信息,通知消息包括更新后的配置信息;处理单元,还用于根据预先配置的验证方的公钥或共享密钥对通知消息的完整性保护进行验证;当通知消息的完整性保护验证通过时,处理单元,还用于存储更新后的配置信息。
结合第四方面,在第四方面的某些实现方式中,更新后的配置信息包括以下一项或者多项:更新后的认证结果;或验证方的更新后的公钥或共享密钥、验证方的更新后的标识或地址信息。
结合第四方面,在第四方面的某些实现方式中,收发单元,还用于向服务器功能网元发送验证请求消息,验证请求消息包括证明信息,验证请求消息用于请求对证明信息的完整性保护进行验证;收发单元,还用于接收来自服务器功能网元的验证结果,验证结果用于指示证明信息的完整性保护是否验证通过。
结合第四方面,在第四方面的某些实现方式中,当服务为注册服务时,服务请求消息还包括第一网络功能网元的配置数据,服务请求消息用于请求存储第一网络功能网元的配置数据。
结合第四方面,在第四方面的某些实现方式中,当服务为授权服务时,证明信息还包括认证结果的有效期限,服务请求消息用于请求获取第一令牌,第一令牌用于授权第一网络功能网元访问第三网络功能网元的业务。处理单元,还用于生成第一令牌,第一令牌的有效期限小于或等于认证结果的有效期限;收发单元,还用于向第一网络功能网元发送第一令牌和第一令牌的有效期限。
结合第四方面,在第四方面的某些实现方式中,当服务为授权服务时,证明信息还包括认证结果的有效期限,服务请求消息用于请求获取第一令牌,第一令牌用于授权第一网络功能网元访问第三网络功能网元的业务。收发单元,还用于向归属网络功能存储库功能网元发送服务请求消息;收发单元,还用于接收来自归属网络功能存储库功能网元的第一令牌和第一令牌的有效期限,第一令牌的有效期限小于或等于认证结果的有效期限;收发单元,还用于向第一网络功能网元发送第一令牌和第一令牌的有效期限。
结合第四方面,在第四方面的某些实现方式中,范围指示信息还包括以下一项或者多项:远程认证的完成时刻;或认证结果的计数器值。
第五方面,提供了一种网络功能网元,包括收发器、处理器和存储器,该处理器用于控制收发器收发信号,该存储器用于存储计算机程序,该处理器用于从存储器中调用并运行该计算机程序,使得该网络功能网元执行上述第一方面或第二方面及其任一种可能实现方式中的方法。
可选地,所述处理器为一个或多个,所述存储器为一个或多个。
可选地,所述存储器可以与所述处理器集成在一起,或者所述存储器与处理器分离设置。
可选地,该网络功能网元还包括,发射机(发射器)和接收机(接收器)。
第六方面,提供了一种通信系统,包括第一网络功能网元和第二网络功能网元。
第七方面,提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序或代码,所述计算机程序或代码在计算机上运行时,使得所述计算机执行上述第一方面或第二方面及其任一种可能实现方式中的方法。
第八方面,提供了一种芯片,包括至少一个处理器,所述至少一个处理器与存储器耦合,该存储器用于存储计算机程序,该处理器用于从存储器中调用并运行该计算机程序,使得安装有该芯片系统的网络功能网元执行上述第一方面或第二方面及其任一种可能实现方式中的方法。
其中,该芯片可以包括用于发送信息或数据的输入电路或者接口,以及用于接收信息或数据的输出电路或者接口。
第九方面,提供了一种计算机程序产品,所述计算机程序产品包括:计算机程序代码,当所述计算机程序代码被网络功能网元运行时,使得所述网络功能网元执行上述第一方面或第二方面及其任一种可能实现方式中的方法。
附图说明
图1是本申请实施例提供的网络架构的结构示意图。
图2是本申请实施例提供的远程证明的流程示意图。
图3是本申请实施例提供的NF注册的流程示意图。
图4是本申请实施例提供的获取授权令牌token的流程示意图。
图5是本申请实施例提供的第一种通信方法的流程示例图。
图6是本申请实施例提供的第二种通信方法的流程示例图。
图7是本申请实施例提供的第三种通信方法的流程示例图。
图8是本申请实施例提供的第四种通信方法的流程示例图。
图9是本申请实施例提供的第五种通信方法的流程示例图。
图10是本申请实施例提供的第六种通信方法的流程示例图。
图11是本申请实施例提供的第七种通信方法的流程示例图。
图12是本申请实施例提供的一种网元设备的结构示意图。
图13是本申请实施例提供的另一种网元设备的结构示意图。
具体实施方式
下面将结合附图,对本申请中的技术方案进行描述。
本申请提供的技术方案可以应用于各种通信系统,例如:新无线(new radio,NR)系统、长期演进(long term evolution,LTE)系统、LTE频分双工(frequency divisionduplex,FDD)系统、LTE时分双工(time division duplex,TDD)系统等。本申请提供的技术方案还可以应用于设备到设备(device to device,D2D)通信,车到万物(vehicle-to-everything,V2X)通信,机器到机器(machine to machine,M2M)通信,机器类型通信(machine type communication,MTC),以及物联网(internet of things,IoT)通信系统或者其他通信系统。
在通信系统中,由运营者运营的部分可称为公共陆地移动网络(public landmobile network,PLMN),也可以称为运营商网络等。PLMN是由政府或其所批准的经营者为公众提供陆地移动通信业务目的而建立和经营的网络,主要是移动网络运营商(mobilenetwork operator,MNO)为用户提供移动宽带接入服务的公共网络。本申请实施例中所描述的PLMN,具体可为符合第三代合作伙伴项目(3rd generation partnership project,3GPP)标准要求的网络,简称3GPP网络。3GPP网络通常包括但不限于第五代移动通信(5th-generation,5G)网络、第四代移动通信(4th-generation,4G)网络,以及未来的其他通信系统,例如(6th-generation,6G)网络等。
为了方便描述,本申请实施例中将以PLMN或5G网络为例进行说明。
图1是本申请实施例的网络架构的结构示意图,以3GPP标准化过程中定义的非漫游场景下,基于服务化架构SBA的5G网络架构为例。如图1所示,该网络架构可以包括三部分,分别是终端设备部分、数据网络(data network,DN)和运营商网络PLMN部分。下面对各部分的网元的功能进行简单说明。
终端设备部分可以包括终端设备110,该终端设备110也可以称为用户设备(userequipment,UE)。本申请中的终端设备110是一种具有无线收发功能的设备,可以经无线接入网(radio access network,RAN)140中的接入网设备(或者也可以称为接入设备)与一个或多个核心网(core network,CN)设备进行通信。终端设备110也可称为接入终端、终端、用户单元、用户站、移动站、移动台、远方站、远程终端、移动设备、用户终端、用户代理或用户装置等。终端设备110可以部署在陆地上,包括室内或室外、手持或车载;也可以部署在水面上(例如轮船等);还可以部署在空中(例如飞机、气球和卫星上等)。终端设备110可以是蜂窝电话(cellular phone)、无绳电话、会话启动协议(session initiation protocol,SIP)电话、智能电话(smart phone)、手机(mobile phone)、无线本地环路(wireless localloop,WLL)站、个人数字处理(personal digital assistant,PDA)等。或者,终端设备110还可以是具有无线通信功能的手持设备、计算设备或连接到无线调制解调器的其它设备、车载设备、可穿戴设备、无人机设备或物联网、车联网中的终端、5G网络以及未来网络中的任意形态的终端、中继用户设备或者未来演进的6G网络中的终端等。其中,中继用户设备例如可以是5G家庭网关(residential gateway,RG)。例如终端设备110可以是虚拟现实(virtual reality,VR)终端、增强现实(augmented reality,AR)终端、工业控制(industrial control)中的无线终端、无人驾驶(self driving)中的无线终端、远程医疗(remote medical)中的无线终端、智能电网(smart grid)中的无线终端、运输安全(transportation safety)中的无线终端、智慧城市(smart city)中的无线终端、智慧家庭(smart home)中的无线终端等。这里的终端设备指的是3GPP终端。本申请实施例对终端设备的类型或种类等并不限定。为便于说明,本申请后续以UE代指终端设备为例进行说明。
运营商网络PLMN部分可以包括但不限于(无线)接入网((radio)access network,(R)AN)120和核心网(core network,CN)部分。
(R)AN 120可以看作是运营商网络的子网络,是运营商网络中业务节点与终端设备110之间的实施系统。终端设备110要接入运营商网络,首先是经过(R)AN 120,进而可通过(R)AN 120与运营商网络的业务节点连接。本申请实施例中的接入网设备(RAN设备),是一种为终端设备110提供无线通信功能的设备,也可以称为网络设备,RAN设备包括但不限于:5G系统中的下一代基站节点(next generation node base station,gNB)、长期演进(long term evolution,LTE)中的演进型节点B(evolved node B,eNB)、无线网络控制器(radio network controller,RNC)、节点B(node B,NB)、基站控制器(base stationcontroller,BSC)、基站收发台(base transceiver station,BTS)、家庭基站(例如,homeevolved nodeB,或home node B,HNB)、基带单元(base band unit,BBU)、传输点(transmitting and receiving point,TRP)、发射点(transmitting point,TP)、小基站设备(pico)、移动交换中心,或者未来网络中的网络设备等。采用不同无线接入技术的系统中,具备接入网设备功能的设备的名称可能会有所不同。为方便描述,本申请所有实施例中,上述为终端设备110提供无线通信功能的装置统称为接入网设备或简称为RAN或AN。应理解,本文对接入网设备的具体类型不作限定。
CN部分可以包括但不限于如下网络功能(Network Function,NF):用户面功能(user plane function,UPF)130、网络开放功能(network exposure function,NEF)131、网络功能存储库功能(network function repository function,NRF)132、策略控制功能(policy control function,PCF)133、统一数据管理功能(unified data management,UDM)134、统一数据存储库功能(unified data repository,UDR)135、网络数据分析功能(network data analytics function,NWDAF)136、认证服务器功能(AuthenticationServer Function,AUSF)137、接入与移动性管理功能(access and mobility managementfunction,AMF)138、会话管理功能(session management function,SMF)139。
数据网络DN 140,也可以称为分组数据网络(packet data network,PDN),通常是位于运营商网络之外的网络,例如第三方网络。当然,在一些实现方式中,DN也可以由运营商进行部署,即DN属于PLMN中的一部分。本申请对DN是否属于PLMN不作限制。运营商网络PLMN可以接入多个数据网络DN 140,数据网络DN 140上可部署多种业务,可为终端设备110提供数据和/或语音等服务。例如,数据网络DN 140可以是某智能工厂的私有网络,智能工厂安装在车间的传感器可以是终端设备110,数据网络DN 140中部署了传感器的控制服务器,控制服务器可为传感器提供服务。传感器可与控制服务器通信,获取控制服务器的指令,根据指令将采集的传感器数据传送给控制服务器等。又例如,数据网络DN 140可以是某公司的内部办公网络,该公司员工的手机或者电脑可为终端设备110,员工的手机或者电脑可以访问公司内部办公网络上的信息、数据资源等。终端设备110可通过运营商网络提供的接口(例如N1等)与运营商网络建立连接,使用运营商网络提供的数据和/或语音等服务。终端设备110还可通过运营商网络访问数据网络DN 140,使用数据网络DN 140上部署的运营商业务,和/或第三方提供的业务。
下面对CN包含的NF功能进行进一步简要说明。
1、UPF 130是由运营商提供的网关,是运营商网络与数据网络DN 140通信的网关。UPF网络功能130包括数据包路由和传输、数据包检测、业务用量上报、服务质量(qualityof service,QoS)处理、合法监听、上行数据包检测、下行数据包存储等用户面相关的功能。
2、NEF 131是由运营商提供的控制面功能,主要使能第三方使用网络提供的服务,支持网络开放其能力、事件及数据分析、从外部应用给PLMN安全配备信息、PLMN内外交互信息的转换等。
3、NRF 132是由运营商提供的控制面功能,可用于维护网络中网络功能、服务的实时信息。例如支持网络服务发现、维护NF实例的NF配置数据(NF profile)支持的服务、支持通信代理(service communication proxy,SCP)的服务发现、维护SCP实例的SCP配置数据(SCP profile)、发送有关新注册、去注册、更新的NF和SCP的通知、维护NF和SCP运行的健康状态等。
4、PCF 133是由运营商提供的控制面功能,它支持统一的策略框架来治理网络行为、向其他控制功能提供策略规则、策略决策相关的签约信息等。
5、UDM 134是由运营商提供的控制面功能,负责存储运营商网络中签约用户的用户永久标识符(subscriber permanent identifier,SUPI)、签约用户的公开使用的签约标识(generic public subscription identifier,GPSI),信任状(credential)等信息。其中SUPI在传输过程中会先进行加密,加密后的SUPI被称为隐藏的用户签约标识符(subscription concealed identifier,SUCI)。UDM网络功能134所存储的这些信息可用于终端设备110接入运营商网络的认证和授权。其中,上述运营商网络的签约用户具体可为使用运营商网络提供的业务的用户,例如使用中国电信的手机芯卡(subscriber identitymodule,SIM)卡的用户,或者使用中国移动的手机芯卡的用户等。上述签约用户的信任状可以是手机芯卡中存储的长期密钥或者跟手机芯卡加密相关的信息等存储的小文件,用于认证和/或授权。需要说明的是,永久标识符、信任状、安全上下文、认证数据(cookie)、以及令牌等同验证/认证、授权相关的信息,在本申请实施例中,为了描述方便起见不做区分、限制。
6、UDR 135是由运营商提供的控制面功能,为UDM提供存储和获取签约数据的功能、为PCF提供存储和获取策略数据、存储和获取用户的NF群组ID(group ID)信息等。
7、NWDAF 136是由运营商提供的控制面功能,其主要功能是从NF、外部应用功能(application function,AF)以及运维管理(operations,administration andmaintenance,OAM)系统等处收集数据,对NF和AF提供NWDAF业务注册、数据开放和分析数据等。
8、AUSF 137是由运营商提供的控制面功能,通常用于一级认证,即终端设备110(签约用户)与运营商网络之间的认证。AUSF网络功能137接收到签约用户发起的认证请求之后,可通过UDM网络功能134中存储的认证信息和/或授权信息对签约用户进行认证和/或授权,或者通过UDM网络功能134生成签约用户的认证和/或授权信息。AUSF网络功能137可向签约用户反馈认证信息和/或授权信息。
9、AMF 138是由运营商网络提供的控制面网络功能,负责终端设备110接入运营商网络的接入控制和移动性管理,例如包括移动状态管理,分配用户临时身份标识,认证和授权用户等功能。
10、SMF 139是由运营商网络提供的控制面网络功能,负责管理终端设备110的协议数据单元(protocol data unit,PDU)会话。PDU会话是一个用于传输PDU的通道,终端设备需要通过PDU会话与数据网络DN 140互相传送PDU。PDU会话由SMF网络功能139负责建立、维护和删除等。SMF网络功能139包括会话管理(例如会话建立、修改和释放,包含用户面功能UPF 130和(R)AN 120之间的隧道维护)、UPF网络功能130的选择和控制、业务和会话连续性(service and session continuity,SSC)模式选择、漫游等会话相关的功能。
可以理解的是,上述网元或者功能既可以是硬件设备中的物理实体,也可以是在专用硬件上运行的软件实例,或者是共享平台(例如,云平台)上实例化的虚拟化功能。简单来说,一个NF可以由硬件来实现,也可以由软件来实现。
图1中Nnef、Nnrf、Npcf、Nudm、Nudr、Nnwdaf、Nausf、Namf、Nsmf、N1、N2、N3、N4,以及N6为接口序列号。示例性的,上述接口序列号的含义可参见3GPP标准协议中定义的含义,本申请对于上述接口序列号的含义不做限制。需要说明的是,图1中的各个网络功能之间的接口名称仅仅是一个示例,在具体实现中,该系统架构的接口名称还可能为其他名称,本申请对此不作限定。此外,上述各个网元之间的所传输的消息(或信令)的名称也仅仅是一个示例,对消息本身的功能不构成任何限定。
为方便说明,本申请实施例中将网络功能(如NEF 131…SMF139)统称/简称为NF,即本申请实施例中后文所描述的NF可替换为任一个网络功能。另外,图1仅示意性地描述了部分网络功能,后文所描述的NF不局限于图1中示出的网络功能。
应理解,上述应用于本申请实施例的网络架构仅是从服务化架构的角度描述的网络架构,适用本申请实施例的网络架构并不局限于此,任何能够实现上述各个网元的功能的网络架构都适用于本申请实施例。
还应理解,图1中所示的AMF、SMF、UPF、NEF、AUSF、NRF、PCF、UDM可以理解为核心网中用于实现不同功能的网元,例如可以按需组合成网络切片。这些核心网网元可以各自独立的设备,也可以集成于同一设备中实现不同的功能,本申请对于上述网元的具体形态不作限定。
还应理解,上述命名仅为便于区分不同的功能而定义,不应对本申请构成任何限定。本申请并不排除在5G网络以及未来其它的网络中采用其他命名的可能。例如,在6G网络中,上述各个网元中的部分或全部可以沿用5G中的术语,也可能采用其他名称等。
为便于理解本申请实施例,首先对本申请中涉及到的术语或技术做简单说明。
1、远程证明(remote attestation,RA)
远程证明是可信计算领域的一种技术。通过远程证明技术,验证方(verifier,或称为RA服务器(RA server,RAS))可以远程地验证证明方(attester,或称为RA客户端(RAclient))所运行的应用程序、虚拟化网络功能(virtual network function,VNF)、虚拟机(virtual machine,VM)、虚拟机监控器(hypervisor)、操作系统、软件平台、或者网络功能虚拟化基础设施(network function virtualization infrastructure,NFVI)等是否安全可信。
需要说明的是,远程证明也可以称为远程认证,本申请对此不作限定。
图2是本申请实施例提供的远程证明200的流程示意图。如图2所示,该方法包括如下多个步骤。
S210,证明方对目标环境进行状态度量(measurement),以生成证据。
示例性的,目标环境包括证明方所运行的进程、VNF、VM、NFVI等。
需要说明的是,证明方内置一个受到安全保护的环境,例如防篡改(tamperproof)的环境,包括:可信平台模块(trusted platform module,TPM)、可信执行环境(trusted execution environment,TEE),或者嵌入式安全元件(embedded secureelement,eSE)等,该环境中存储了受到安全保护的可信根(root of trust,RoT)。
具体地,证明方需要对其设备上运行的目标环境进行状态的完整性度量,包括以下几个步骤:
首先,证明方基于内置的RoT对NFVI层的硬件资源(hardware resources)(例如,NFVI层的固件firmware、基本输入输出系统(basic input output system,BIOS)等)进行完整性度量;其次,基于硬件资源对管理程序(hypervisor)进行完整性度量;然后,基于管理程序对网络功能虚拟化(network function virtualization,NFV)层的VM进行完整性度量;最后,基于存储在虚拟化硬件资源中的虚拟RoT(即virtual RoT或vRoT)或管理程序对VNF进行完整性度量等。
在上述完整性度量中,证明方利用分层度量的原则对不同层级(例如,NFVI层、NFV层)的硬件资源、管理程序、VNF、VM等进行完整性保护。例如,证明方分层地使用单向函数,如哈希(Hash)算法,分别对获取的硬件资源、管理程序、VNF、VM等运行状态进行哈希运算生成哈希值等。
对应的,证明方对其目标环境进行状态度量后会产生一组声明(claim),称为证据(evidence)。也就是说,evidence包括证明方对软硬件平台、程序等的度量值。
进一步,证明方利用证明方存储的、或者获取的密钥对证据进行完整性保护,如数字签名。
可选地,在证明方对目标环境进行状态度量之前,证明方从验证方接收消息,用于指示发起远程证明流程。
S220,证明方向验证方发送证据。
对应的,验证方接收来自证明方的证据。
其中,该证据是对证明方的目标环境进行状态度量生成的,且该证据是基于证明方的密钥进行完整性保护的。
应理解,验证方通常与证明方不在同一设备中(即远程)。
S230,验证方对证据进行验证,以生成认证结果(attestation results)。
示例性的,验证方对证据进行有效性检查,即校验证据是否可信。具体地,验证方根据期望的证明方的状态生成的参考值,或者获取、存储的参考值,将接收到的证据与参考值进行比较,进而判断证明方的状态是否与预期一致,并生成认证结果。如果证据与参考值一致,则说明证明方的状态是可信的,没有遭到攻击。反之,如果证据与参考值不一致,则说明证明方的状态不可信,可以确定证明方的状态出现了异常。
需要说明的是,认证结果也可以称为证明结果,本申请对此不作限定。
S240,验证方向依赖方(relying party)发送认证结果。
对应的,依赖方接收来自验证方的认证结果。
S250,依赖方根据验证方发来的认证结果来执行相应的动作。
应理解,在远程证明流程中,依赖方是认证结果的行动执行者。即根据验证方发送的认证结果来执行相应的动作。
示例性的,如果验证方给出的认证结果为验证失败,则说明证明方出现异常,依赖方可以根据该认证结果对证明方进行处置,例如拒绝证明方继续使用资源、通知证明方的所有者对证明方采取干预、检查等手段。
需要说明的是,上述关于远程证明的描述仅是远程证明的一个例子。在具体实现方式中,可以有其他不同的度量方式、产生evidence的不同方式、生成认证结果的不同方法、证明方、验证方和依赖方之间的不同交互方式、不同交互模型(如不需要有依赖方等)。本申请对远程证明的具体实现方法不作限制。
2、完整性保护(Integrity protection)
完整性保护是指通过物理手段或密码学方法来确保信息在生成、传输、存储过程中,以及之后没有被篡改或没有被未经授权的修改。
其中,通过密码学方法对信息进行完整性保护可以有多种方式。例如,使用非对称密钥中的私钥(private key)对信息进行数字签名,或者使用单向函数(如哈希函数Hash),以对称密钥(共享密钥)及信息作为输入参数,用来生成消息认证码(messageauthentication code,MAC)、或者不使用密钥而单独使用单向函数(如哈希函数Hash),以信息作为输入参数,用来生成哈希值Hash value。
3、新鲜性(freshness)参数
新鲜性参数是指为了防止重放攻击(replay attack)而在输入参数中新添加的参数。输入参数增加了新鲜性参数,可以确保输出参数是新生成的(fresh)。
例如,常用的新鲜性参数包括:只使用一次的随机数(Nonce)、时间戳(timestamp)、计数器值(count或index)等。
在基于服务化架构SBA的核心网中,控制面的NFs之间是基于服务化的接口进行交互。也就是说,任何两个NFs在物理上都是连通的,他们之间可以直接地或间接地通过其他NF如服务通信代理SCP进行交互,即一个NF调用另一个NF提供的服务。该服务化架构使得5G系统能更好地支持NFV和软件定义网络(software defined networking,SDN),从而使得网络部署更加灵活、更有效地利用资源。为了保证网络中NFs交互的安全,5G网络中要求每个NF(例如,NFp或者NFc)在与其他NF交互之前,先在NRF处获得授权。NF可以通过与NRF进行注册流程来获得NRF的授权。NF也可以通过从NRF获取token的流程来获得NRF的授权。
图3是本申请实施例提供的NF注册300的流程示意图。如图3所示,该方法包括如下多个步骤。
S310,NF(例如,NFc或NFp)向NRF发送注册请求(registration request)消息。
对应的,NRF接收来自NF的注册请求消息。
其中,该注册请求消息包括该NF的配置数据(NF Profile),NF Profile包括该NF的实例标识(Instance ID)。
可选地,NF Profile还可以包括其他信息。例如,以NFp向NRF请求注册为例,NFp的配置数据还可以包括针对不同类型的NFc(例如SMF、AMF)或者不同Instance ID的NFc可以使用的NFp具体资源或具体操作。
为了保证NF与NRF之间信息交互的安全性,可以遵循互联网工程任务组(InternetEngineering Task Force,IETF)制定的OAuth 2.0的标准授权框架来进行注册信息交互。其中,OAuth2.0中的客户端(client)对应这里的NF,客户端ID对应NF实例ID,授权服务器(authorization server)对应NRF。
S320,NRF(即授权服务器)如果接受NF的注册请求,就存储NF的配置数据。
需要说明的是,NRF在接受NF之前可以对该请求进行验证。
示例性的,基于OAuth的授权框架,NRF验证注册请求的信息是否真实有效,确定是否接受NF的请求。OAuth的授权框架不限制NRF具体使用的验证方法,例如,NF可以事先获取一个数字证书,该证书是由NRF或其他网元签发,并在证书中描述了NF的合法Profile。NRF使用签发者(NRF或其他网元)的公钥验证该数字证书的真实性,由此来确定证书中内容的真实性。类似地,NF也可以事先获取经过NRF或其他网元签名的NF Profile,NRF通过使用签名者的公钥验证该签名的真实性,来确定NF Profile的真实性。NF和NRF也可以使用其他事先约定的信任状(credentials)或方法(例如口令、共享密钥等),来使得NRF可以验证NFProfile的真实性,本申请不作限定。
进一步,如果是数字证书,NRF还可以检查证书所描述的Profile中的参数,与请求消息中的NF Profile的参数是一致的。
S330,NRF向NF发送注册响应消息。
对应的,NF接收来自NRF的注册响应消息。
其中,该注册响应消息用于通知NF服务注册成功(或失败)。
另外,NF也可以使用token请求的流程来获取NRF的授权。例如,假设一个NFc需要使用另一个NFp的服务,则NFc可以在使用NFp的服务之前向NRF发起token请求流程,以便获得NRF颁发的使用NFp服务的令牌(token)。接下来,NFc可以凭借该Token向NFp发起使用服务的请求,当NFp验证NFc出示的token的真实性合法性之后,就可以允许NFc使用其服务。
需要说明的是,以上提供的NF注册流程仅为示例性说明,本申请并未限定于此,其他能够实现NF注册的方法及过程均落入本申请的保护范围内。
图4是本申请实施例提供的NF授权令牌token 400的流程示意图。如图4所示,该方法包括如下多个步骤。
S410,NFc向NRF发送授权token请求消息。
对应的,NRF接收来自NFc的授权token请求消息。
其中,该请求消息用于请求获取访问NFp的授权token。该请求消息可以包括:NFc的实例标识(例如,NF Instance Id(s)of the NF service consumer)。
可选地,该请求消息还可以包括NFc的NF类型、NFc期望的业务(例如,expected NFservice name(s))、以及NFc期望进行业务访问的NFp的NF类型等。
示例性的,NFc为接入与控制网络功能AMF网元,NFp为会话管理功能SMF网元,或者统一数据管理功能UDM网元等。
可选地,在NFc向NRF发送授权token请求消息之前,NFc和NFp在NRF完成注册。具体NF注册流程可参见上述方法300,这里不再赘述。
需要说明的是,该实现方式适用于NFc和NFp属于同一运营商,也适应于NFc和NFp属于不同的运营商。示例性的,若NFc和NFp属于不同的运营商,则请求消息还可以包括PLMNID1和PLMN ID 2,PLMN ID1为NFc所在网络的标识信息,PLMN ID2为NFp网元对应网络的标识信息。NFc将请求消息发送给与NFc属于同一运营商网络(PLMN ID1)的NRF,该NRF根据PLMN ID2确定NFp所在的运营商网络的另一个NRF(PLMN ID2),并将请求消息发送给PLMNID2的NRF,以获取token。
S420,NRF对NFc的请求进行检验,验证通过则生成授权token。
示例性的,NRF对NFc的请求进行校验,校验方法可以参见上述方法300中步骤S320的描述。另外,如果NRF存储有该NFc的Profile,NRF可以将请求消息中的参数与存储的该NF的NF Profile中的参数进行校验是否一致。同时,NRF也可以校验该NF请求消息中的参数(如NFc的服务类型、请求的NFp的服务类型)是否与存储的或证书中包括的被授权的服务类型一致。如果验证通过,NRF生成token,并用NRF的私钥对该token进行数字签名,或者使用消息验证码的方式对该token进行完整性保护。
其中,该token包括该请求所对应的声明(claims),claims中包括:签发NRF的实例ID,NFc的实例ID,NFp的NF类型,NFc期望的业务名称,token的有效期等。
可选地,claims中还可以包括其他参数,例如允许使用的资源、网络切片信息等。
S430,NRF向NFc发送授权token响应消息。
对应的,NFc接收来自NRF的授权token响应消息。
其中,该响应消息用于指示同意授权该NFc访问NFp,该响应消息包括授权token。
可选地,该响应消息还包括token的有效期,该token通常在有效期内可以被NFc重复使用。
应理解,基于该授权token,NFc随后可以向NFp发送服务请求。对应的,NFp在成功校验token的有效性后,可以为NFc提供服务。
需要说明的是,以上提供的获取授权token的流程仅为示例性说明,本申请并未限定于此,其他能够实现获取授权令牌的方法及过程均落入本申请的保护范围内。
在上述方法300的NF注册流程中,NRF可以基于NF的配置数据对NF进行注册。但是,NRF无法确定该NF的软件代码、虚拟化功能、该NF所使用的操作系统、虚拟机、虚拟机监控器等是否已经被恶意修改或已经被黑客所攻陷。类似地,在上述方法400的授权token请求流程中,NRF也无法确定请求服务的NF(例如NFc)是否遭到攻击、是否安全可信。
虽然在5G系统中可以通过部署RAS对VNF进行远程证明,但是该实现方式是属于NFVI层和NFV层的远程证明,它与3GPP网络层是隔离的、割裂的,这使得网络层的NRF仍然无法抵御上述的潜在安全风险。这是因为NRF在收到NF的注册请求消息时,无法确定该NF是否已经成功完成了远程证明,NRF也无法及时了解到NF在何时执行了远程证明,以及远程证明的结果是否仍然有效或者已经失效。
例如,攻击者可以使用未篡改过的安全可信的NF进行远程证明。由于进行远程证明的NF是没有篡改过的,可以成功完成远程证明。然后,攻击者可以使用篡改过的NF向NRF发送注册请求。由于NRF无法分辨发送注册请求的NF是否被篡改过,因此篡改过的NF也会获得成功注册。
再例如,攻击者可以对已经完成远程证明的NF进行攻击。如果攻击者能成功攻陷该NF,并使用该NF在网络中进行恶意操作,NRF无法发现。因为在NF被攻陷之前做过了远程验证,NRF以为该NF仍旧为可信的未受到攻击的NF。
综上所述,采用软件实现或虚拟化方式实现的网络功能NF,会面对更多的潜在安全风险。因此,亟需采取额外的措施来应对,以便抵御、减少潜在的安全风险。
有鉴于此,本申请提供了一种通信方法和网元设备,通过跨层交互(网络层与NFV层/NFVI层)或者跨面交互(管理面与控制面)的方式来实现对目标NF的远程证明,从而确保在网络层注册的NF、以及被授权使用各项服务的NF是安全可信的,消减网络软件化、虚拟化所带来的潜在安全风险。即本申请所揭示的方法,旨在使网络层感知目标NF在底层(非网络层)或管理面进行的远程证明的认证结果(即软件代码、平台、硬件等是否成功完成了远程证明)、并确保该远程证明是针对目标NF的远程证明、远程证明的认证结果仍然有效。
为了便于理解本申请实施例,作出以下几点说明:
在本申请的各个实施例中,如果没有特殊说明以及逻辑冲突,不同的实施例之间的术语和/或描述具有一致性、且可以相互引用,不同的实施例中的技术特征根据其内在的逻辑关系可以组合形成新的实施例。
在本申请实施例中,“至少一个”是指一个或者多个,“多个”是指两个或两个以上。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B的情况,其中A,B可以是单数或者复数。在本申请的文字描述中,字符“/”一般表示前后关联对象是一种“或”的关系。“以下至少一项(个)”或其类似表达,是指的这些项中的任意组合,包括单项(个)或复数项(个)的任意组合。例如,a、b和c中的至少一项(个),可以表示:a,或,b,或,c,或,a和b,或,a和c,或,b和c,或,a、b和c。其中a、b和c分别可以是单个,也可以是多个。
在本申请实施例中,“第一”、“第二”以及各种数字编号(例如,#1、#2等)指示为了描述方便进行的区分,并不用来限制本申请实施例的范围。例如,区分不同的消息等,而不是用于描述特定的顺序或先后次序。应理解,这样描述的对象在适当情况下可以互换,以便能够描述本申请的实施例以外的方案。
在本申请实施例中,“当……时”、“在……的情况下”以及“如果”等描述均指在某种客观情况下设备会做出相应的处理,并非是限定时间,且也不要求设备在实现时一定要有判断的动作,也不意味着存在其它限定。
在本申请实施例中,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
在本申请实施例中,“用于指示”可以包括用于直接指示和用于间接指示。当描述某一指示信息用于指示A时,可以包括该指示信息直接指示A或间接指示A,而并不代表该指示信息中一定携带有A。
本申请实施例涉及的指示方式应理解为涵盖可以使得待指示方获知待指示信息的各种方法。待指示信息可以作为整体一起发送,也可以分成多个子信息分开发送,而且这些子信息的发送周期和/或发送时机可以相同,也可以不同,本申请对具体的发送方法不作限定。
本申请实施例中的“指示信息”可以是显式指示,即通过信令直接指示,或者根据信令指示的参数,结合其他规则或结合其他参数或通过推导获得。也可以是隐式指示,即根据规则或关系,或根据其他参数,或推导获得。本申请对此不作具体限定。
在本申请实施例中,请求消息、指示信息、响应消息等承载方式可以是但不限于:无线资源控制信令、媒体接入控制(media access control)层信令中的一种或者两种的组合。其中,无线资源控制信令包括无线资源控制(radio resource control,RRC)信令;媒体接入控制层信令包括媒体接入控制控制元素(media access control control element)信令;调度信息可以承载在物理(physical)层信令中,物理层信令包括下行控制信息(downlink control information,DCI)信令等。
在本申请实施例中,“协议”可以是指通信领域的标准协议,例如可以包括5G协议、新空口(new radio,NR)协议以及应用于未来的通信系统中的相关协议,本申请对此不做限定。“预配置”可以包括预先定义。例如,协议定义。其中,“预先定义”可以通过在设备中预先保存相应的代码、表格或其他可用于指示相关信息的方式来实现,本申请对于其具体的实现方式不做限定。
本申请实施例中,“存储”可以是指保存在一个或者多个存储器中。所述一个或者多个存储器可以是单独的设置,也可以是集成在编码器或者译码器、处理器、或通信装置中。所述一个或者多个存储器,也可以是一部分单独设置,一部分集成在译码器、处理器、或通信装置中。存储器的类型可以是任意形式的存储介质,本申请并不对此限定。
在本申请实施例中,“通信”还可以描述为“数据传输”、“信息传输”、“数据处理”等。“传输”包括“发送”和“接收”,本申请对此不作限定。
下面将结合附图详细说明本申请提供的技术方案。
图5是本申请实施例提供的第一种通信方法500的流程示意图。如图5所示,该方法包括如下多个步骤。
S510,可选地,第一网络功能网元获取具有完整性保护的证明信息。
其中,证明信息包括认证结果以及与认证结果关联的范围指示信息,认证结果用于表征第一网络功能网元是否可信,范围指示信息用于指示认证结果的有效范围,且范围指示信息包括第一网络功能网元的标识。
示例性的,当第一网络功能网元所遵循的标准版本不需要包括证明信息时,第一网络功能网元可以不执行步骤S510。
示例性的,第一网络功能网元可以是NF服务消费功能(NF service consumer,NFc)网元,也可以是NF服务提供功能(NF service producer,NFp)网元。
示例性的,第一网络功能网元的标识可以是NF ID(身份Identity或识别符Identifier)或NF的实例(Instance)ID。
示例性的,第一网络功能网元获取具有完整性保护的证明信息,可以是第一网络功能网元通过内部接口从RA层证明方(attester)接收具有完整性保护的证明信息。
应理解,在本申请实施例中,NF(例如NFc、NFp、NRF等)是网络层NF,它们之间的信令交互限制在网络层。远程证明RA流程中的证明方(attester)和验证方RAS是底层或管理面的设备,它们之间的信令交互限制在底层或者管理面。例如,网络层的NF所对应的底层为证明方,二者之间可以通过内部接口实现跨层交互,主要体现在参数的传递。
应理解,该证明信息是由RAS使用其私钥或共享密钥进行了完整性保护的,即该证明信息携带由RAS使用其私钥进行了数字签名,或使用共享密钥生成的MAC。
可选地,该证明信息也可以进一步被RAS利用其私钥或共享密钥进行了加密保护,因此该证明信息对该第一网络功能网元(或证明方)不可见。例如,第一网络功能网元可以向第二网络功能网元发送指示信息,用于指示该证明信息经过了加密。
可选地,该证明信息还包括该认证结果的有效截止时间Tv。
可选地,该证明信息还包括该认证结果的计数器值,即执行RA流程的次数,或者这是第几次成功的认证结果,或者针对第一网络功能网元为服务请求进行的RA流程的次数、以及第几次获得的认证结果。
可选地,范围指示信息还可以包括以下一项或者多项:第一网络功能网元的配置数据(例如,NF Profile)或部分配置数据;或第二网络功能网元的标识(例如,NRF ID)。
其中,NF Profile包括NF ID、NF的实例ID、NF的类型、NF的位置信息、NF的归属网络标识PLMN ID、或NF专用的服务授权信息等。
可选地,范围指示信息还包括认证结果的时效信息;其中,该时效信息包括以下一项或者多项:认证结果的生成时间;认证结果生成时间以及有效时长;认证结果的有效的截止时间;或者认证结果的计数器值。
示例性的,认证结果的有效时长为12h,认证结果的生成时间为2:30,第二网络功能网元接收到认证结果的时间为12:30,则第二网络功能网元接受第一网络功能网元的服务请求;
示例性的,认证结果的有效截止时间为12:30,第二网络功能网元接收到认证结果的时间为12:00,则第二网络功能网元接受第一网络功能网元的服务请求。
示例性的,认证结果的有效截止时间为12:30,第二网络功能网元接收到认证结果的时间为12:00,第二网络功能网元设置一定阈值,例如1h,当认证结果的有效截止时间与接收到认证结果的时间差值小于或等于一定阈值时,此时第二网络功能网元可以拒绝服务请求。
示例性的,第二网络功能网元可以比较证明信息携带的认证结果的计数器值counter与最近一次接收到的counter值,确定该counter值是否在一定范围之内,进而确定是否向第一网络功能网元提供服务。例如,第二网络功能网元记录上一次接收到的认证结果的counter值为10,那么当前的该counter值是11、或者在一定容错条件下允许的该counter值介于11到15之间、或者大于10时,第二网络功能网元可以接受第一网络功能网元服务请求。
可选地,第一网络功能网元向验证方发送远程认证请求,远程认证请求包括度量,度量用于表征第一网络功能网元的运行状态;第一网络功能网元获取具有完整性保护的证明信息,具体为:第一网络功能网元接收来自验证方的证明信息,证明信息与度量关联。
其中,度量是指第一网络功能网元(证明方attester)对软硬件平台、软件、配置数据等目标环境,以及attester的组件的运行状态进行搜集并进行哈希运算生成的度量值。证明方对其目标环境及运行状态进行状态度量后会产生一组声明,称为证据(evidence)。
需要说明的是,证明信息与度量关联可以理解为:证明信息是由该度量确定的。具体地,证明信息是验证方(RAS)通过比较attester提供的度量,以及RAS根据期望的证明方的状态所生成参考值确定的。
可选地,远程认证请求还包括范围指示信息。范围指示信息包括以下一项或者多项:第一网络功能网元的配置数据(例如,NFc Profile)或部分配置数据;或第二网络功能网元的标识(例如,NRF ID);或NRF的地址等。
可选地,范围指示信息还包括认证结果的时效信息;其中,该时效信息包括以下一项或者多项:认证结果的生成时间;认证结果生成时间以及有效时长;认证结果的有效的截止时间;或者认证结果的计数器值。
可选地,远程认证请求还包括新鲜性参数。示例性的,新鲜性参数可以包括时间戳、随机数Nounce、计数器值等。
可选地,该新鲜性参数由第二网络功能网元提供。在一种可能的实现方式中,在执行步骤S510之前,第二网络功能网元向第一网络功能网元发送第二网络功能网元的新鲜性参数。对应的,第一网络功能网元接收来自第二网络功能网元的新鲜性参数。
示例性的,以第二网络功能网元为NRF为例,新鲜性参数可以是随机数(如NRF提供的Nonce)、NRF提供的计数器值(Count)、和/或NRF提供的时间戳等。
可选地,证明信息与新鲜性参数关联。
可选地,范围指示信息还包括新鲜性参数。
需要说明的是,证明信息与新鲜性参数关联可以理解为:证明信息(范围指示信息)可以与第二网络功能网元提供的新鲜性参数绑定,用于提供RA层的远程证明流程需要绑定的网络层参数。第二网络功能网元可以根据服务请求消息中携带该新鲜性参数确定RA层的远程证明流程是专门响应第二网络功能网元发起的远程证明,更具有针对性和实效性。
S520,在确定需要请求第二网络功能网元提供的服务的情况下,第一网络功能网元生成服务请求消息。
其中,服务请求消息包括第一网络功能网元的标识。
可选地,服务请求消息还包括具有完整性保护的证明信息。其中,证明信息包括认证结果以及与认证结果关联的范围指示信息,范围指示信息包括第一网络功能网元的标识。
可选地,服务请求消息还包括第一网络功能网元的配置数据中的一个或多个参数。
一种可能的实现方式,当服务为注册服务时,服务请求消息还包括第一网络功能网元的配置数据,服务请求消息用于请求存储第一网络功能网元的配置数据。
可选地,证明信息还包括认证结果的有效期限。
另一种可能的实现方式,当服务为授权服务时,证明信息还包括认证结果的有效期限,服务请求消息用于请求获取第一令牌,第一令牌用于授权第一网络功能网元访问第三网络功能网元的业务。
可选地,范围指示信息还包括认证结果的时效信息;其中,该时效信息包括以下一项或者多项:认证结果的生成时间;认证结果生成时间以及有效时长;认证结果的有效的截止时间;或者认证结果的计数器值。
需要说明的是,本申请实施例可以适用于漫游场景下,也可以适用于非漫游场景下,本申请对此不作具体限定。即第一网络功能网元和第三网络功能网元可以归属于同一运营商,也可以属于不同的运营商。
S530,第一网络功能网元向第二网络功能网元发送服务请求消息。
对应的,第二网络功能网元接收来自第一网络功能网元的服务请求消息。
其中,该服务请求消息用于请求服务。
示例性的,第二网络功能网元可以是网络存储功能(network repositoryfunction,NRF)网元。
示例性的,第二网络功能网元的标识可以是NRF ID(身份Identity或识别符Identifier)或NRF的实例(Instance)ID。
可选地,当认证结果表征第一网络功能网元是可信时,第一网络功能网元向第二网络功能网元发送服务请求消息。
可选地,在发送服务请求消息之前,第一网络功能网元需要检查是否存储了认证结果,这样可以减少不必要的网络流程。
可选地,在发送服务请求消息之前,第一网络功能网元需要检查是否存储了认证结果以及认证结果是否成功完成RA,这样可以减少不必要的网络流程。
S540,在服务请求消息还包括具有完整性保护的证明信息的情况下,第二网络功能网元对证明信息的完整性保护进行验证。
一种可能的实现方式,第二网络功能网元预先配置验证方的公钥或共享密钥,并根据验证方的公钥或共享密钥对证明信息的完整性保护进行验证。
其中,公钥可以用于第二网络功能网元校验接收到的消息所携带的数字签名是否由RAS生成,以及共享密钥可以用于第二网络功能网元校验接收到的消息所携带的MAC是否由RAS生成,即校验经过RAS完整性保护的消息的真实性。
示例性的,如果数字签名是由RAS的私钥签署,或者MAC是由RAS的共享密钥生成,当第二网络功能网元使用存储的RAS公钥,或者使用共享密钥成功地验证该签名或MAC,说明该认证结果未被篡改过。否则,验证失败。
S550,当证明信息的完整性保护验证通过时,第二网络功能网元根据证明信息确定是否向第一网络功能网元提供服务。
一种可能的实现方式,当认证结果表征第一网络功能网元是可信的,且认证结果的有效范围指示认证结果针对该第一网络功能网元是有效时,第二网络功能网元确定向第一网络功能网元提供服务。
可选地,第二网络功能网元确定认证结果的有效范围指示认证结果针对第一网络功能网元是否有效。
可选地,第二网络功能网元确定认证结果的有效范围指示认证结果针对第一网络功能网元是否有效,包括:第二网络功能网元判断范围指示信息中携带的第一网络功能网元的标识,是否与服务请求消息中携带的第一网络功能网元的标识相同。
示例性的,当第二网络功能网元判断范围指示信息中携带的第一网络功能网元的标识,与服务请求消息中携带的第一网络功能网元的标识相同时,则确定认证结果的有效范围指示认证结果针对第一网络功能网元是有效的,反之则无效。
可选地,当服务为授权服务时,证明信息还包括认证结果的有效期限,服务请求消息用于请求获取第一令牌,第一令牌用于授权第一网络功能网元访问第三网络功能网元的业务。
示例性的,当第一网络功能网元(例如NFc)和第二网络功能网元(例如NRF)归属于同一运营商(例如PLMN)的场景下,第二网络功能网元生成第一令牌,并向第一网络功能网元发送第一令牌和第一令牌的有效期限。其中,第一令牌的有效期限小于或等于认证结果的有效期限。
示例性的,当第一网络功能网元(例如NFc)和第二网络功能网元(例如vNRF)归属于不同的运营商(例如hPLMN和vPLMN)的场景下,第二网络功能网元向第三网络功能网元(例如NFp)归属的运营商网络(例如hPLMN)中的第四网络功能网元(例如hNRF)发送服务请求消息,并接收来自第四网络功能网元(例如hNRF)的第一令牌和第一令牌的有效期限,以及向第一网络功能网元发送第一令牌和第一令牌的有效期限。其中,第一令牌的有效期限小于或等于认证结果的有效期限。
可选地,第二网络功能网元接收来自验证方的具有完整性保护的通知消息,通知消息用于指示更新第二网络功能网元当前的配置信息,通知消息包括更新后的配置信息;第二网络功能网元根据预先配置的验证方的公钥或共享密钥对通知消息的完整性保护进行验证;当通知消息的完整性保护验证通过时,第二网络功能网元存储更新后的配置信息。
可选地,更新后的配置信息包括以下一项或者多项:更新后的认证结果;或验证方的更新后的公钥或共享密钥、验证方的更新后的标识或地址信息。
可选地,第二网络功能网元向服务器功能网元发送验证请求消息,验证请求消息包括证明信息,验证请求消息用于请求对证明信息的完整性保护进行验证;第二网络功能网元接收来自服务器功能网元的验证结果,验证结果用于指示证明信息的完整性保护是否验证通过。
另一种可能的实现方式,第二网络功能网元可以根据执行策略确定接受或拒绝第一网络功能网元的服务请求。
可选地,根据远程认证过程中认证结果的成功或失败,确定是否接受第一网络功能网元的服务请求。
示例性的,当认证结果为成功时,接受服务请求;反之,拒绝服务请求。或者,当前的认证结果为失败,第二网络功能网元可以暂时接受服务请求,等待下一次认证结果仍然失败时,再拒绝第一网络功能网元的服务请求。
可选地,根据认证结果中携带的有效期限确定是否接受第一网络功能网元的服务请求。
示例性的,当认证结果在有效期内,接受服务请求;反之,拒绝服务请求。或者,当前认证结果仍在有效期内,但有效期的剩余时间比较短,拒绝服务请求。例如,事前配置阈值为2小时,即当有效期的剩余时间小于或等于阈值时,拒绝服务请求。当前的认证结果中的有效期的剩余时间仅有1小时,此时可以拒绝服务请求。
可选地,根据认证结果中的counter值确定是否接受第一网络功能网元的服务请求。
示例性的,当counter值在一定范围内,接受服务请求;反之,拒绝服务请求。其中,具体范围可以是大于第二网络功能网元存储的counter值、或counter值在一定范围之内、或counter值与第二网络功能网元存储的counter值相比差值在一定范围内。
可选地,根据与认证结果中携带的网络层NF信息确定是否接受第一网络功能网元的服务请求。
示例性的,要求认证结果必须绑定第一网络功能网元的配置数据Profile中的某些参数,或者必须绑定第一网络功能网元的标识。进一步地,比较服务请求消息与范围指示信息中的第一网络功能网元的配置数据是否一致,或者比较第一网络功能网元的标识是否一致,若一致则接受服务请求,否则拒绝。
可选地,S560,在服务请求消息不包括具有完整性保护的证明信息的情况下,第二网络功能网元根据预先配置的执行策略确定是否向第一网络功能网元提供服务。
一种可能的实现方式,第二网络功能网元拒绝向第一网络功能网元提供服务;或者,第二网络功能网元根据第一网络功能网元遵循的标准版本确定是否向第一网络功能网元提供服务。
示例性的,当第一网络功能网元遵循的标准版本不强制进行远程认证时(例如,遵循3GPP Release 17、16、15的标准版本),则接受第一网络功能网元的服务请求。如果第一网络功能网元遵循的标准版本要求强制进行远程认证时,则拒绝第一网络功能网元的服务请求。
本申请提供的方案,通过在服务请求消息中携带证明信息,增加对第一网络功能网元的可信度的认证。第二网络功能网元在确定服务请求消息中携带具有完整性保护的证明信息的情况下,对证明信息进行验证,并在验证通过后进一步根据证明信息的具体内容确认是否向第一网络功能网元提供服务;以及,第二网络功能网元在确定服务请求消息中不携带具有完整性保护的证明信息的情况下,根据执行策略确定是否向第一网络功能网元提供服务。本申请所揭示的方法,能够减少移动通信网络中网络功能面临的潜在的安全风险,特别是针对采用软件实现或虚拟化方式实现的网络功能。
需要说明的是,在本申请实施例中,NF(例如NFc、NFp、NRF等)是网络层NF,它们之间的信令交互限制在网络层。远程证明流程中的证明方(attester)和验证方RAS是底层或管理面的设备,它们之间的信令交互限制在底层或者管理面。其中,底层是指不属于网络层或应用层(例如,图1所示的NF称为网络层或应用层的NF)的NFV层和/或NFVI层,也简称为RA层。例如,网络层的NF所对应的底层为证明方,二者之间可以通过内部接口实现跨层交互,主要体现在参数的传递。
下面以NF服务注册流程(例如,NFc向NRF请求服务注册)为例,结合远程证明技术,通过跨层交互的方式实现在网络层感知NF在RA层的远程证明的认证结果,确保在网络层注册的NF是安全可信的,从而消减网络软件化、虚拟化所带来的潜在安全风险。
图6是本申请实施例提供的第二种通信方法600的流程示例图。如图6所示,该方法包括如下多个步骤。其中,步骤S601-S603为RA层的证明方(attester)与RAS(RA Server)之间交互的远程证明RA流程,与上述方法200相比,方法600中没有依赖方的参与,RAS将认证结果发送给了证明方,而不是依赖方。步骤S611-S670为NFc与NRF之间交互的服务注册流程。
S601,可选地,RAS向证明方发送消息#1。
对应的,证明方接收来自发起方的消息#1。
其中,该消息#1用于发起RA层的远程证明流程。
可选地,消息#1可以携带与远程证明关联的参数,例如随机数、时间戳等。
可选地,RA层的远程证明流程也可以由证明方发起,此时步骤S601可以不执行。
S602,证明方生成证据,并向RAS发送消息#2。
对应的,RAS接收来自证明方的消息#2。
其中,消息#2包括证据(evidence),证据是由证明方生成的一个或多个声明(claims),可以包括证明方对平台、软件等的度量值、配置数据等。
可选地,该消息#2还包括绑定网络层NF与RA层的关联关系的参数,即网络层NF信息,用于确定完成远程证明的NF的身份。例如,网络层NF信息可以包括NFc ID或者NFc的实例ID(实例化身份Identity或识别符Identifier)。又例如,网络层NF信息还可以包括该NF的配置数据(NFc profile)中的一个或者多个参数,和/或NRF ID。
其中,NF的配置数据包括:NF实例的ID(唯一的识别符/身份ID)、NF的类型(例如AMF、SMF、UPF等)、PLMN ID(NF所属的PLMN识别符,例如PLMN ID)、切片相关识别符Identifier(例如,NF所属的单个网络切片选择辅助信息(single network sliceselection assistance information,S-NSSAI))、NF所属的切片实例的NSI ID)、NF的IP地址或全限定域名(fully qualified domain Name,FQDN)、NF集合识别符Set ID、NF服务集合Service Set ID、NFc专用的服务授权信息,例如NF支持的服务、NF支持的服务的端点(end point)地址、NFc的位置信息等,本申请对此不作具体限定。
应理解,NRF ID是NRF的识别符,用于识别在网络层中给NF注册的是该NRF,即认证结果与该NRF绑定。
需要说明的是,在本申请实施例中,RAS属于RA层,它不需要感知网络层,因此RAS对上述消息#2中携带的网络层NF信息本身的真实性、可信性不作验证,而将消息#2中携带的网络层NF信息作为绑定信息使用,即附着在认证结果(attestation results)中,或者与认证结果绑定。其中,认证结果也可以称为证明结果,本申请对此不作具体限定。
因此,网络层NF信息既可以被当成是证据的一部分,与证据可以在同一条消息(例如,消息#2)中发送。或者,网络层NF信息也可以被当成与证据相互独立的信息,此时网络层NF信息既可以与证据在同一条消息(例如,消息#2)中发送,也可以与证据分别在不同的消息(例如,消息#2和消息#4)中发送,本申请对此不作具体限定。
S603,RAS基于证据对证明方进行验证得到认证结果,并向证明方发送消息#3。
对应的,证明方接收来自RAS的消息#3。
其中,消息#3包括认证结果。
可选地,该认证结果中包括上述步骤S602中携带的网络层NF信息。
进一步地,RAS可以对该网络层NF信息进行完整性保护。例如,使用RAS的私钥对该网络层NF信息进行数字签名,或者存储的共享密钥生成消息认证码MAC,并将数字签名或MAC随网络层NF信息一起发送给证明方。
可选地,RAS还可以用其私钥或存储的共享密钥对上述网络层NF信息(及数字签名或MAC)进行加密保护。
应理解,在具体实现过程中,RA完成的时间还可以进一步细分。例如,RAS生成认证结果的时间为T11,RAS发送认证结果的时间为T12,证明方接收到认证结果的时间为T13,证明方从RA层发送给网络层(NFc)的时间为T14等。为了方便描述,本申请将这些时间统称为RA的完成时间T1。类似地,统称RA的开始时间为T0。即RA层的远程证明流程是在T0时刻开始,在T1时刻结束。
可选地,消息#3还可以包括:完成RA的时间或者发送认证结果的时间(例如,T1或者当时的时间戳(timestamp))、该认证结果的有效期限、认证结果的计数器(认证结果counter)值(count)等。
其中,该认证结果的有效期限可以表示有效的截止日期或时间,也可以表示从开始算起的有效时长(即将延续多长时间)等。为了方便描述,在后续的描述中以有效期限为有效截止时间Tv为例进行说明。另外,每个NFc(标识为NFc ID或NFc的实例ID),或者每个证明方(其ID为证明方ID)各有一个认证结果的计数器。可选地,认证结果的计数器可以是绑定NRF注册,用于记录针对NRF注册进行的RA流程的次数。
示例性的,NRF可以根据认证结果的有效期限、完成RA的时间、以及接收到认证结果的时间戳等信息,确定接受或拒绝NFc的注册请求。例如,认证结果的有效期限为12h,完成RA的时间为2:30,NRF接收到认证结果的时间戳为11:30,则NRF接收NFc的注册请求;或者,当认证结果的有效截止期限小于或等于一定阈值时,例如3h,NRF可以拒绝该NFc的注册请求,等等。
需要说明的是,上述RA流程中,证明方生成证据,RAS基于证据对证明方进行验证,以及RAS生成认证结果的具体实现方式可参见方法200,为了简洁,这里不再过多赘述。
另外,在本申请实施例中,网络层以及网络层NFc不需要感知上述RA层的远程证明流程的开始、T0/T1时刻、以及RA层的远程证明流程的信令交互等。
需要说明的是,本申请对上述RA层的远程证明流程的执行时刻不作具体限定。例如,NFc在实例化时或上线前执行远程证明步骤S601-S603,或者步骤S601-S603可以在下面步骤S620之前完成,即RA流程在NF服务注册流程开始之前完成,此时证明方可以通过内层接口将步骤S603中的认证结果发送给NFc,此时网络层NFc存储认证结果。或者,网络层NF服务注册流程在RA层远程证明流程完成之前开始执行,此时网络层NFc没有存储认证结果。下面对上述两种情况进行详细说明。
方式一:RA层远程证明流程在网络层NF服务注册请求开始之前完成,此时网络层NFc存储认证结果。
S611,NFc存储认证结果。
如上述步骤S603所述,该认证结果是由RAS使用其私钥或共享密钥进行了完整性保护的。
可选地,该认证结果也可以进一步被RAS利用其私钥或共享密钥进行了加密保护。
在一种可能的实现方式中,该认证结果包括绑定网络层NF与RA层的关联关系的信息,即网络层NFc信息。
S612,NRF预先配置RAS的公钥或共享密钥。
其中,该公钥可以用于NRF校验接收到的消息所携带的数字签名(或该共享密钥可以用于NRF校验接收到的消息所携带的MAC)是否由RAS生成,即校验RAS签名的消息的真实性,进而确定消息是否被中途篡改过。RAS的公钥或共享密钥的具体配置方式可参考现有技术,这里不再赘述。
S620,NFc向NRF发送注册请求消息#1。
对应的,NRF接收来自NFc的注册请求消息#1。
其中,该注册请求消息#1包括NFc Profile(例如NFc的标识信息,NFc ID或NFc的实例ID)和认证结果,该认证结果携带由RAS使用其私钥进行了数字签名,或使用共享密钥生成的MAC。
可选地,该认证结果还包括该认证结果的有效截止时间Tv。
可选地,该认证结果还包括该认证结果的计数器值(counter),即执行RA流程的次数,或者这是第几次成功的认证结果,或者针对NFc注册而进行的RA流程的次数、第几次获得的认证结果。
可选地,该认证结果经过RAS进行了加密,从而该认证结果对该NFc或证明方不可见。例如,NFc可以向NRF发送指示信息,用于指示该认证结果经过了加密。
可选地,在执行步骤S620之前,NFc需要检查是否存储了认证结果。只有存储了认证结果的NF才可以执行步骤S620,这样可以减少不必要的网络流程。
可选地,在执行步骤S620之前,NFc需要检查是否存储了认证结果以及认证结果是否成功完成RA。只有认证结果为成功的NFc才可以执行步骤S620,这样可以减少不必要的网络流程。
S630,NRF验证认证结果,若验证成功,则接受NFc服务注册请求,并存储NFc配置数据。
具体地,NRF验证认证结果可以通过以下几个步骤实现。
步骤一,NRF使用步骤S612中存储的RAS公钥或共享密钥,对接收到的认证结果所携带的数字签名或者MAC进行验证。
示例性的,如果数字签名是由RAS的私钥签署,或者MAC是由RAS的共享密钥生成,当NRF使用存储的RAS公钥或共享密钥成功地验证该签名或MAC,说明该认证结果未被篡改过。否则,验证失败,NRF可以拒绝对NFc进行注册。
应理解,只有数字签名或MAC验证后,NRF才继续进行服务注册的验证。
步骤二,当数字签名或MAC验证通过后,NRF可以进一步验证认证结果的内容信息。
示例性的,NRF可以比较认证结果中的NF Profile或NF Profile中的部分信息与步骤S620中注册请求消息#1携带的NFc Profile中的信息是否一致。或者,认证结果中NFcID或NFc的实例ID与NRF接收到的NFc Profile中的NFc ID或NFc的实例ID是否一致。或者,认证结果中NRF ID与NRF自己的ID是否一致。或者,认证结果中有效截止时间Tv与当前的时间对比是否仍然有效,等等。
可选地,NRF存储认证结果中携带的counter值,NRF可以比较该counter值与最近一次接收到的counter值,确定该counter值(count)在一定范围之内。例如,NRF记录上一次收到的认证结果的counter值(count)为10,那么当前的该counter值是11、或者在一定容错条件下允许的该count介于11到15之间、或者大于10时,NRF可以接受NFc的注册服务请求。
需要说明的是,当上述步骤一和步骤二验证通过后,NRF可以接受NFc的服务注册请求,并存储NFc Profile。如果上述步骤一或步骤二验证失败,NRF可以拒绝对NFc进行注册。
可选地,如果该认证结果经过了RAS的加密处理,则NRF在执行上述验证操作(步骤一和步骤二)之前,先用存储的RAS公钥或共享密钥对加密信息进行解密。
可选地,如果注册请求消息#1中携带了加密指示信息,则NRF可以对携带了加密指示信息的消息进行上述解密操作。例如,RAS使用其私钥对认证结果进行了加密,则NRF可以利用存储的RAS的公钥对认证结果进行解密。
基于上述步骤一和步骤二的验证结果,NRF还可以进一步考虑与RA相关的执行策略。例如,在何种条件下,即基于什么样的认证结果,NRF可以接受NFc注册请求或拒绝NFc注册请求。
步骤三,NRF根据执行策略确定接受或拒绝NFc的服务注册请求。
策略一,NRF根据步骤S603的认证结果的验证成功或失败,确定是否接受NFc注册请求。
示例性的,当认证结果为成功时,NRF接受NFc的注册请求;当认证结果为失败时,NRF拒绝NFc的注册请求。或者,当前认证结果为失败时,NRF可以暂时接受NFc的注册请求,等待下一次认证结果仍然失败时,拒绝NFc的注册请求。
策略二,NRF根据认证结果中携带的有效期限确定是否接受NFc注册请求。
示例性的,当认证结果在有效期内,NRF接受NFc的注册请求;当认证结果不在有效期内,NRF拒绝NFc的注册请求。或者,当前认证结果仍在有效期内,但有效期的剩余时间比较短,NRF拒绝NFc的注册请求。例如,事前配置阈值为3小时,即当有效期的剩余时间小于或等于阈值时,NRF拒绝NFc的注册请求。当前NFc发送的认证结果中的有效期的剩余时间仅有1小时,此时NRF可以拒绝NFc的注册请求。
可选地,该执行策略也可以配置为判断认证结果的有效期,例如NRF配置的有效期是从根据认证结果的时刻T1算起的有效期,NRF根据该配置的有效期来确定是否接受NFc注册请求,该有效期可以与认证结果中RAS确定的有效期不同。
示例性的,NRF的执行策略为配置认证结果的有效期为从T1时刻算起的24小时有效。虽然NFc发送的认证结果中的有效期已经过期(例如认证结果中RAS确定的有效期为T1+1小时,而当前时刻为T1+5小时),但NRF可以根据认证结果中的T1(即RA的完成时间)判断是否有效,即当前时刻T1+5在T1+24小时之内,则NRF可以接受NFc注册请求。
策略三,NRF根据认证结果中的counter值(count)确定是否接受NFc注册请求。
示例性的,当counter值在一定范围内,NRF可以接受NFc的注册请求;反之,NRF拒绝NFc的注册请求。该执行策略需要确定具体范围,例如大于NRF存储的counter值、或counter值在一定范围之内、或counter值与NRF存储的counter值相比差值在一定范围内。
需要说明的是,NRF存储的counter值可以是最近一次接上一次收到的认证结果的counter值,也可以是从其他渠道配置的(例如初始时,通过管理面配置),本申请对此不作具体限定。
策略四,NRF根据与认证结果中携带的网络层NF信息确定是否接受NFc注册请求。
示例性的,执行策略中可以要求认证结果必须绑定NFc Profile中的哪些参数,或者必须绑定NFc ID或者NFc的实例ID。进一步地,参见上述步骤二中描述的比较NF profile中的参数或部分参数是否一致,或者比较NF ID或NF的实例ID是否一致,当NF profile,或者NF ID或NF的实例ID比对结果一致时,NRF允许NF服务注册,否则拒绝注册。
需要说明的是,基于上述提供的执行策略,所有NF可以执行相同的策略,也可以是不同NF执行不同的策略。
一种可能的实现方式,执行策略可以是以NF类型为粒度,即不同NF类型可以有不同的执行策略。例如,NF类型为AMF时,执行策略一。NF类型为SMF时,执行策略二。
另一种可能的实现方式,执行策略可以是以NF服务类型为粒度,即不同NF服务类型可以有不同的执行策略。例如,NFc执行策略二,NFp执行策略三。
又一种可能的实现方式,执行策略可以是以NFc ID或NFc的实例ID为粒度,也可以是不同NF profile(部分参数不同)为粒度等,本申请对此不作具体限定。
应理解,上述提供的执行策略的实现方式仅是示例性说明,不应构成对本申请技术方案的任何限定。
可选地,当NRF需要处理时间参数,例如有效期时,NRF需要具有时钟,该时钟需要与RAS的时钟同步。不过,该时钟同步的要求与RA层远程证明流程的时钟同步的要求不同。具体地,RA流程通常会要求较为准确的时钟同步,以区分RA流程内部(即步骤S601-S603)细粒度时间的差别。而在本申请实施例中,NRF的时钟与RAS的时钟同步,主要是用于检查认证结果的有效期,即RA流程结束后认证结果的有效时长。这个时长相比RA内部流程通常比较大,因此对时钟、时钟同步准确性的要求较低。
进一步地,RA流程本身会产生有效期,该有效期是专门针对RA层的有效期。而用于网络层的有效期可以与RA层的有效期不同。即,可选地,在步骤S603中,RAS发送的消息#3中可以包括2个有效期,一个用于指示RA层的有效期,一个用于指示网络层的有效期。其中,用于指示网络层的有效期可以存储在NFc并发送给NRF。可选地,根据上述步骤S603的描述中,NRF也可以配置有效期,该配置的有效期可以与消息#3中的2个有效期不同。
S640,NRF向NFc发送注册响应消息#1。
对应的,NFc接收来自NRF的注册响应消息#1。
其中,该注册响应消息#1用于通知NFc注册成功(或失败)。
示例性的,基于上述步骤S630的认证结果的验证,NRF可以确定是否接受NFc的注册请求,进而通过注册响应消息#1通知NFc。
在另一种可能的实现方式中,上述步骤S611中存储的认证结果不包括绑定的网络层NF信息。
具体地,NRF在步骤S630中对认证结果进行验证时,首先可以执行步骤一,即NRF使用存储的RAS公钥或共享密钥,对接收到的认证结果所携带的数字签名或者MAC进行验证,确定该认证结果是由RAS进行了完整性保护且没有被篡改。但是在步骤二中,由于认证结果中没有网络层NFc信息,NRF无法进一步比对确定该NFc执行过远程证明,因此NRF可以拒绝NFc的注册请求。
可选地,NRF在验证认证结果失败后,也可以根据步骤三中的执行策略进一步判断是否接受NFc的注册请求。例如,NRF在步骤二中确定认证结果失败,仍然可以接受该NFc的注册请求,当下一次认证结果仍然失败时,拒绝NFc的注册请求等。
方式二:网络层NF服务注册流程在RA层远程证明流程完成之前开始执行,或者网络层NF在RA层不执行远程证明流程,此时网络层NFc没有存储认证结果。例如,在网络层步骤S611-S620之前,RA层尚未完成远程证明,网络层NF服务注册流程仍然可以正常执行。
S650,NFc向NRF发送注册请求消息#2。
对应的,NRF接收来自NFc的注册请求消息#2。
其中,该注册请求消息#2包括NFc配置数据(例如,NFc的标识),且不包括RA层的认证结果。
S660,NRF根据执行策略确定是否接受NFc服务注册请求。
一种可能的实现方式,NRF根据注册请求消息#2中没有认证结果,拒绝NFc的注册请求。
另一种可能的实现方式,根据NFc遵循的标准版本确定是否接受NFc服务注册请求。
示例性的,当注册请求消息#2中没有认证结果时,NRF进一步检查NFc遵循的标准版本。如果NFc遵循的标准版本不要求强制进行RA时(例如,遵循3GPP Release 17、16、15的标准版本),则允许NFc继续注册。如果NFc遵循的标准版本要求强制进行RA时,则拒绝NFc注册。
S670,NRF向NFc发送注册响应消息#2。
对应的,NFc接收来自NRF的注册响应消息#2。
其中,该注册响应消息#2用于通知NFc注册成功(或失败)。
需要说明的是,本申请同样适应于NFp向NRF请求服务注册流程,仅需要将NFc替换为NFp,并在注册流程中作出相应适配即可,例如NFp发送注册请求消息,并将NFc Profile换成NFp Profile等。另外,本申请同样适用于服务通信代理SCP,可以将NF替换为SCP,NFprofile替换成SCP profile等。
需要说明的是,本申请技术方案以NF服务注册流程为例进行描述,但本申请技术方案包括不限于NF服务注册流程,同样也适用于其他流程,例如,NF服务更新流程(NFservice update)、NF服务去注册流程(NF service deregistration)、NF服务发现流程(NFservice discovery)、NF服务状态订购/状态通知流程(NF service status subscribe/notify)、NF服务使用方和提供方绑定流程(binding between NF service consumer andNF service producer)、NF配置流程(NF provisioning)等其他流程,这里不再一一枚举。根据不同流程,交互的NF可以相应地适配。例如在NF配置流程中,NRF可以替换为配置服务器(provisioning server)、资源服务器Resource Server等。
本申请所揭示的方法,以NF触发服务注册流程为例,通过网络层和RA层之间的参数跨层交互,或者管理面和控制面之间的参数跨面交互,实现网络层感知NFc在RA层或管理面进行的远程证明的认证结果,并确保该远程证明是针对该NFc的远程证明,从而确保在网络层注册的NFc是安全可信的,有效减少虚拟化、软件化带来的安全风险。另外,网络层实际没有参与RA层的远程证明,最大限度地实现网络层的服务注册流程和RA层的远程证明流程解耦、控制面与管理面解耦。网络层获取、发送或接收的是RA层的远程证明的认证结果,但用于远程证明的敏感信息(例如,证据evidence),没有传递或泄露到网络层,也就是说这些敏感信息没有在网络层泄露,即没有新增隐私泄露的安全风险。
考虑到上述方法600中,NFc获取的认证结果是NFc在向NRF发送NF服务注册请求之前进行的,该远程证明的认证结果有可能是较长时间以前完成的,即从NFc收到远程证明到NFc向NRF发送服务注册请求(包括认证结果)之间的时间比较长,这样可能会增加远程证明结果被恶意篡改的几率,使得NFc不再安全可信,此时如果NFc继续向NRF请求服务注册,且携带篡改之前的认证结果,将存在安全风险。因此,提出以下方法700,增加NRF对进行远程证明的执行时间的控制权,以减少潜在的风险。
图7是本申请实施例提供的第三种通信方法700的流程示例图。与上述方法600不同之处在于,该实现方式中的NRF可以为RA层的远程证明流程提供参数。如图7所示,该方法包括如下多个步骤。
S710,NRF预先配置RAS的公钥或共享密钥。
其中,具体实现方式可参考上述步骤S612,这里不再赘述。
S711,可选地,NFc向NRF发送注册请求消息#a1。
对应的,NRF接收来自NFc的注册请求消息#a1。
其中,该注册请求消息#a1包括NFc配置数据。
可选地,如果NFc此时还没有存储远程证明的认证结果,则该注册请求消息#a1不包括该认证结果,关于此时步骤S711及注册请求消息#a1的描述可参考上述方法600中步骤S650及消息#2的描述。
可选地,如果NFc此时已经存储了远程证明的认证结果,则该注册请求消息#a1中包括该认证结果。由于此时还没有执行本申请实现方式中步骤S712-S714,因此该远程证明的认证结果可以是基于上述方法600产生的(即NRF尚未为该远程证明提供参数),关于此时步骤S711及注册请求消息#a1的描述,可参考步骤S620及注册请求消息#1的描述。
S712,NRF获取并存储为NFc的RA层的远程证明流程提供的参数#a。
示例性的,参数#a可以包括用于绑定RA流程的参数,例如NRF ID(NRF identity或identifier)或者NRF instance ID、NRF的地址、NRF提供的新鲜性参数(例如NRF提供的绑定RA流程的一次性随机数(本申请标注为Nonce-NRF)、NRF提供的绑定RA流程的计数值(本申请标注为Counter-NRF)、和/或NRF提供的用于绑定RA流程的时间戳(本申请标注为NRF时间戳))等。其中,NRF ID和NRF的地址用于区分该NRF与其他NRF,新鲜性参数用于确保RA层的远程证明流程是专门响应针对步骤S713中NRF发送的消息#a而进行的。
可选地,参数#a还可以包括关联NFc的参数,或者部分或全部的NFc Profile配置数据。例如NFc ID,NFc的实例ID,或者NFc profile中的一个或者多个参数等。
可选地,参数#a存储在NRF中;或者,参数#a是由NRF生成的。
可选地,NRF在未收到来自NFc的注册请求消息#a1时(如NFc不执行步骤S711),执行步骤S712,即此时NRF准备主动发起为NFc的RA层远程证明流程提供参数。
可选地,NRF在接收到来自NFc的注册请求消息#a1(如NFc执行了步骤S711)之后执行步骤S712,可以理解为NRF是响应NFc的请求而发起为RA层的远程证明流程提供参数。
在一种可能的实现方式中,该注册请求消息#a1不包括远程证明的认证结果。
在另一种可能的实现方式中,该注册请求消息#a1包括远程证明的认证结果,但NRF尚未为该NFc提供远程证明流程所需参数#a,或者该远程证明的认证结果中没有包括NRF提供的远程证明流程所需参数#a。
可选地,在步骤S711中NRF接收到来自NFc的注册请求消息#a1之后,NRF也可以不立即执行上述步骤S712,而是按照方法600进行处理。例如,如果注册请求消息#a1中不包括远程证明的认证结果,NRF可以根据方法600中步骤S650执行(此时,消息#a1与消息#2等价);如果注册请求消息#a1中包括远程证明的认证结果,但不包括NRF提供的参数,NRF也可以根据方法600中步骤S630执行。本申请对此不作具体限定。
S713,NRF向NFc发送消息#a。
对应的,NFc接收来自NRF的消息#a。
其中,消息#a包括网络层NRF提供的部分或全部参数#a,即用于提供RA层的远程证明流程需要绑定的网络层参数。
进一步地,NFc在接收到参数#a后,通过内部接口发送并存储至RA层(证明方),用于后续RA层的RA流程(步骤S701-S703)。
S701,可选地,RAS向证明方发送消息#b。
对应的,证明方接收来自发起方的消息#b。
需要说明的是,该实现方式是RAS指示证明方发起RA层的远程证明流程。可选地,RA层的远程证明流程也可以由证明方发起,此时步骤S701可以不执行。
S702,证明方生成证据,并向RAS发送消息#c。
对应的,RAS接收来自证明方的消息#c。
其中,消息#c包括证据和网络层NRF提供的部分或全部参数#a。
一种可能的实现方式,如果参数#a中包括NRF时间戳,消息#c中也包括该NRF时间戳。
另一种可能的实现方式,如果参数#a中包括NRF时间戳,消息#c中包括的时间戳为证明方产生证据的当前时间戳。
又一种可能的实现方式,如果参数#a中包括NRF时间戳,消息#c中同时包括上述2个时间戳,即NRF时间戳,以及证明方产生证据的当前时间戳。为了描述上的方便,这些不同实现方式中的时间戳都统称为参数#a的一部分。
可选地,参数#a可以作为证据的一部分,此时证据和参数#a可以在同一消息(例如,消息#c)中发送。或者,参数#a可以不作为证据的一部分,二者相互独立,此时证据和参数#a既可以在同一消息(例如,消息#c)中发送也可以在不同的消息(例如,消息#c和消息#e)中发送,本申请对此不作具体限定。
S703,RAS基于证据对证明方进行验证得到认证结果,并向证明方发送消息#d。
对应的,证明方接收来自RAS的消息#d。
其中,消息#d包括认证结果,以及网络层NRF提供的部分或全部参数#a。
进一步地,RAS可以针对该认证结果,以及部分或全部参数#a进行完整性保护。例如,使用RAS的私钥对该信息#d进行数字签名,或者使用存储的共享密钥生成消息认证码MAC。
一种可能的实现方式,如果参数#a中包括NRF时间戳,消息#d中也包括该NRF时间戳。
另一种可能的实现方式,如果参数#a中包括NRF时间戳,消息#d中包括的时间戳为证明方产生的当前时间的时间戳。
又一种可能的实现方式,如果参数#a中包括NRF时间戳,消息#d中包括的时间戳为RAS产生的当前时间的时间戳。
又一种可能的实现方式,如果参数#a中包括NRF时间戳,消息#d中同时包括上述时间戳中的2个或多个。为了描述上的方便,这些不同实现方式中的时间戳都统称为参数#a的一部分。
需要说明的是,上述步骤S701-S703的具体实现方式可以参考上述方法600中步骤S601-S603,为了简洁,此处不再过多赘述。其中,消息#b、消息#c和消息#d中除了包含上述指出的网络层NRF提供的部分或全部参数#a,还可以包括其他参数,例如绑定RA层和网络层NF关联关系的参数、NFc ID、NFc的实例ID、NF profile、NRF ID等,具体参数内容及其含义与上述步骤S601-S603中携带的消息#1、消息#2和消息#3类似,为了简洁,此处不再过多赘述。
需要说明的是,本申请实施例中网络层流程与RA层的远程证明流程除了在NF内部接口交互参数之外是相对独立的两个流程。网络层(如网络层NFc、NRF)不需要感知RA层的远程证明的具体执行时间。即本申请对上述RA层的远程证明流程的执行时刻(相对于网络层流程的执行时间)不作具体限定。例如,RA层的远程证明流程(步骤S701的执行时间)有可能发生在收到参数#a(即步骤S713)之前,也有可能发生在步骤S713之后。下面通过以下两种情况进行具体说明。
方式一:RA层远程证明流程是在NFc收到参数#a(即步骤S713)之后执行的。这种情况下,步骤S702和步骤S703的消息中包括NRF提供的部分或全部参数#a。
S714,NFc存储认证结果。
其中,该认证结果包括网络层NRF提供的部分或全部参数#a,该认证结果是由RAS使用其私钥或者共享密钥进行了完整性保护的。
在一种可能的实现方式中,该认证结果还包括绑定网络层NF(例如NFc)与RA层的关联关系的信息,即绑定的网络层的NF信息。
S720,NFc向NRF发送注册请求消息#b。
对应的,NRF接收来自NFc的注册请求消息#b。
其中,该注册请求消息#b包括NFc配置数据和认证结果,该认证结果携带参数#a,以及由RAS使用其私钥进行的数字签名或使用其共享密钥生成的MAC。
S730,NRF验证认证结果,若验证成功,则接受NFc服务注册请求,并存储NFc配置数据。
其中,NRF验证认证结果可以通过以下几个步骤实现。
步骤一,NRF使用存储的RAS公钥,对接收到的认证结果所携带的数字签名进行验证;或者NRF使用存储的RAS的共享对称密钥,对接收到的认证结果所携带的MAC进行验证。
步骤二,当数字签名或MAC验证通过后,NRF可以进一步验证认证结果的内容信息。
特别地,相比于方法600,该实现方式的认证结果中携带步骤S713中NRF提供的参数#a,例如Nonce-NRF、Counter-NRF、和/或NRF时间戳等。因此,NRF还需要进一步对参数#a进行校验。
示例性的,如果步骤S712中参数#a中包括NRF ID或NRF的地址信息,NRF校验认证结果中携带的NRF ID、NRF的地址与自身是否一致。
示例性的,如果步骤S712中参数#a中包括的新鲜性参数为Nonce-NRF,或者计数器值Count-NRF,NRF验证新鲜性参数随机数Nonce-NRF、计数器值Counter-NRF与步骤S713所发送的新鲜性参数随机数、计数器值是否一致。
示例性的,如果步骤S712中参数#a中包括的新鲜性参数为NRF时间戳,根据前面的不同实现方式的描述,此时NRF接收到的时间戳可以是下面的一个或多个:NRF时间戳,证明方产生的时间戳,RAS产生的时间戳。例如,如果NRF接收到的时间戳有NRF时间戳,则NRF检查接收到的NRF时间戳与步骤S712存储的时间戳是否一致;再例如,如果NRF接收到的时间戳有证明方或RAS产生的时间戳,则NRF检查接收到的证明方或RAS产生的时间戳与NRF当前的时间戳是否一致,或者NRF检查差值是否在一个允许的范围内。
示例性的,NRF检验认证结果携带的NRF ID和/或NRF的地址与自身ID和/或地址是否一致,如果一致,则继续验证认证结果。反之,直接拒绝NFc的服务注册请求。该实现方式能够提高安全性,防止NFc冒用基于其他NRF(不同NRF ID)提供的参数所获得的认证结果,另外,检验NRF ID和/或NRF的地址,也可以防止不必要的进一步处理过程造成对资源的消耗及潜在的拒绝服务(Denial of Service,DoS)问题。
示例性的,NRF检验认证结果是否携带新鲜性参数,若携带新鲜性参数,且该新鲜性参数与步骤S712中NRF存储的新鲜性参数(包括了接收到的时间戳等于NRF提供的NRF时间戳)一致,则接受NFc的服务注册请求。反之,直接拒绝NFc的服务注册请求。
可选地,当接收到的时间戳包括证明方或RAS产生的时间戳时,NRF还可以根据配置的新鲜性参数的有效期限范围,例如1h,进行验证。
示例性的,NRF需要判断接收到的证明方或RAS产生的时间戳与NRF当前的时间的差值是否在一定范围内,即认证结果中携带的时间戳与NRF当前时间比较,如果超过一定时间范围,NRF也可以拒绝该NFc的服务注册请求。该实现方式能够保证认证结果的时效性,进一步消减潜在的安全风险,提高NFc的安全可信性。
示例性的,NRF检验NRF提供的NRF时间戳与NRF接收到认证结果的时间戳(证明方或RAS产生)的差值是否在一定时间范围内,若在允许的范围内,则接受NFc的服务注册请求。反之,直接拒绝NFc的服务注册请求。该实现方式能够保证认证结果的时效性,进一步消减安全风险。
需要说明的是,当上述步骤一和步骤二验证通过后,NRF可以接受NFc的服务注册请求,并存储NFc Profile。如果上述步骤一或步骤二验证失败,NRF可以拒绝对NFc进行注册。
进一步地,NRF可以存储与RA相关的执行策略。例如,在何种条件下,即基于什么样的认证结果,NRF可以接受NFc注册请求或拒绝NFc注册请求。另外,NRF还可以存储与步骤S713所发送的消息#a相关联的RA执行策略。例如,如果新鲜性参数为NRF时间戳,则多长时间收到认证结果认为是允许的范围等。
步骤三,NRF根据执行策略确定接收或拒绝NFc服务注册请求。
需要说明的是,上述NRF验证认证结果的实现步骤一、二、三与方法600中步骤S630类似,为了简洁,此处不再过多赘述。
S740,NRF向NFc发送注册响应消息#b。
对应的,NFc接收来自NRF的注册响应消息#b。
其中,该注册响应消息#b用于通知NFc注册成功(或失败)。
需要说明的是,上述步骤S720-S740的具体实现方式可参考上述方法600中步骤S620-S640,为了简洁,此处不再过多赘述。
在另一种可能的实现方式中,上述步骤S714中存储的认证结果不包括绑定的网络层NF(例如NFc)信息。
可选地,该绑定的网络层NF信息可以携带在参数#a中;或者,该绑定的网络层NFc信息也可以参考上述方法600的步骤S602,即携带在消息#2中。
具体地,NRF在步骤S730中对认证结果进行验证时,可以根据存储的RAS公钥或共享对称密钥确定该认证结果是由RAS进行了完整性保护且没有被篡改。但是由于认证结果中没有网络层NFc信息,NRF无法进一步比对确定该NFc执行过远程证明,因此NRF可以拒绝NFc的注册请求。
可选地,NRF在验证认证结果失败后,也可以根据步骤三中的执行策略进一步判断是否接受NFc的注册请求。
方式二:在NFc(证明方)收到参数#a(即步骤S713)之前,RA层远程证明已经开始执行,在这种情况下,上述步骤S702和步骤S703的消息中没有包括NRF提供的参数#a。因此导致上述步骤S714中存储的认证结果以及S750发送的消息#c中没有包括NRF发送的参数#a。
S750,NFc向NRF发送注册请求消息#c。
对应的,NRF接收来自NFc的注册请求消息#c。
其中,该注册请求消息#c包括NFc配置数据和RA层的认证结果,但不包括NRF提供的参数#a。
S760,NRF根据执行策略确定是否接受NFc服务注册请求。
一种可能的实现方式,NRF拒绝NFc的注册请求。
另一种可能的实现方式,根据NRF执行策略确定是否拒绝NFc服务注册请求。
示例性的,NRF可以选择等待NFc下一次发送包括参数#a的消息#c,或者NRF给NFc发送待定指示(例如,pending),等待NFc下一次发送包括参数#a的消息#c后,再确定是否接受或拒绝NFc的注册请求。
S770,NRF向NFc发送注册响应消息#c。
对应的,NFc接收来自NRF的注册响应消息#c。
其中,该注册响应消息#c用于通知NFc注册成功(或失败、或待定)。
需要说明的是,步骤S750-S770的具体实现方式可参考上述方法600的步骤S650-S670,为了简洁,此处不再过多赘述。
本申请所揭示的方法,以NF触发的服务注册流程为例,通过网络层和RA层之间的参数跨层交互,或者管理面和控制面之间的参数跨面交互,实现网络层感知NFc在RA层或管理面进行的远程,并确保该远程证明是针对该NFc的远程证明。另外,通过在认证结果中携带NRF提供的参数#a,以保证NRF可以控制NFc的认证结果的时效性,进一步确保在网络层NRF注册的NFc是安全可信的,有效减少虚拟化、软件化带来的安全风险。由于网络层没有实际参与RA层的远程证明流程,最大限度地实现网络层的服务注册流程和RA层的远程证明流程解耦、控制面与管理面解耦。网络层通过配置RAS公钥或共享对称密钥对认证结果进行完整性保护,确保认证结果没有在传输过程中被篡改。由于远程证明流程中的证据交互没有传递到网络层,可以确保没有暴露RA层用于远程证明的敏感信息(例如,证据),即没有新增隐私泄露的安全风险。
需要说明的是,本申请所揭示的方法并不局限于NF触发的服务注册流程,该方法也同样适用于其他网络流程,例如,NF申请获取token流程、NF服务更新流程、NF服务去注册流程、NF服务发现流程、NF服务状态订购/状态通知流程、NF服务使用方和提供方绑定流程、NF配置流程等等。
下面以NF申请获取token流程(例如,NFc向NRF申请获取访问NFp业务的token)为例,结合远程证明技术,通过参数跨层交互的方式实现在网络层感知NF在RA层的远程证明的认证结果,确保被授权使用NFp服务的NFc是安全可信的。同时,考虑到认证结果的实时有效性,该实现方式在认证结果中增加认证结果的有效期限,NRF也可以根据认证结果的有效期限进一步确定token的有效期,控制NFc使用NFp服务的时间,从而消减网络软件化、虚拟化所带来的潜在安全风险。
图8是本申请实施例提供的第四种通信方法800的流程示例图。该实现方式中的NRF可以根据NFc在RA层的认证结果(例如,认证结果的有效期)确定token的有效期。
需要说明的是,NF(例如,NFc和NFp)在NRF完成服务注册之后,NRF会保存NFc和NFp的授权信息以及NFc和NFp的Profile。当NFc需要获取NFp的服务之前,NFc可以进一步向NRF请求获取访问NFp服务的token,以便NFp允许NFc的服务请求。其中,NFc向NRF获取token的方法如图8所示,该方法包括如下多个步骤。
S801,可选地,RAS向证明方发送消息#A。
对应的,证明方接收来自发起方的消息#A。
S802,证明方生成证据,并向RAS发送消息#B。
对应的,RAS接收来自证明方的消息#B。
S803,RAS基于证据对证明方进行验证得到认证结果,并向证明方发送消息#C。
对应的,证明方接收来自RAS的消息#C。
其中,消息#C包括认证结果,以及认证结果的有效期。
需要说明的是,步骤S801-S803的具体实现方式可参考上述方法600的步骤S601-S603,为了简洁,此处不再过多赘述。
需要说明的是,本申请对上述RA层的远程证明流程的执行时刻不作具体限定。下面通过以下两种情况进行具体说明。
方式一:RA层远程证明流程在网络层NFc申请token流程开始之前完成,此时网络层NFc存储认证结果。
S811,NFc存储认证结果。
其中,该认证结果包括认证结果的有效期,该认证结果是由RAS使用其私钥或共享对称密钥进行了完整性保护的。
在一种可能的实现方式中,该认证结果包括绑定网络层NF(例如NFc)与RA层的关联关系的信息,即绑定的网络层的NF信息。
S812,NRF预先配置RAS的公钥。
需要说明的是,步骤S811和S812的具体实现方式可参考上述方法600的步骤S611和S612,本申请对步骤S811和S812的执行先后顺序不做限制,为了简洁,此处不再过多赘述。
S820,NFc向NRF发送token请求消息#A。
对应的,NRF接收来自NFc的token请求消息#A。
其中,token请求消息#A包括认证结果,该认证结果包括该认证结果的有效期。
可选地,token请求消息#A还包括NRF的实例ID,NFc的实例ID,NFp的NF类型,NFc期望的业务名称,token的有效期、NFc的部分和全部配置数据等。
S830,NRF验证认证结果,若验证成功,则生成授权token。
其中,NRF校验token请求消息#A,以及生成授权token的实现方式可参见上述方法400的步骤S420。NRF验证认证结果的具体实现方式可参见上述方法600的步骤S630,为了简洁,此处不再赘述。
特别地,在NRF验证成功,生成授权token时,需要进一步确定授权token的有效期。示例性的,NRF根据认证结果的有效期确定授权token的有效期。例如,授权token的有效期小于认证结果的有效期。
S840,NRF向NFc发送token响应消息#A。
对应的,NFc接收来自NRF的token响应消息#A。
其中,该token响应消息#A用于授权NFc访问NFp的业务,该token响应消息#A包括token的有效期。
示例性的,基于上述步骤S830的检验成功,NRF确定可以生成授权token,进而通过token响应消息#A通知NFc。
在另一种可能的实现方式中,上述步骤S811中存储的认证结果不包括绑定的网络层NF信息。
具体地,NRF在步骤S830中对认证结果进行验证时,可以根据存储的RAS公钥或共享对称密钥确定该认证结果是由RAS进行了完整性保护且没有被篡改。但是由于认证结果中没有网络层NFc信息,NRF无法进一步比对确定该NFc执行过远程证明,因此NRF可以拒绝NFc的申请toekn请求。
可选地,NRF在验证认证结果失败后,也可以根据步骤三中的执行策略进一步判断是否授权NFc的token请求。例如,NRF在步骤二中确定认证结果没有网络层NFc信息,NRF可以暂时不授权NFc的token请求,通知NFc其token请求处于待定(pending)状态,需要NFc重新发送认证结果,并根据当下一次认证结果确定接收或拒绝NFc的token请求等。
方式二:网络层NF申请token流程在RA层远程证明流程完成之前开始执行,此时网络层NFc没有存储认证结果。
S850,NFc向NRF发送token请求消息#B。
对应的,NRF接收来自NFc的token请求消息#B。
其中,该token请求消息#B包括NFc配置数据,且不包括RA层的认证结果。
S860,NRF根据执行策略确定是否接受NFc的token请求。
一种可能的实现方式,NRF拒绝NFc的token请求。
另一种可能的实现方式,根据NFc遵循的标准版本确定是否接受NFc的token请求。
示例性的,如果NFc遵循的标准版本不要求强制进行RA时,则允许NFc的token请求。如果NFc遵循的标准版本要求强制进行RA时,则拒绝NFc的token请求。
S870,NRF向NFc发送token响应消息#B。
对应的,NFc接收来自NRF的token响应消息#B。
其中,该token响应消息#B用于通知NFc申请token请求成功(或失败、或待定)。
示例性的,基于上述步骤S860的认证结果的验证,NRF可以确定是否接受NFc的token请求,进而通过token响应消息#B通知NFc。
需要说明的是,该方法800所述的token请求流程可以与上述方法600所述的注册服务请求流程相结合,即RA流程中的网络层绑定参数可以由NFc所提供。其中,token请求方法也可以与上述方法700所述的注册服务请求流程相结合,即RA流程中的网络层NF绑定参数可以由NRF所提供。因此,方法800中的各步骤中未涉及的具体实现方式可以参考上述方法600或700,为了简洁,此处不再过多赘述。
本申请所揭示的方法,以NFc申请token流程为例,通过网络层和RA层之间的参数跨层交互,或者管理面和控制面之间的参数跨面交互,实现网络层感知NFc在RA层或管理面进行的远程证明的认证结果,并确保该远程证明是针对该NFc的远程证明,从而确保在网络层被授权使用各项服务的NFc是安全可信的,有效减少虚拟化、软件化带来的安全风险。通过在认证结果中携带认证结果的有效期,以使得NRF进行检验和确定token的有效期有所依据,确保在网络层申请token的NFc是安全可信的,有效减少虚拟化、软件化带来的安全风险。另外,网络层实际没有参与RA层的远程证明流程S801-S803,最大限度地实现网络层的申请token流程和RA层的远程证明流程解耦、控制面与管理面解耦。网络层通过配置RAS公钥或共享对称密钥对认证结果进行完整性保护,确保认证结果没有在传输过程中被篡改。由于远程证明流程中的证据交互没有传递到网络层,确保没有暴露RA层用于远程证明的敏感信息,即没有新增隐私泄露的安全风险。
应理解,上述方法800适用于NFc和NRF归属于同一运营商网络PLMN的场景。接下来方法900则针对漫游场景(例如,NFc和NRF归属于不同的PLMN)下NF如何申请token展开说明。
图9是本申请实施例提供的第五种通信方法900的流程示例图。如图9所示,该方法包括如下多个步骤。
示例性的,假设NFc属于拜访网络(visiting PLMN,vPLMN),NFc最终的授权服务器为归属网络(home PLMN,hPLMN)的NRF(hNRF)。例如,当UE漫游到vPLMN时,UE希望获取hPLMN中的NFp的服务时,vPLMN的NF(NFc)需要获取hPLMN的授权,即NF需要获取hPLMN的NRF(hNRF)的授权,或者签发的token。
需要说明的是,此时NF并不是直接与hNRF交互,而是通过漫游网络的NRF(即vNRF)进行中转。由于存在两个PLMN,有两种执行RA远程证明流程的可能实现方式,即RAS的服务器属于vPLMN或者属于hPLMN。为了有利于网络的演进,本申请实施例以RAS位于vPLMN为例进行说明,即RA是证明方与vPLMN的RAS(vRAS)之间进行的。该实现方式更合理,对现有网络以及网络协议的改动较小,对网络层的流程造成的变化较小。
S901,可选地,vRAS向证明方发送消息#a。
对应的,证明方接收来自发起方的消息#a。
S902,证明方生成证据,并向vRAS发送消息#b。
对应的,vRAS接收来自证明方的消息#b。
S903,vRAS基于证据对证明方进行验证得到认证结果,并向证明方发送消息#c。
对应的,证明方接收来自vRAS的消息#c。
其中,消息#c包括认证结果,以及认证结果的有效期。
需要说明的是,步骤S901-S903的具体实现方式可参考上述方法800的步骤S801-S803,为了简洁,此处不再过多赘述。
需要说明的是,本申请对上述RA层的远程证明流程的执行时刻不作具体限定。下面通过以下两种情况进行具体说明。
方式一:RA层远程证明流程在网络层NFc申请token流程开始之前完成,此时网络层NFc存储认证结果。
S911,NFc存储认证结果。
其中,该认证结果包括认证结果的有效期,该认证结果是由vRAS使用其私钥或共享对称密钥进行了完整性保护的。
在一种可能的实现方式中,该认证结果包括绑定网络层NF与RA层的关联关系的信息,即绑定的网络层的NF信息。
S912,vNRF预先配置vRAS的公钥或共享密钥。
需要说明的是,步骤S911和S912的具体实现方式可参考上述方法600的步骤S611和S612,本申请对步骤S911和S912的先后顺序不作限定,为了简洁,此处不再过多赘述。
S920,NFc向vNRF发送token请求消息#a。
对应的,vNRF接收来自NFc的token请求消息#a。
其中,token请求消息#a包括认证结果,该认证结果包括该认证结果的有效期,该认证结果由vRAS利用私钥(或共享密钥)进行数字签名(或生成MAC)。
可选地,token请求消息#a还包括NFc的部分或全部配置数据。例如,NFc ID。
S930,vNRF对认证结果进行验证。
可选地,若验证成功,则vNRF对认证结果进行完整性保护(利用数字签名或MAC)。
可选地,若验证成功,则vNRF生成认证结果的指示信息,用于指示认证结果是成功还是失败,指示信息中还包括了认证结果的有效期。进一步,NRF对该指示信息进行完整性保护(利用vNRF的私钥进行数字签名或使用与hNRF的共享密钥产生MAC)。
其中,vNRF校验token请求消息#a,以及生成授权token的实现方式可参见上述方法400的步骤S420。vNRF验证认证结果的具体实现方式可参见上述方法800的步骤S830,为了简洁,此处不再赘述。
应理解,vNRF此时不生成NFc请求的token。
可选地,vNRF的签名(或MAC)可以替换认证结果中vRAS的签名(或MAC)。
可选地,保留认证结果中vRAS的签名(或MAC),且新增vNRF的签名(或MAC)。
S940,vNRF向hNRF发送token请求消息#b。
对应的,hNRF接收来自vNRF的token请求消息#b。
可选地,token请求消息#b包括认证结果,该认证结果包括认证结果的有效期。
可选地,token请求消息#b包括由vNRF和/或vRSA签名的(或生成MAC进行完整性保护的)认证结果。
可选地,基于步骤S930中vNRF对NFc的请求校验成功,vNRF可以在token请求消息#b中携带指示信息,用来指示vNRF验证认证结果成功,而不携带认证结果。可选地,该指示信息还包括认证结果的有效期。
可选地,该指示信息可以由vNRF进行完整性保护(vNRF的数字签名或生成了MAC)。
S950,hNRF对认证结果进行验证,若验证成功,则生成授权token。
示例性的,若token请求消息#b携带认证结果,则hNRF验证认证结果,以及生成授权token的具体实现方式可参见上述方法800的步骤S830,为了简洁,此处不再赘述。若token请求消息#b携带指示信息,不携带认证结果,则hNRF可以基于指示信息生成授权token。
特别地,在hNRF验证成功,生成授权token时,需要进一步确定token的有效期。示例性的,hNRF根据认证结果(包括认证结果或者指示信息)的有效期确定token的有效期。例如,token的有效期小于认证结果的有效期。
S960,hNRF向vNRF发送token响应消息#b。
对应的,vNRF接收来自hNRF的响应消息#b。
S961,vNRF向NFc发送token响应消息#a。
对应的,NFc接收来自vNRF的响应消息#a。
其中,token响应消息#a和token响应消息#b用于通知是否接受NFc的token请求,token响应消息#a和token响应消息#b均包括生成的token,以及token的有效期。
在另一种可能的实现方式中,上述步骤S911中存储的认证结果不包括绑定的网络层NF信息。
示例性的,vNRF在步骤S930中对认证结果进行验证时,可以根据存储的vRAS公钥确定该认证结果是由vRAS进行了完整性保护且没有被篡改。但是由于认证结果中没有网络层NFc信息,vNRF无法进一步比对确定该NFc执行过远程证明,因此vNRF可以拒绝token请求。
方式二:网络层NF申请token流程在RA层远程证明流程完成之前开始执行,此时网络层NFc没有存储认证结果。
S970,NFc向vNRF发送token请求消息#c。
对应的,vNRF接收来自NFc的token请求消息#c。
其中,该token请求消息#c包括NFc配置数据,且不包括RA层的认证结果。
S971,vNRF对NFc的请求进行校验。
一种可能的实现方式,由于token请求消息#c不包括RA层的认证结果,则vNRF拒绝NFc的token请求。
另一种可能的实现方式,根据NFc遵循的标准版本确定是否接受NFc的token请求。
示例性的,如果NFc遵循的标准版本不要求强制进行RA时,则vNRF执行步骤S972。如果NFc遵循的标准版本要求强制进行RA时,则vNRF拒绝NFc的token请求。
S972,vNRF向hNRF发送token请求消息#d。
对应的,hNRF接收来自vNRF的token请求消息#d。
其中,该token请求消息#d包括NFc配置数据,且不包括RA层的认证结果。
S980,hNRF根据执行策略确定是否生成token。
一种可能的实现方式,hNRF拒绝NFc的token请求。
另一种可能的实现方式,hNRF可以根据NFc遵循的标准版本来确定,例如NF遵循的标准版不要求强制进行RA时,则hNRF接受NFc的token请求,并生成token。如果NFc遵循的标准版本要求强制进行RA时,则hNRF拒绝NFc的token请求。
S990,hNRF向vNRF发送token响应消息#d。
对应的,vNRF接收来自hNRF的响应消息#d。
S991,vNRF向NFc发送token响应消息#c。
对应的,NFc接收来自vNRF的响应消息#c。
其中,token响应消息#c和token响应消息#d用于通知接受或拒绝NFc申请token请求,如果接受token请求,token响应消息#c和token响应消息#d均包括token,以及token的有效期。
本申请所揭示的方法,以漫游场景下NFc申请token流程为例,通过网络层和RA层之间的参数跨层交互,或者管理面和控制面之间的参数跨面交互,实现网络层感知NFc在RA层或管理面进行的远程证明的认证结果,并确保该远程证明是针对该NFc的远程证明,从而确保在网络层被授权使用各项服务的NFc是安全可信的,有效减少虚拟化、软件化带来的安全风险。同时,为了有利于网络的演进,本申请基于现有标准化系统和流程,实现网络层对认证结果的感知,尽可能对当前网络以及网络协议进行较小的改动。另外,网络层实际没有参与RA层的远程证明,最大限度地实现网络层的申请token流程和RA层的远程证明流程解耦、控制面与管理面解耦。
考虑到NRF属于网络层的功能,在上述方法中,NRF与RA层没有直接的交互。例如在方法700中,NRF的参数#a是通过NFc的RA层(证明方)发送给RAS的。另外,NRF的配置信息通常是由运营商网络PLMN的管理者进行配置,例如通过管理面的操作维护管理(operationadministration and maintenance,OAM)系统进行配置。
可选地,NRF也可以配置内部接口,与RA层进行交互。下面以NRF配置信息为例,实现NRF可以与RA层的交互,即从RA层的RAS获取配置信息并更新NRF的配置信息。
图10是本申请实施例提供的第六种通信方法1000的流程示例图。该实现方式以NRF配置信息为例进行说明,与上述方法600-900不同之处在于,该实现方式中的NRF可以从RA层的RAS获取并更新配置信息。如图10所示,该方法包括如下多个步骤。
S1010,依赖方预先配置并存储RAS的公钥或共享密钥。
需要说明的是,NRF在RA层是作为依赖方的角色。在RA层,依赖方配置了RAS的公钥,可以接收到并验证RAS的消息。
S1020,RAS向依赖方发送通知消息#1。
对应的,依赖方接收来自RAS的通知信息#1。
其中,该通知消息#1用于通知更新或撤销网络层流程的关联信息。该通知消息#1可以包括需要更新或撤销网络层流程的关联信息,以及更新后的网络层流程的关联信息。
示例性的,网络层流程的关联信息可以包括:NF的RA认证结果、RAS的公钥、RAS ID或RAS地址信息等。
应理解,更新后的网络层流程的关联信息可以用来验证RAS的更新消息。例如,关联消息中更新的公钥用来验证RAS发来的RAS进行完整性保护(数字签名或生成MAC)的消息。又例如,关联消息中的RAS ID或RAS地址用来通知NRF需要验证的参数包括了RAS ID或RAS地址;再例如,关联消息中更新的认证结果(如吊销结果),用于指示NRF以前的认证结果不再有效。
示例性的,基于上述方法600-900中验证成功的认证结果,当RAS需要更新网络层流程的关联信息时,向依赖方发送通知消息#1。
S1030,依赖方对通知信息#1进行验证。
示例性的,依赖方根据RAS公钥或共享密钥对通知信息#1携带的网络层流程的关联信息进行完整性验证。例如,依赖方可以验证通知信息#1的数字签名是否正确,或者是否被篡改过。
S1040,依赖方通过内部接口将通知信息#1传递到网络层NRF。
应理解,当通知信息#1验证通过后,即确定通知信息#1的数字签名或MAC是正确的,且未被篡改过,依赖方可以通过内部接口将通知消息#1发送给NRF。
可选地,依赖方可发送给NRF的通知消息#1中可以携带RAS的签名或MAC。
S1050,NRF根据通知消息#1存储并更新网络层流程的关联信息。
可选地,若依赖方发送的通知信息#1包括RAS的公钥,则NRF在网络层需要存储或更新该RAS公钥,该RAS公钥或共享密钥用于验证收到的通知消息#1。
应理解,NRF的配置信息通常是由运营商PLMN进行配置的,例如通过管理面的操作维护管理OAM系统进行配置。
需要说明的是,该实现方式增加了与网络层NRF对应的RA层的角色,即依赖方(relying party)。NRF和依赖方之间设有内部接口,从而RA层可以向NRF(网络层)传递信息。处于RA层的RAS可以预先配置策略,当有与依赖方相关的信息时,RAS可以将该信息发送给依赖方。
需要说明的是,上述方法1000也可以适用于上述方法600-900,即NRF可以从RA层的RAS获取并更新配置信息,同样适应于NF服务注册流程以及NF申请token流程,本申请对此不作具体限定。
本申请所揭示的方法,以NRF配置信息为例,通过网络层NRF和RA层(RAS和依赖方)之间的跨层参数传递,或者管理面和控制面之间的跨面参数传递,实现网络层感知RA层或管理面的传递信息。而RA层如证据中所包括的敏感信息没有被泄露到网络层,因此没有新增隐私泄露的安全风险,有效减少虚拟化、软件化带来的安全风险。
应理解,上述方法均是基于NRF配置RAS公钥进行NFc服务注册请求或申请token请求的,用于校验由RAS私钥进行完整性保护的真实性。这需要对现有NRF的功能进行改动,而该实现方式以部署公钥服务器的NF注册流程为例,将RAS的公钥配置在其他服务器功能网元,例如验证服务器(verification server function,VSF),这样能够简化NRF的逻辑,尽量避免对现有标准化系统、流程和网络功能(例如NRF)的改动。
图11是本申请实施例提供的第七种通信方法1100的流程示例图。该实现方式以部署公钥服务器的NF注册流程为例进行说明,与上述方法600-1000不同之处在于,该实现方式中的NRF不配置RAS的公钥,RAS的公钥可以由其他网络功能(例如,VSF)配置。如图11所示,该方法包括如下多个步骤。
S1101,可选地,RAS向证明方发送消息#1。
对应的,证明方接收来自RAS的消息#1。
S1102,证明方生成证据,并向RAS发送消息#2。
对应的,RAS接收来自证明方的消息#2。
S1103,RAS基于证据对证明方进行验证得到认证结果,并向证明方发送消息#3。
对应的,证明方接收来自RAS的消息#3。
需要说明的是,上述步骤S1101-S1103的具体实现方式可参考方法600的步骤S601-S603,为了简洁,此处不再赘述。
需要说明的是,本申请对上述RA层的远程证明流程的执行时刻不作具体限定。下面通过以下两种情况进行具体说明。
方式一:RA层远程证明流程在网络层NF服务注册请求开始之前完成,此时网络层NFc存储认证结果。
S1111,NFc存储认证结果。
其中,该认证结果是由RAS使用其私钥或共享对称密钥进行了完整性保护的。
在一种可能的实现方式中,该认证结果包括绑定网络层NF与RA层的关联关系的信息,即绑定的网络层的NF信息。
S1112,VSF预先配置RAS的公钥或共享密钥。
其中,该公钥或共享密钥可以用于验证VSF接收到的消息携带的签名或MAC是否由RAS生成。
S1120,NFc向NRF发送注册请求消息#1。
对应的,NRF接收来自NFc的注册请求消息#1。
其中,该注册请求消息#1包括NFc的配置数据(例如,NFc ID)和认证结果,该认证结果携带由RAS使用其私钥进行的数字签名或共享密钥生成的MAC。
可选地,该注册请求消息#1包括指示信息,用于指示携带了认证结果,或者用于指示认证结果需要VSF的验证。
可选地,该指示信息包括验证的VSF的标识信息,例如VSF ID或VSF地址等信息。
S1130,NRF向VSF发送验证请求消息。
对应的,VSF接收来自NRF的验证请求消息。
其中,该验证请求消息用于请求VSF对认证结果进行验证,验证请求消息包括经过RAS完整性保护的认证结果。
可选地,验证请求消息包括验证指示信息,用于指示NRF需要将认证结果发送给VSF进行验证。如果验证请求消息中携带目标VSF的ID或VSF的地址信息,则NRF将认证结果发送给目标VSF进行验证。
S1140,VSF对认证结果的完整性保护进行校验。
其中,VSF对认证结果的的完整性保护的具体校验方式可以参考方法600的步骤S630。例如,VSF根据存储的RAS公钥或共享密钥校验认证结果的完整性保护,即验证认证结果是否由RAS的私钥进行的数字签名或由RAS的共享密钥生成的MAC。
S1150,VSF向NRF发送校验结果。
对应的,NRF接收来自VSF的校验结果。
应理解,校验结果可以是该认证结果是真实可信的,也可以是该认证结果是不真实可信,或已过期,或被篡改等。
可选地,VSF对认证结果进行完整性保护。例如,VSF使用私钥对认证结果进行签名。
一种可能的实现方式,VSF将校验过的认证结果发给NRF。
另一种可能的实现方式,VSF将校验过的认证结果发给NRF,而发送指示信息,用于指示该认证结果是否真实(例如,利用RAS公钥验证经过RAS进行完整性保护的认证结果,通过验证则认证结果为真实),这是因为在步骤S1120中NRF接收过认证结果,不必再次发送认证结果,节省网络资源。
又一种可能的实现方式,如果认证结果经过了RAS加密处理,则VSF将检验过的认证结果发给NRF,这是因为虽然在步骤S1120中NRF接收过认证结果,但却无法解密,因此VSF需要将解密的认证结果发给NRF。
S1160,NRF验证认证结果,若验证成功,则接受NFc服务注册请求,并存储NFc配置数据。
具体地,NRF验认证结果的具体实现方式可参考方法600中步骤S630。为了简洁,此处不再赘述。
需要说明的是,在一种可能的实现方式中,步骤S1160中NRF验证认证结果的步骤,也可以由VSF在步骤S1140中进行。在这种实现方式中,NRF需要在步骤S1130中将所有注册请求所需的信息(例如,NF Profile)发送给VSF,然后由VSF进行验证认证结果。如果验证成功,则在步骤S1160中通知NRF验证成功,NRF存储验证成功的NF Profile。反之,如果验证失败,NRF不存储该NF Profile,不接受该注册请求。
S1161,NRF向NFc发送注册响应消息#1。
对应的,NFc接收来自NRF的注册响应消息#1。
其中,该注册响应消息#1用于通知NFc注册成功(或失败)。NRF发送注册响应消息#1的具体实现方式可参考方法600中步骤S640。为了简洁,此处不再赘述。
在另一种可能的实现方式中,上述步骤S1111中存储的认证结果不包括绑定的网络层NF信息。
具体地,NRF在步骤S1160中对认证结果进行验证时,由于认证结果中没有网络层NFc信息,NRF无法进一步比对确定该NFc执行过远程证明,因此NRF可以拒绝NFc的注册请求。
可选地,NRF在验证认证结果失败后,也可以根据参考方法600步骤三的执行策略进一步判断是否接受NFc的注册请求。
方式二:网络层NF服务注册流程在RA层远程证明流程完成之前开始执行,此时网络层NFc没有存储认证结果。
S1170,NFc向NRF发送注册请求消息#2。
对应的,NRF接收来自NFc的注册请求消息#2。
其中,该注册请求消息#2包括NFc配置数据,且不包括RA层的认证结果。
S1180,NRF根据执行策略确定是否接受NFc服务注册请求。
S1190,NRF向NFc发送注册响应消息#2。
对应的,NFc接收来自NRF的注册响应消息#2。
其中,该注册响应消息#2用于通知NFc注册成功(或失败)。
需要说明的是,该实现方式可以理解为基于方法600中NF注册流程的进一步扩展。所以上述步骤(例如,S1111-S1120、S1160-S1190、S1101-S103)的具体实现方式可参考方法600,为了简洁,不再过多赘述。
应理解,上述验证服务器VSF仅是示例性说明,本申请实施例不对配置RAS的公钥的网络功能或者对认证结果进行验证的网络功能具体限定。该实现方式同样适用以上其他方法实施例,本申请不作具体限定。
需要说明的是,上述方法1100也可以适用于上述方法600-900,即RAS的公钥由其他网络功能(例如,VSF)配置同样适应于NF申请token流程,本申请对此不作具体限定。
本申请所揭示的方法,以部署公钥服务器的NF注册流程为例,通过网络层和RA层之间的跨层参数传递,实现网络层感知NFc在RA层或管理面进行的远程证明的认证结果,从而确保在网络层注册的NFc是安全可信的,有效减少虚拟化、软件化带来的安全风险。另外,网络层没有参与RA层的远程证明,最大限度地实现网络层NF注册流程和RA层的远程证明流程解耦、控制面与管理面解耦。网络层通过在非NRF的其他网络功能(例如,VSF)配置RAS公钥,对认证结果进行完整性校验、解密,进而减轻NRF的运行压力,使得NRF的行为逻辑较为简单,对当前NRF的功能改动较小。
上文结合图1至图11,详细描述了本申请的通信方法侧实施例,下面将结合图12和图13,详细描述本申请的网元设备侧实施例。应理解,装置实施例的描述与方法实施例的描述相互对应,因此,未详细描述的部分可以参见前面方法实施例。
图12是本申请实施例提供的网元设备的示意性框图。如图12所示,该设备1200可以包括收发单元1210和处理单元1220。收发单元1210可以与外部进行通信,处理单元1220用于进行数据处理。收发单元1210还可以称为通信接口或收发单元。
在一种可能的设计中,该设备1200可实现对应于上文方法实施例中的第一网络功能网元(例如,NFc)执行的步骤或者流程,其中,处理单元1220用于执行上文方法实施例中第一网络功能网元的处理相关的操作,收发单元1210用于执行上文方法实施例中第一网络功能网元的收发相关的操作。
示例性的,收发单元1210,用于获取具有完整性保护的证明信息,证明信息包括认证结果以及与认证结果关联的范围指示信息,认证结果用于表征第一网络功能网元是否可信,范围指示信息用于指示认证结果的有效范围,且范围指示信息包括第一网络功能网元的标识;
处理单元1220,用于在确定需要请求第二网络功能网元提供的服务的情况下,生成服务请求消息,服务请求消息包括证明信息以及第一网络功能网元的标识;
收发单元1210,还用于向第二网络功能网元发送服务请求消息。
在另一种可能的设计中,该设备1200可实现对应于上文方法实施例中的第二网络功能网元(例如,NRF)执行的步骤或者流程,其中,收发单元1210用于执行上文方法实施例中第二网络功能网元的收发相关的操作,处理单元1220用于执行上文方法实施例中第二网络功能网元的处理相关的操作。
示例性的,收发单元1210,用于接收来自第一网络功能网元的服务请求消息,服务请求消息用于请求服务,服务请求消息包括第一网络功能网元的标识;
处理单元1220,用于在服务请求消息还包括具有完整性保护的证明信息的情况下,对证明信息的完整性保护进行验证;
处理单元1220,还用于当证明信息的完整性保护验证通过时,根据证明信息确定是否向第一网络功能网元提供服务。
示例性的,处理单元1220,还用于在服务请求消息不包括具有完整性保护的证明信息的情况下,根据预先配置的执行策略确定是否向第一网络功能网元提供服务。
应理解,这里的设备1200以功能单元的形式体现。这里的术语“单元”可以指应用特有集成电路(application specific integrated circuit,ASIC)、电子电路、用于执行一个或多个软件或固件程序的处理器(例如共享处理器、专有处理器或组处理器等)和存储器、合并逻辑电路和/或其它支持所描述的功能的合适组件。在一个可选例子中,本领域技术人员可以理解,设备1200可以具体为上述实施例中的发送端,可以用于执行上述方法实施例中与发送端对应的各个流程和/或步骤,或者,设备1200可以具体为上述实施例中的接收端,可以用于执行上述方法实施例中与接收端对应的各个流程和/或步骤,为避免重复,在此不再赘述。
上述各个方案的设备1200具有实现上述方法中发送端所执行的相应步骤的功能,或者,上述各个方案的设备1200具有实现上述方法中接收端所执行的相应步骤的功能。所述功能可以通过硬件实现,也可以通过硬件执行相应的软件实现。所述硬件或软件包括一个或多个与上述功能相对应的模块;例如收发单元可以由收发机替代(例如,收发单元中的发送单元可以由发送机替代,收发单元中的接收单元可以由接收机替代),其它单元,如处理单元等可以由处理器替代,分别执行各个方法实施例中的收发操作以及相关的处理操作。
此外,上述收发单元还可以是收发电路(例如可以包括接收电路和发送电路),处理单元可以是处理电路。在本申请的实施例,图12中的装置可以是前述实施例中的接收端或发送端,也可以是芯片或者芯片系统,例如:片上系统(system on chip,SoC)。其中,收发单元可以是输入输出电路、通信接口。处理单元为该芯片上集成的处理器或者微处理器或者集成电路。在此不做限定。
图13示出了本申请实施例提供的网元设备2000。该设备2000包括处理器2010和收发器2020。其中,处理器2010和收发器2020通过内部连接通路互相通信,该处理器2010用于执行指令,以控制该收发器2020发送信号和/或接收信号。
可选地,该设备2000还可以包括存储器2030,该存储器2030与处理器2010、收发器2020通过内部连接通路互相通信。该存储器2030用于存储指令,该处理器2010可以执行该存储器2030中存储的指令。
在一种可能的实现方式中,设备2000用于实现上述方法实施例中的第一网络功能网元对应的各个流程和步骤。
示例性的,收发器2020,用于获取具有完整性保护的证明信息,证明信息包括认证结果以及与认证结果关联的范围指示信息,认证结果用于表征第一网络功能网元是否可信,范围指示信息用于指示认证结果的有效范围,且范围指示信息包括第一网络功能网元的标识;
处理器2010,用于在确定需要请求第二网络功能网元提供的服务的情况下,生成服务请求消息,服务请求消息包括证明信息以及第一网络功能网元的标识;
收发器2020,还用于向第二网络功能网元发送服务请求消息。
在另一种可能的实现方式中,设备2000用于实现上述方法实施例中的第二网络功能网元对应的各个流程和步骤。
示例性的,收发器2020,用于接收来自第一网络功能网元的服务请求消息,服务请求消息用于请求服务,服务请求消息包括第一网络功能网元的标识;
处理器2010,用于在服务请求消息还包括具有完整性保护的证明信息的情况下,对证明信息的完整性保护进行验证;
处理器2010,还用于当证明信息的完整性保护验证通过时,根据证明信息确定是否向第一网络功能网元提供服务。
示例性的,处理器2010,还用于在服务请求消息不包括具有完整性保护的证明信息的情况下,根据预先配置的执行策略确定是否向第一网络功能网元提供服务。
应理解,设备2000可以具体为上述实施例中的发送端或接收端,也可以是芯片或者芯片系统。对应的,该收发器2020可以是该芯片的收发电路,在此不做限定。具体地,该设备2000可以用于执行上述方法实施例中与发送端或接收端对应的各个步骤和/或流程。
可选地,该存储器2030可以包括只读存储器和随机存取存储器,并向处理器提供指令和数据。存储器的一部分还可以包括非易失性随机存取存储器。例如,存储器还可以存储设备类型的信息。该处理器2010可以用于执行存储器中存储的指令,并且当该处理器2010执行存储器中存储的指令时,该处理器2010用于执行上述与发送端或接收端对应的方法实施例的各个步骤和/或流程。
在实现过程中,上述方法的各步骤可以通过处理器中的硬件的集成逻辑电路或者软件形式的指令完成。结合本申请实施例所公开的方法的步骤可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器,处理器读取存储器中的信息,结合其硬件完成上述方法的步骤。为避免重复,这里不再详细描述。
应注意,本申请实施例中的处理器可以是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法实施例的各步骤可以通过处理器中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器可以是通用处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。本申请实施例中的处理器可以实现或者执行本申请实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本申请实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器,处理器读取存储器中的信息,结合其硬件完成上述方法的步骤。
可以理解,本申请实施例中的存储器可以是易失性存储器或非易失性存储器,或可包括易失性和非易失性存储器两者。其中,非易失性存储器可以是只读存储器(read-only memory,ROM)、可编程只读存储器(programmable ROM,PROM)、可擦除可编程只读存储器(erasable PROM,EPROM)、电可擦除可编程只读存储器(electrically EPROM,EEPROM)或闪存。易失性存储器可以是随机存取存储器(random access memory,RAM),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的RAM可用,例如静态随机存取存储器(static RAM,SRAM)、动态随机存取存储器(dynamic RAM,DRAM)、同步动态随机存取存储器(synchronous DRAM,SDRAM)、双倍数据速率同步动态随机存取存储器(double data rateSDRAM,DDR SDRAM)、增强型同步动态随机存取存储器(enhanced SDRAM,ESDRAM)、同步连接动态随机存取存储器(synchlink DRAM,SLDRAM)和直接内存总线随机存取存储器(directrambus RAM,DR RAM)。应注意,本文描述的系统和方法的存储器旨在包括但不限于这些和任意其它适合类型的存储器。
根据本申请实施例提供的方法,本申请还提供一种计算机程序产品,该计算机程序产品包括:计算机程序代码,当该计算机程序代码在计算机上运行时,使得该计算机执行上述所示实施例中的方法。
根据本申请实施例提供的方法,本申请还提供一种计算机可读介质,该计算机可读介质存储有程序代码,当该程序代码在计算机上运行时,使得该计算机执行上述所示实施例中的方法。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(read-only memory,ROM)、随机存取存储器(random access memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以所述权利要求的保护范围为准。
Claims (33)
1.一种通信方法,其特征在于,包括:
第一网络功能网元获取具有完整性保护的证明信息,所述证明信息包括认证结果以及与所述认证结果关联的范围指示信息,所述认证结果用于表征所述第一网络功能网元是否可信,所述范围指示信息用于指示所述认证结果的有效范围,且所述范围指示信息包括所述第一网络功能网元的标识;
在确定需要请求第二网络功能网元提供的服务的情况下,所述第一网络功能网元生成服务请求消息,所述服务请求消息包括所述证明信息以及所述第一网络功能网元的标识;
所述第一网络功能网元向所述第二网络功能网元发送所述服务请求消息。
2.根据权利要求1所述的方法,其特征在于,所述范围指示信息还包括以下一项或者多项:
所述第一网络功能网元的配置数据或部分所述配置数据;或
所述第二网络功能网元的标识。
3.根据权利要求1或2所述的方法,其特征在于,所述方法还包括:
所述第一网络功能网元向验证方发送远程认证请求,所述远程认证请求包括度量,所述度量用于表征所述第一网络功能网元的运行状态;
所述第一网络功能网元获取具有完整性保护的证明信息,具体为:
所述第一网络功能网元接收来自所述验证方的所述证明信息,所述证明信息与所述度量关联。
4.根据权利要求3所述的方法,其特征在于,所述方法还包括:
所述第一网络功能网元接收来自所述第二网络功能网元的新鲜性参数;
其中,所述远程认证请求还包括所述新鲜性参数;所述证明信息还与所述新鲜性参数关联。
5.根据权利要求4所述的方法,其特征在于,所述范围指示信息还包括所述新鲜性参数。
6.根据权利要求1至5中任一项所述的方法,其特征在于,所述第一网络功能网元向所述第二网络功能网元发送所述服务请求消息,包括:
当所述认证结果表征所述第一网络功能网元是可信时,所述第一网络功能网元向所述第二网络功能网元发送所述服务请求消息。
7.根据权利要求1至6中任一项所述的方法,其特征在于,所述范围指示信息还包括所述认证结果的时效信息;其中,所述时效信息包括以下一项或者多项:
所述认证结果的生成时间;
所述认证结果生成时间以及有效时长;
所述认证结果的有效的截止时间;或者
所述认证结果的计数器值。
8.根据权利要求1至7中任一项所述的方法,其特征在于,当所述服务为注册服务时,所述服务请求消息还包括所述第一网络功能网元的配置数据,所述服务请求消息用于请求存储所述第一网络功能网元的配置数据。
9.根据权利要求1至7中任一项所述的方法,其特征在于,当所述服务为授权服务时,所述证明信息还包括所述认证结果的有效期限,所述服务请求消息用于请求获取第一令牌,所述第一令牌用于授权所述第一网络功能网元访问第三网络功能网元的业务,所述方法还包括:
所述第一网络功能网元接收来自所述第二网络功能网元的所述第一令牌和所述第一令牌的有效期限,所述第一令牌的有效期限小于或等于所述认证结果的有效期限。
10.一种通信方法,其特征在于,包括:
第二网络功能网元接收来自第一网络功能网元的服务请求消息,所述服务请求消息用于请求服务,所述服务请求消息包括所述第一网络功能网元的标识;
在所述服务请求消息还包括具有完整性保护的证明信息的情况下,所述第二网络功能网元对所述证明信息的完整性保护进行验证;
当所述证明信息的完整性保护验证通过时,所述第二网络功能网元根据所述证明信息确定是否向所述第一网络功能网元提供所述服务。
11.根据权利要求10所述的方法,其特征在于,所述方法还包括:
在所述服务请求消息不包括所述具有完整性保护的证明信息的情况下,所述第二网络功能网元根据预先配置的执行策略确定是否向所述第一网络功能网元提供所述服务。
12.根据权利要求11所述的方法,其特征在于,所述第二网络功能网元根据预先配置的执行策略确定是否向所述第一网络功能网元提供所述服务,包括:
所述第二网络功能网元拒绝向所述第一网络功能网元提供所述服务;或者,
所述第二网络功能网元根据所述第一网络功能网元遵循的标准版本确定是否向所述第一网络功能网元提供所述服务。
13.根据权利要求10至12中任一项所述的方法,其特征在于,所述证明信息包括认证结果以及与所述认证结果关联的范围指示信息,所述认证结果用于表征所述第一网络功能网元是否可信,所述范围指示信息用于指示所述认证结果的有效范围,且所述范围指示信息包括所述第一网络功能网元的标识。
14.根据权利要求13所述的方法,其特征在于,所述第二网络功能网元根据所述证明信息确定是否向所述第一网络功能网元提供所述服务,包括:
当所述认证结果表征所述第一网络功能网元是可信的,且所述认证结果的有效范围指示所述认证结果针对所述第一网络功能网元是有效时,所述第二网络功能网元确定向所述第一网络功能网元提供所述服务。
15.根据权利要求14所述的方法,其特征在于,所述方法还包括:
所述第二网络功能网元确定所述认证结果的有效范围指示所述认证结果针对所述第一网络功能网元是否有效。
16.根据权利要求15所述的方法,其特征在于,所述第二网络功能网元确定所述认证结果的有效范围指示所述认证结果针对所述第一网络功能网元是否有效,包括:
所述第二网络功能网元判断所述范围指示信息中携带的所述第一网络功能网元的标识,是否与所述服务请求消息中携带的所述第一网络功能网元的标识相同。
17.根据权利要求13至16中任一项所述的方法,其特征在于,所述范围指示信息还包括以下一项或者多项:
所述第一网络功能网元的配置数据或部分所述配置数据;或
所述第二网络功能网元的标识。
18.根据权利要求10至17中任一项所述的方法,其特征在于,所述方法还包括:
所述第二网络功能网元预先配置验证方的公钥或共享密钥;其中,
所述第二网络功能网元对所述证明信息的完整性保护进行验证,包括:
所述第二网络功能网元根据所述验证方的公钥或共享密钥对所述证明信息的完整性保护进行验证。
19.根据权利要求13至18中任一项所述的方法,其特征在于,所述范围指示信息还包括所述认证结果的时效信息;其中,所述时效信息包括以下一项或者多项:
所述认证结果的生成时间;
所述认证结果生成时间以及有效时长;
所述认证结果的有效的截止时间;或者
所述认证结果的计数器值。
20.根据权利要求10至19中任一项所述的方法,其特征在于,在所述第二网络功能网元接收来自第一网络功能网元的服务请求消息之前,所述方法还包括:
所述第二网络功能网元向所述第一网络功能网元发送所述第二网络功能网元的新鲜性参数;其中,所述证明信息与所述新鲜性参数关联。
21.根据权利要求20所述的方法,其特征在于,所述范围指示信息还包括所述新鲜性参数。
22.根据权利要求10至21中任一项所述的方法,其特征在于,所述方法还包括:
所述第二网络功能网元接收来自验证方的具有完整性保护的通知消息,所述通知消息用于指示更新所述第二网络功能网元当前的配置信息,所述通知消息包括更新后的配置信息;
所述第二网络功能网元根据预先配置的所述验证方的公钥或共享密钥对所述通知消息的完整性保护进行验证;
当所述通知消息的完整性保护验证通过时,所述第二网络功能网元存储所述更新后的配置信息。
23.根据权利要求22所述的方法,其特征在于,所述更新后的配置信息包括以下一项或者多项:
更新后的认证结果;或所述验证方的更新后的公钥或共享密钥、所述验证方的更新后的标识或地址信息。
24.根据权利要求10至23中任一项所述的方法,其特征在于,所述方法还包括:
所述第二网络功能网元向服务器功能网元发送验证请求消息,所述验证请求消息包括所述证明信息,所述验证请求消息用于请求对所述证明信息的完整性保护进行验证;
所述第二网络功能网元接收来自所述服务器功能网元的验证结果,所述验证结果用于指示所述证明信息的完整性保护是否验证通过。
25.根据权利要求10至24中任一项所述的方法,其特征在于,当所述服务为注册服务时,所述服务请求消息还包括所述第一网络功能网元的配置数据,所述服务请求消息用于请求存储所述第一网络功能网元的配置数据。
26.根据权利要求10至25中任一项所述的方法,其特征在于,当所述服务为授权服务时,所述证明信息还包括所述认证结果的有效期限,所述服务请求消息用于请求获取第一令牌,所述第一令牌用于授权所述第一网络功能网元访问第三网络功能网元的业务;
所述第二网络功能网元根据所述证明信息确定是否向所述第一网络功能网元提供所述服务,包括:
所述第二网络功能网元生成所述第一令牌,所述第一令牌的有效期限小于或等于所述认证结果的有效期限;
所述第二网络功能网元向所述第一网络功能网元发送所述第一令牌和所述第一令牌的有效期限。
27.根据权利要求10至25中任一项所述的方法,其特征在于,当所述服务为授权服务时,所述证明信息还包括所述认证结果的有效期限,所述服务请求消息用于请求获取第一令牌,所述第一令牌用于授权所述第一网络功能网元访问第三网络功能网元的业务;
所述第二网络功能网元根据所述证明信息确定是否向所述第一网络功能网元提供所述服务,包括:
所述第二网络功能网元向归属网络功能存储库功能网元发送所述服务请求消息;
所述第二网络功能网元接收来自所述归属网络功能存储库功能网元的所述第一令牌和所述第一令牌的有效期限,所述第一令牌的有效期限小于或等于所述认证结果的有效期限;
所述第二网络功能网元向所述第一网络功能网元发送所述第一令牌和所述第一令牌的有效期限。
28.一种网元设备,其特征在于,包括:
用于实现权利要求1至9中任一项所述的方法的单元;和/或,
用于实现权利要求10至27中任一项所述的方法的单元。
29.一种通信系统,其特征在于,包括:
用于执行如权利要求1至9中任一项所述的方法的第一网络功能网元;和/或,
用于执行如权利要求10至27中任一项所述的方法的第二网络功能网元。
30.一种网元设备,其特征在于,包括:处理器,所述处理器与存储器耦合;所述处理器,用于执行所述存储器中存储的计算机程序,以使得所述装置执行如权利要求1至27中任一项所述的方法。
31.一种芯片,其特征在于,包括:处理器,用于从存储器中调用并运行计算机程序,使得安装有所述芯片的网元设备执行如权利要求1至27中任一项所述的方法。
32.一种计算机程序,其特征在于,所述计算机程序被网元设备执行时,实现如权利要求1至27中任一项所述的方法。
33.一种计算机可读存储介质,其特征在于,包括:所述计算机可读存储介质上存储有计算机程序,当所述计算机程序运行时,使得所述计算机执行如权利要求1至27中任一项所述的方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210499769.7A CN117082507A (zh) | 2022-05-09 | 2022-05-09 | 通信方法和网元设备 |
PCT/CN2023/090971 WO2023216891A1 (zh) | 2022-05-09 | 2023-04-26 | 通信方法和网元设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210499769.7A CN117082507A (zh) | 2022-05-09 | 2022-05-09 | 通信方法和网元设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117082507A true CN117082507A (zh) | 2023-11-17 |
Family
ID=88712110
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210499769.7A Pending CN117082507A (zh) | 2022-05-09 | 2022-05-09 | 通信方法和网元设备 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN117082507A (zh) |
WO (1) | WO2023216891A1 (zh) |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102013983B1 (ko) * | 2016-06-13 | 2019-10-21 | (유)아홉 | 애플리케이션 무결성 인증 방법 및 인증 서버 |
CN110830991B (zh) * | 2018-08-10 | 2023-02-03 | 华为技术有限公司 | 安全会话方法和装置 |
CN113438196B (zh) * | 2020-03-23 | 2022-10-25 | 华为技术有限公司 | 一种服务授权方法、装置及系统 |
US20230171600A1 (en) * | 2020-04-24 | 2023-06-01 | Lenovo (Singapore) Pte. Ltd. | Distinct user plane security |
CN113965925B (zh) * | 2020-07-01 | 2023-08-25 | 大唐移动通信设备有限公司 | 一种动态认证方法、装置、设备及可读存储介质 |
-
2022
- 2022-05-09 CN CN202210499769.7A patent/CN117082507A/zh active Pending
-
2023
- 2023-04-26 WO PCT/CN2023/090971 patent/WO2023216891A1/zh unknown
Also Published As
Publication number | Publication date |
---|---|
WO2023216891A1 (zh) | 2023-11-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Cao et al. | A survey on security aspects for 3GPP 5G networks | |
US10743176B1 (en) | Secure onboarding of a device having an embedded universal integrated circuit card without a preloaded provisioning profile | |
CN110474875B (zh) | 基于服务化架构的发现方法及装置 | |
US9882894B2 (en) | Secure authentication service | |
CN110798833B (zh) | 一种鉴权过程中验证用户设备标识的方法及装置 | |
WO2019194242A1 (en) | Security procedures for common api framework in next generation networks | |
WO2018077232A1 (zh) | 一种网络认证方法、相关设备及系统 | |
US20210377054A1 (en) | Systems and methods for managing public key infrastructure certificates for components of a network | |
WO2021190273A1 (zh) | 一种通信方法、装置及系统 | |
CN112512045B (zh) | 一种通信系统、方法及装置 | |
CN111818516B (zh) | 认证方法、装置及设备 | |
US11855977B2 (en) | Systems and methods for configuring a network function proxy for secure communication | |
EP4327505A2 (en) | Methods and apparatus for provisioning, authentication, authorization, and user equipment (ue) key generation and distribution in an on-demand network | |
WO2021031054A1 (zh) | 通信方法及装置 | |
WO2023212051A1 (en) | Methods, architectures, apparatuses and systems for decentralized data control and access management | |
CN117320002A (zh) | 通信方法及装置 | |
CN117082507A (zh) | 通信方法和网元设备 | |
CN115706997A (zh) | 授权验证的方法及装置 | |
WO2024093923A1 (zh) | 通信方法和通信装置 | |
WO2024067619A1 (zh) | 通信方法和通信装置 | |
CN116528234B (zh) | 一种虚拟机的安全可信验证方法及装置 | |
EP3488627A1 (en) | Proof-of-presence indicator | |
CN117318948A (zh) | 通信方法和装置 | |
CN117641358A (zh) | 通信方法和通信装置 | |
WO2023223118A1 (en) | Subscription identification in networks |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication |