Patent Description:
This section introduces aspects that may be helpful to facilitating a better understanding of the inventions.

Fourth generation (<NUM>) wireless mobile telecommunications technology, also known as Long Term Evolution (LTE) technology, was designed to provide high capacity mobile multimedia with high data rates particularly for human interaction. Next generation or fifth generation (<NUM>) technology is intended to be used not only for human interaction, but also for machine type communications in so-called Internet of Things (IoT) networks.

While <NUM> networks are intended to enable massive IoT services (e.g., very large numbers of limited capacity devices) and mission-critical IoT services (e.g., requiring high reliability), improvements over legacy mobile communication services are supported in the form of enhanced mobile broadband (eMBB) services providing improved wireless Internet access for mobile devices.

In an example communication system, user equipment (<NUM> UE in a <NUM> network or, more broadly, a UE) such as a mobile terminal (subscriber) communicates over an air interface with a base station or access point referred to as a gNB in a <NUM> network. The access point (e.g., gNB) is illustratively part of an access network of the communication system. For example, in a <NUM> network, the access network is referred to as a <NUM> System and is described in <NUM> Technical Specification (TS) <NUM>, V15. <NUM>, entitled "Technical Specification Group Services and System Aspects; System Architecture for the <NUM> System,". In general, the access point (e.g., gNB) provides access for the UE to a core network (CN), which then provides access for the UE to other UEs and/or a data network such as a packet data network (e.g., Internet).

TS <NUM> goes on to define a <NUM> Service-Based Architecture (SBA) which models services as network functions (NFs) that communicate with each other using representational state transfer application programming interfaces (Restful APIs).

Furthermore, <NUM> Technical Specification (TS) <NUM>, V0. <NUM>, entitled"Technical Specification Group Services and System Aspects; Security Architecture and Procedures for the <NUM> System," further describes security management details associated with a <NUM> network.

Security management is an important consideration in any communication system. However, due to continuing attempts to improve the architectures and protocols associated with a <NUM> network in order to increase network efficiency and/or subscriber convenience, security management issues can present a significant challenge.

<NPL> relates to different approaches for SBA security when communicating between networks via a SEPP.

<NPL> relates to methods for applying security at an SEPP.

Illustrative embodiments provide improved techniques for security management in communication systems.

For example, in one illustrative embodiment, a method comprises the following step. In a communication system comprising a first network operatively coupled to a second network, wherein the first network comprises a first security edge protection proxy element operatively coupled to a second security edge protection proxy element of the second network; the method comprises configuring at least one of the first and second security edge protection proxy elements to apply application layer security to one or more information elements in a received message from a network function before sending the message to the other one of the first and second security edge protection proxy elements. The configuring comprises configuring the one of the first and second security edge protection proxy elements to apply different types of application layer security to different ones of the one or more information elements in the received message, wherein the applying different types of application layer security to different ones of the one or more information elements in the received message comprises: applying at least one of end-to-end encryption and a first type of end-to-end integrity protection to information elements of a first type; and applying a second type of end-to-end integrity protection to information elements of a second type, the second type of end-to-end integrity protection permitting verifiable modification of the information elements of the second type by one or more authorized nodes in the first network and/or second network.

Further, in one or more illustrative embodiments, the security edge protection proxy element identifies an indicator in the received message from the network function, wherein the indicator is set by the network function to specify at least one security operation to be applied to the one or more information elements. Alternatively, the security edge protection proxy element is provisioned with configuration information that enables the security edge protection proxy element to self-identify at least one security operation to be applied to at least one information element in a received message.

In other illustrative embodiments, the security edge protection proxy element is configured to one or more of: select a protection scheme based on the content of the one or more information elements; negotiate a security profile with the other security edge protection proxy element; and perform security key agreement operations with the other security edge protection proxy element to agree on one or more keys for application layer security.

Further illustrative embodiments are provided in the form of non-transitory computer-readable storage medium having embodied therein executable program code that when executed by a processor causes the processor to perform the above steps. Still further illustrative embodiments comprise apparatus with a processor and a memory configured to perform the above steps.

These and other features and advantages of embodiments described herein will become more apparent from the accompanying drawings and the following detailed description.

Embodiments will be illustrated herein in conjunction with example communication systems and associated techniques for providing security management in communication systems. It should be understood, however, that the scope of the claims is not limited to particular types of communication systems and/or processes disclosed. Embodiments can be implemented in a wide variety of other types of communication systems, using alternative processes and operations. For example, although illustrated in the context of wireless cellular systems utilizing 3GPP system elements such as a 3GPP next generation system (<NUM>), the disclosed embodiments can be adapted in a straightforward manner to a variety of other types of communication systems.

In accordance with illustrative embodiments implemented in a <NUM> communication system environment, one or more 3GPP technical specifications (TS) and technical reports (TR) may provide further explanation of network elements/functions and/or operations that may interact with parts of the inventive solutions, e.g., the above-referenced 3GPP TS <NUM> and 3GPP TS <NUM>. Other 3GPP TS/TR documents may provide other conventional details that one of ordinary skill in the art will realize. However, while well-suited for <NUM>-related 3GPP standards, embodiments are not necessarily intended to be limited to any particular standards.

Illustrative embodiments are related to security management associated with the Service-Based Architecture (SBA) for <NUM> networks. Prior to describing such illustrative embodiments, a general description of main components of a <NUM> network will be described below in the context of <FIG> and <FIG>.

<FIG> shows a communication system <NUM> within which illustrative embodiments are implemented. It is to be understood that the elements shown in communication system <NUM> are intended to represent main functions provided within the system, e.g., UE access functions, mobility management functions, authentication functions, serving gateway functions, etc. As such, the blocks shown in <FIG> reference specific elements in <NUM> networks that provide these main functions. However, other network elements may be used to implement some or all of the main functions represented. Also, it is to be understood that not all functions of a <NUM> network are depicted in <FIG>. Rather, functions that facilitate an explanation of illustrative embodiments are represented. Subsequent figures may depict some additional elements/functions.

Accordingly, as shown, communication system <NUM> comprises user equipment (UE) <NUM> that communicates via an air interface <NUM> with an access point (gNB) <NUM>. The UE <NUM> may be a mobile station, and such a mobile station may comprise, by way of example, a mobile telephone, a computer, or any other type of communication device. The term "user equipment" as used herein is therefore intended to be construed broadly, so as to encompass a variety of different types of mobile stations, subscriber stations or, more generally, communication devices, including examples such as a combination of a data card inserted in a laptop or other equipment such as a smart phone. Such communication devices are also intended to encompass devices commonly referred to as access terminals.

In one embodiment, UE <NUM> is comprised of a Universal Integrated Circuit Card (UICC) part and a Mobile Equipment (ME) part. The UICC is the user-dependent part of the UE and contains at least one Universal Subscriber Identity Module (USIM) and appropriate application software. The USIM securely stores the permanent subscription identifier and its related key, which are used to identify and authenticate subscribers to access networks. The ME is the user-independent part of the UE and contains terminal equipment (TE) functions and various mobile termination (MT) functions.

Note that, in one example, the permanent subscription identifier is an International Mobile Subscriber Identity (IMSI) of a UE. In one embodiment, the IMSI is a fixed <NUM>-digit length and consists of a <NUM>-digit Mobile Country Code (MCC), a <NUM>-digit Mobile Network Code (MNC), and a <NUM>-digit Mobile Station Identification Number (MSIN). In a <NUM> communication system, an IMSI is referred to as a Subscription Permanent Identifier (SUPI). In the case of an IMSI as a SUPI, the MSIN provides the subscriber identity. Thus, only the MSIN portion of the IMSI typically needs to be encrypted. The MNC and MCC portions of the IMSI provide routing information, used by the serving network to route to the correct home network. When the MSIN of a SUPI is encrypted, it is referred to as Subscription Concealed Identifier (SUCI).

The access point <NUM> is illustratively part of an access network of the communication system <NUM>. Such an access network may comprise, for example, a <NUM> System having a plurality of base stations and one or more associated radio network control functions. The base stations and radio network control functions may be logically separate entities, but in a given embodiment may be implemented in the same physical network element, such as, for example, a base station router or femto cellular access point.

The access point <NUM> in this illustrative embodiment is operatively coupled to mobility management functions <NUM>. In a <NUM> network, the mobility management function is implemented by an Access and Mobility Management Function (AMF). A Security Anchor Function (SEAF) can also be implemented with the AMF connecting a UE with the mobility management function. A mobility management function, as used herein, is the element or function (i.e., entity) in the core network (CN) part of the communication system that manages or otherwise participates in, among other network operations, access and mobility (including authentication/authorization) operations with the UE (through the access point <NUM>). The AMF may also be referred to herein, more generally, as an access and mobility management entity.

The AMF <NUM> in this illustrative embodiment is operatively coupled to home subscriber functions <NUM>, i.e., one or more functions that are resident in the home network of the subscriber. As shown, some of these functions include the Unified Data Management (UDM) function, as well as an Authentication Server Function (AUSF). The AUSF and UDM (separately or collectively) may also be referred to herein, more generally, as an authentication entity. In addition, home subscriber functions may include, but are not limited to, Network Slice Selection Function (NSSF), Network Exposure Function (NEF), Network Repository Function (NRF), Policy Control Function (PCF), and Application Function (AF).

The access point <NUM> is also operatively coupled to a serving gateway function, i.e., Session Management Function (SMF) <NUM>, which is operatively coupled to a User Plane Function (UPF) <NUM>. UPF <NUM> is operatively coupled to a Packet Data Network, e.g., Internet <NUM>. Further typical operations and functions of such network elements are not described here since they are not the focus of the illustrative embodiments and may be found in appropriate 3GPP <NUM> documentation.

It is to be appreciated that this particular arrangement of system elements is an example only, and other types and arrangements of additional or alternative elements can be used to implement a communication system in other embodiments. For example, in other embodiments, the system <NUM> may comprise other elements/functions not expressly shown herein.

Accordingly, the <FIG> arrangement is just one example configuration of a wireless cellular system, and numerous alternative configurations of system elements may be used. For example, although only single elements/functions are shown in the <FIG> embodiment, this is for simplicity and clarity of description only. A given alternative embodiment may of course include larger numbers of such system elements, as well as additional or alternative elements of a type commonly associated with conventional system implementations.

It is also to be noted that while <FIG> illustrates system elements as singular functional blocks, the various subnetworks that make up the <NUM> network are partitioned into so-called network slices. Network slices (network partitions) comprise a series of network function (NF) sets (i.e., function chains) for each corresponding service type using network function virtualization (NFV) on a common physical infrastructure. The network slices are instantiated as needed for a given service, e.g., eMBB service, massive loT service, and mission-critical IoT service. A network slice or function is thus instantiated when an instance of that network slice or function is created. In some embodiments, this involves installing or otherwise running the network slice or function on one or more host devices of the underlying physical infrastructure. UE <NUM> is configured to access one or more of these services via gNB <NUM>.

<FIG> is a block diagram of network elements/functions for providing security management in an illustrative embodiment. System <NUM> is shown comprising a first network element/function <NUM> and a second network element/function <NUM>. It is to be appreciated that the network elements/functions <NUM> and <NUM> represent any network elements/functions that are configured to provide security management and other techniques described herein, for example, but not limited to, AMF, SEAF, UDM, AUSF, NSSF, NEF, NRF, PCF and AF. Further, one or both of the first network element/function <NUM> and the second network element/function <NUM> may be a Security Edge Protection Proxy (SEPP), which will be described in further detail below.

The network element/function <NUM> comprises a processor <NUM> coupled to a memory <NUM> and interface circuitry <NUM>. The processor <NUM> of the network element/function <NUM> includes a security management processing module <NUM> that may be implemented at least in part in the form of software executed by the processor. The processing module <NUM> performs security management described in conjunction with subsequent figures and otherwise herein. The memory <NUM> of the network element/function <NUM> includes a security management storage module <NUM> that stores data generated or otherwise used during security management operations.

The network element/function <NUM> comprises a processor <NUM> coupled to a memory <NUM> and interface circuitry <NUM>. The processor <NUM> of the network element/function <NUM> includes a security management processing module <NUM> that may be implemented at least in part in the form of software executed by the processor <NUM>. The processing module <NUM> performs security management described in conjunction with subsequent figures and otherwise herein. The memory <NUM> of the network element/function <NUM> includes a security management storage module <NUM> that stores data generated or otherwise used during security management operations.

The processors <NUM> and <NUM> of the respective network elements/functions <NUM> and <NUM> may comprise, for example, microprocessors, application-specific integrated circuits (ASICs), field programmable gate arrays (FPGAs), digital signal processors (DSPs) or other types of processing devices or integrated circuits, as well as portions or combinations of such elements. Such integrated circuit devices, as well as portions or combinations thereof, are examples of "circuitry" as that term is used herein. A wide variety of other arrangements of hardware and associated software or firmware may be used in implementing the illustrative embodiments.

The memories <NUM> and <NUM> of the respective network elements/functions <NUM> and <NUM> may be used to store one or more software programs that are executed by the respective processors <NUM> and <NUM> to implement at least a portion of the functionality described herein. For example, security management operations and other functionality as described in conjunction with subsequent figures and otherwise herein may be implemented in a straightforward manner using software code executed by processors <NUM> and <NUM>.

A given one of the memories <NUM> or <NUM> may therefore be viewed as an example of what is more generally referred to herein as a computer program product or still more generally as a processor-readable storage medium that has executable program code embodied therein. Other examples of processor-readable storage media may include disks or other types of magnetic or optical media, in any combination. Illustrative embodiments can include articles of manufacture comprising such computer program products or other processor-readable storage media.

The memory <NUM> or <NUM> may more particularly comprise, for example, an electronic random access memory (RAM) such as static RAM (SRAM), dynamic RAM (DRAM) or other types of volatile or non-volatile electronic memory. The latter may include, for example, non-volatile memories such as flash memory, magnetic RAM (MRAM), phase-change RAM (PC-RAM) or ferroelectric RAM (FRAM). The term "memory" as used herein is intended to be broadly construed, and may additionally or alternatively encompass, for example, a read-only memory (ROM), a disk-based memory, or other type of storage device, as well as portions or combinations of such devices.

The interface circuitries <NUM> and <NUM> of the respective network elements/functions <NUM> and <NUM> illustratively comprise transceivers or other communication hardware or firmware that allows the associated system elements to communicate with one another in the manner described herein.

It is apparent from <FIG> that network element/function <NUM> is configured for communication with network element/function <NUM> and vice-versa via their respective interface circuitries <NUM> and <NUM>. This communication involves network element/function <NUM> sending data to the network element/function <NUM>, and the network element/function <NUM> sending data to the network element/function <NUM>. However, in alternative embodiments, other network elements may be operatively coupled between the network elements/functions <NUM> and <NUM>. The term "data" as used herein is intended to be construed broadly, so as to encompass any type of information that may be sent between network elements/functions (as well as between user equipment and a core network) including, but not limited to, messages, identifiers, keys, indicators, user data, control data, etc..

It is to be appreciated that the particular arrangement of components shown in <FIG> is an example only, and numerous alternative configurations may be used in other embodiments. For example, any given network element/function can be configured to incorporate additional or alternative components and to support other communication protocols.

Other system elements such as UE <NUM> and gNB <NUM> may each also be configured to include components such as a processor, memory and network interface. These elements need not be implemented on separate stand-alone processing platforms, but could instead, for example, represent different functional portions of a single common processing platform.

Given the general concepts described above, illustrative embodiments that address certain security management issues will now be described. More particularly, illustrative embodiments provide security management techniques for <NUM> systems. The architecture for <NUM> systems is currently being standardized in 3GPP. As mentioned above, the 3GPP TS <NUM> defines the <NUM> system architecture as service-based, e.g., Service-Based Architecture (SBA).

<FIG> depicts a <NUM> architecture in a configuration comprising a visiting public land mobile network (VPLMN) <NUM> operatively coupled to a home public land mobile network (HPLMN) <NUM>. More particularly, <FIG> illustrates the presence of a Security Edge Protection Proxy (SEPP) at the edge of each PLM network, i.e., vSEPP <NUM> in VPLMN <NUM> and hSEPP <NUM> in HPLMN <NUM>. It is to be appreciated that the various network functions shown in the VPLMN <NUM> and the HPLMN <NUM> are known and described in detail in various <NUM> specifications such as, but not limited to, the above-referenced TS <NUM> and TS <NUM>.

Thus, the SEPP is the entity that resides at the perimeter of the network and performs Application Layer Security (ALS) on information elements (IE) in HyperText Transport Protocol (HTTP) messages before the messages are sent externally over a roaming interface (e.g., N32). ALS is performed individually on each IE in the HTTP Request message using a standardized JavaScript Object Signing and Encryption (JOSE) framework.

However, each IE may require different security protection, for example, only some of the IEs in the message need encryption, some will need integrity-protection, etc. Therefore, it is realized herein that since IE may require different security protection, it is important for the SEPP to know how to treat each IE in the message received from the network function.

Identification of the IE and the required security mechanism to be applied on the IE is therefore a prerequisite step for the SEPP before it can apply security at the application layer.

As mentioned above, in <NUM>, SBA is introduced to model services as network functions (NFs) that communicate with each other using Restful APIs. In the scenario where the two communicating NFs are in two different PLMNs (e.g., VPLMN <NUM> and HPLMN <NUM>), communication happens over the roaming interface between the two participating PLMNs.

To protect NF specific content in the messages that are sent over the roaming interface, <NUM> introduces SEPP as the entity residing at the perimeter of the PLMN network and acting as a gateway that protects all incoming and outgoing HTTP traffic over the N32 roaming interface. The SEPP implements application layer traffic for all the data exchanged between two NFs at the service layer.

The application layer traffic comprises all the IEs in the HTTP message payload and sensitive information in the HTTP message header. Not all the IEs get the same security treatment in SEPP. Some IEs require e2e encryption, some only require e2e integrity protection, while some IEs require e2e integrity protection but allows an intermediate IPX provider to manipulate these IEs. For example, some of the IEs include a permanent subscription identity (SUPI) of the UE or encrypted SUPI (SUCI), an IP address of the UE, an IP address of the NFs or their identifiers within a PLMN, Authentication Vectors (AVs) for the UE, subscription parameters of the UE, network slice subscription/eligibility parameters, location information of the UE, charging information or call data records, etc. Some of these IEs would need e2e encryption, while some need e2e integrity protection, and some others need both integrity and encryption.

As defined 3GPP SA2, TS <NUM> clause <NUM>. <NUM>, SEPP is a non-transparent proxy and supports the following functionality: (i) message filtering and policing on inter-PLMN control plane interfaces; and (ii) topology hiding.

SEPP behaves as a 'non-transparent' active proxy in that the NFs are aware of SEPP and send all inter-PLMN control plane traffic to SEPP. The connection between the NF and its local SEPP may be secured with transport layer security (TLS).

In the outgoing direction, i.e., from an NF (e.g., AMF in <FIG>) within its PLMN (<NUM>) to the another PLMN (<NUM>):.

In the incoming direction, i.e., from the other PLMN to the NF within its PLMN:.

How to achieve this topology hiding, identity hiding from the Internetwork Packet Exchange (IPX) interconnect nodes between the two PLMNs (note that an IPX network can reside between VPLMN <NUM> and HPLMN <NUM>, although not expressly shown in <FIG>), and security for NF inter-PLMN control plane traffic is currently being considered.

Illustrative embodiments provide techniques for securing NF inter-PLMN control plane messaging, i.e., securing HTTP contents at the application layer.

In the scenario where the two communicating NFs are in two different PLMNs, e.g., <FIG>, communication happens over the roaming interface (N32) between the two participating PLMNs. Hence, when NF content is exchanged between two NFs, if the two NFs belongs to different PLMNs, SEPP must apply protection mechanisms to the sensitive contents.

In <FIG>, an N32 reference point exists between two SEPPs, i.e., between vSEPP <NUM> and hSEPP <NUM>. It is assumed that all network function traffic on this reference point must be protected with e2e encryption between the two communicating NFs.

In illustrative embodiments, SEPP performs application layer security by protecting the contents of the HTTP message payload along specific HTTP headers and parts of the HTTP Request including the Request-URI field.

It is realized herein that for an application layer security solution to be implemented in SEPP, there are the following broad areas that need to be addressed:.

Illustrative embodiments described below will address each of these challenges.

For 3GPP to meet Global System for Mobile Communications Association (GSMA) DESS Working Group recommendations on IPX network e2e security, SEPP needs to apply security on each IEs separately. This helps in satisfying the following:.

This requires SEPP to be aware of each IE in the HTTP message and how it needs to be protected.

Illustrative embodiments provide multiple ways this issue can be solved:.

To allow for the trusted intermediary IPX nodes to see and possibly modify specific IEs in the HTTP message while completely protecting all sensitive information end to end between SEPPs, SEPP must implement application layer security in such a way that:.

The HTTP message is expected to have multipart content that includes JSON IEs and binary blobs for specific type of data. In illustrative embodiments, the protection scheme in SEPP handles both types of content. For example, one or more illustrative embodiments map all content types in HTTP message into the JSON content type and apply the JOSE protection scheme on each JSON IE. This avoids the need to have different protection schemes for each content types.

In addition to the HTTP message contents, the Request-URI part of the HTTP Request line requires protection when it contains sensitive information such as the SUPI. Illustrative embodiments provide such protection.

Furthermore, certain HTTP header fields require protection when they are present. For example, Authorization header carries an OAuth bearer token. Illustrative embodiments confidentiality protect token this in SEPP.

In summary, SEPP according to illustrative embodiments considers all parts of the HTTP message and applies protection as required. This is generally illustrated as process <NUM> in <FIG>.

Illustrative embodiments provide for two SEPPs in the two roaming networks to negotiate the cipher suite that will be used to protect HTTP messages in each SEPP.

Negotiation is carried out as part of the initialization sequence when the two SEPPs initially authenticate each other. Once authentication is complete, each SEPP shares its available cipher suites with the other SEPP. Eventually both agree on a cipher suite to use for confidentiality and integrity protection in SEPP.

Illustrative embodiments also provide a mechanism for a SEPP to trigger renegotiation of the cipher suite with the peer SEPP if so desired.

This negotiation (including initial negotiation and renegotiation) is generally illustrated as process <NUM> in <FIG>.

In illustrative embodiments, both SEPPs are configured to agree on which keys to use and how these keys get established in them. This can occur in several ways:.

Key management functionalities in each SEPP are generally illustrated as process <NUM> in <FIG>.

Claim 1:
A method comprising:
configuring at least one of a first and a second security edge protection proxy elements (<NUM>, <NUM>), wherein the first security edge protection proxy element (<NUM>) of a first network (<NUM>) is operatively coupled to the second security edge protection proxy element (<NUM>) of a second network (<NUM>), to apply application layer security to one or more information elements in a received message from a network function before sending the received message to the other one of the first and second security edge protection proxy elements (<NUM>, <NUM>);
wherein the configuring comprises configuring the one of the first and second security edge protection proxy elements (<NUM>, <NUM>) to apply different types of application layer security to different ones of the one or more information elements in the received message,
characterised in that the applying different types of application layer security to different ones of the one or more information elements in the received message comprises:
applying at least one of end-to-end encryption and a first type of end-to-end integrity protection to information elements of a first type; and
applying a second type of end-to-end integrity protection to information elements of a second type, the second type of end-to-end integrity protection permitting verifiable modification of the information elements of the second type by one or more authorized nodes in the first network and/or second network.