Embodiments presented herein relate to a method, a communication device, a computer program, and a computer program product for establishing network connection for a communication device. Embodiments presented herein further relate to a method, an eSIM server, a computer program, and a computer program product for assisting in establishing network connection for a communication device.
The GSM Association (GSMA; where GSM is short for Global System for Mobile Communications) has specified techniques to provide subscribers with 3rd Generation Partnership Project (3GPP) subscription profiles, so called Subscriber Identity Module (SIM) profiles, which can be remotely downloaded over the Internet to physical hardware in a cellular communication device, known as embedded universal integrated circuit card (eUICC), replacing current physical SIM cards. The technique is referred to as eSIM. Two variants of are specified; one for Internet-of-Things (IoT) and machine-to-machine (M2M) communication devices (GSMA SGP.02 Remote Provisioning Architecture for Embedded UICC, Technical Specification. Version 4.2) and one for consumer communication devices (GSMA SGP.22 RSP Technical Specification. Version 2.4). The latter is also currently being considered for use with IoT communication devices due to the complexity of the M2M eSIM variant. In order for the communication device to remotely download a new subscription, it needs connectivity to communicate with a remote provisioning server. This connectivity may either be cellular connectivity or non-cellular connectivity using an additional radio. For low-cost constrained IoT communication devices, the introduction of an additional radio, which may be used only once to download a first profile, adds both extra hardware and complexity to the communication device, in addition to adding cost. The use of cellular connectivity currently implies that a SIM profile must already be present in the communication device. In particular, to gain initial connectivity when the communication device starts up for the first time, a suitable SIM profile that is usable where the communication device is geographically located needs to be installed into the communication device at manufacturing. Such a profile is commonly referred to as a bootstrap profile or a provisioning profile. It is often not known at which geographical location a particular communication device will be deployed when the eUICC or the communication device is manufactured. For this reason, a provisioning profile of a mobile network operator (MNO) with global roaming agreements is needed.
One way to address this issue is to use a special bootstrap profile that allows a suitable international mobile subscriber identity (IMSI) and associated credentials to be selected and used during the download of the operational profile. However, this might require changes to the eUICC and/or the provisioning server.
The network access authentication in some communication networks leverages the Extensible Authentication Protocol (EAP) framework that allows different EAP-based authentication methods to be used. Currently, for public (cellular) networks the EAP Authentication and Key Agreement prime (EAP-AKA′) method is the only allowed method for the so-called primary authentication required to get initial connectivity, but for non-public (cellular) networks also other EAP methods can be used, such as EAP Transport Layer Security (EAP-TLS). EAP-TLS and other EAP methods that leverages Subscription Manager Data Preparation plus (SM-DP+) credentials and eUICC credentials on an eUICC supporting the eSIM consumer variant requires changes to the provisioning server and/or the eUICC and prevents the use of standard provisioning servers and eUICCs.
An object of embodiments herein is to address the above issues.
In some aspects, the above issues are addressed by embodiments where a fifth generation telecommunication network (5G) Subscription Concealed Identifier (SUCI) and EAP framework is leveraged to tunnel the consumer eSIM common mutual authentication between the subscription manager and the eUICC, eSIM credentials provided in a communication device can be leveraged during network access authentication such that network connectivity can be obtained for the communication device. This is achieved without making any changes to existing subscription manager and eUICC interfaces. The embodiments also allow continued profile download, leveraging an already established session with the subscription manager. This enables further common mutual authentication to be avoided.
According to a first aspect there is presented a method for establishing network connectivity for a communication device. The method is performed by the communication device. The communication device comprises an identity module supporting remote subscription profile download. The method comprises providing a SUCI, encrypted data comprising a device challenge, a public key of an ephemeral key pair of the communication device, and an identity module challenge towards an eSIM server. The encrypted data is based on an eSIM server public key and the ephemeral key pair of the communication device. The method comprises obtaining a public key of an ephemeral key pair of the eSIM server, a subscription manager (SM) challenge, an SM signature, and authentication data from the eSIM server in an EAP request. The SM challenge and the SM signature are extracted from the authentication data. The SM signature has been computed on data comprises the identity module challenge. The method comprises verifying the authentication data to obtain proof of the eSIM server knowledge of the device challenge. The verification of the received authentication data is performed using the public key of the ephemeral key pair of the eSIM server and the device challenge. The SM signature is verified using the identity module and the identity module challenge as locally stored, and where an identity module signature computed on data comprises the received SM challenge is returned from the identity module upon successful verification. The method comprises providing an EAP response towards the eSIM server. The EAP response comprises the identity module signature. The method comprises establishing network connectivity upon having obtained an EAP success message indicating successful authentication of the communication device.
According to a second aspect there is presented a communication device for establishing network connection for the communication device. The communication device comprises an identity module supporting remote subscription profile download. The communication device comprises processing circuitry. The processing circuitry is configured to cause the communication device to provide a SUCI, encrypted data comprising a device challenge, a public key of an ephemeral key pair of the communication device, and an identity module challenge towards an eSIM server. The encrypted data is based on an eSIM server public key and the ephemeral key pair of the communication device. The processing circuitry is configured to cause the communication device to obtain a public key of an ephemeral key pair of the eSIM server, an SM challenge, an SM signature, and authentication data from the eSIM server in an EAP request. The SM challenge and the SM signature are extracted from the authentication data. The SM signature has been computed on data comprises the identity module challenge. The processing circuitry is configured to cause the communication device to verify the authentication data to obtain proof of the eSIM server knowledge of the device challenge. The verification of the received authentication data is performed using the public key of the ephemeral key pair of the eSIM server and the device challenge. The SM signature is verified using the identity module and the identity module challenge as locally stored, and where an identity module signature computed on data comprises the received SM challenge is returned from the identity module upon successful verification. The processing circuitry is configured to cause the communication device to provide an EAP response towards the eSIM server. The EAP response comprises the identity module signature. The processing circuitry is configured to cause the communication device to establish network connectivity upon having obtained an EAP success message indicating successful authentication of the communication device.
According to a third aspect there is presented a communication device for establishing network connection for the communication device. The communication device comprises an identity module supporting remote subscription profile download. The communication device comprises a provide module configured to provide a SUCI, encrypted data comprising a device challenge, a public key of an ephemeral key pair of the communication device, and an identity module challenge towards an eSIM server. The encrypted data is based on an eSIM server public key and the ephemeral key pair of the communication device. The communication device comprises an obtain module configured to obtain a public key of an ephemeral key pair of the eSIM server, an SM challenge, an SM signature, and authentication data from the eSIM server in an EAP request. The SM challenge and the SM signature are extracted from the authentication data. The SM signature has been computed on data comprises the identity module challenge. The communication device comprises a verify module configured to verify the authentication data to obtain proof of the eSIM server knowledge of the device challenge. The verification of the received authentication data is performed using the public key of the ephemeral key pair of the eSIM server and the device challenge. The SM signature is verified using the identity module and the identity module challenge as locally stored, and where an identity module signature computed on data comprises the received SM challenge is returned from the identity module upon successful verification. The communication device comprises a provide module configured to provide an EAP response towards the eSIM server. The EAP response comprises the identity module signature. The communication device comprises an establish module configured to establish network connectivity upon having obtained an EAP success message indicating successful authentication of the communication device.
According to a fourth aspect there is presented a computer program for establishing network connection for a communication device, the computer program comprising computer program code which, when run on processing circuitry of a communication device, causes the communication device to perform a method according to the first aspect.
According to a fifth aspect there is presented a method for assisting in establishing network connectivity for a communication device. The method is performed by an eSIM server. The method comprises obtaining a SUCI, encrypted data comprising a device challenge, a public key of an ephemeral key pair of the communication device, and an identity module challenge from the communication device, wherein the encrypted data is based on an eSIM server public key and the ephemeral key pair of the communication device. The method comprises providing the identity module challenge to a provisioning server over a secure communication channel established between the eSIM server and the provisioning server, and receiving an SM challenge and an SM signature computed by the provisioning server on data comprises the identity module challenge in return from the provisioning server. The method comprises generating authentication data using an ephemeral key pair of the eSIM server. The authentication data provides proof of the eSIM server knowledge of the device challenge. The authentication data comprises the SM challenge and the SM signature. The method comprises providing an EAP request towards the communication device. The EAP request comprises a public key of the ephemeral key pair of the eSIM server and the authentication data. The method comprises obtaining an EAP response from the communication device in an authentication request. The EAP response comprises an identity module signature. The method comprises obtaining an indication of successful authentication of the communication device. Successful authentication of the communication device comprises successful verification of the identity module signature. The method comprises providing, upon having obtained the indication of successful authentication of the communication device, a response to the authentication request towards the communication device comprises an EAP success message indicating successful authentication of the communication device for network connectivity to be established with the communication device.
According to a sixth aspect there is presented an eSIM server for assisting in establishing network connection for a communication device. The eSIM server comprises processing circuitry. The processing circuitry is configured to cause the eSIM server to obtain a SUCI, encrypted data comprising a device challenge, a public key of an ephemeral key pair of the communication device, and an identity module challenge from the communication device, wherein the encrypted data is based on an eSIM server public key and the ephemeral key pair of the communication device. The processing circuitry is configured to cause the eSIM server to provide the identity module challenge to a provisioning server over a secure communication channel established between the eSIM server and the provisioning server, and to receive an SM challenge and an SM signature computed by the provisioning server on data comprises the identity module challenge in return from the provisioning server. The processing circuitry is configured to cause the eSIM server to generate authentication data using an ephemeral key pair of the eSIM server. The authentication data provides proof of the eSIM server knowledge of the device challenge. The authentication data comprises the SM challenge and the SM signature. The processing circuitry is configured to cause the eSIM server to provide an EAP request towards the communication device. The EAP request comprises a public key of the ephemeral key pair of the eSIM server and the authentication data. The processing circuitry is configured to cause the eSIM server to obtain an EAP response from the communication device in an authentication request. The EAP response comprises an identity module signature. The processing circuitry is configured to cause the eSIM server to obtain an indication of successful authentication of the communication device. Successful authentication of the communication device comprises successful verification of the identity module signature. The processing circuitry is configured to cause the eSIM server to provide, upon having obtained the indication of successful authentication of the communication device, a response to the authentication request towards the communication device comprises an EAP success message indicating successful authentication of the communication device for network connectivity to be established with the communication device.
According to a seventh aspect there is presented an eSIM server for assisting in establishing network connection for a communication device. The eSIM server comprises an obtain module configured to obtain a SUCI, encrypted data comprising a device challenge, a public key of an ephemeral key pair of the communication device, and an identity module challenge from the communication device, wherein the encrypted data is based on an eSIM server public key and the ephemeral key pair of the communication device. The eSIM server comprises a provide module configured to provide the identity module challenge to a provisioning server over a secure communication channel established between the eSIM server and the SM, and receiving an SM challenge and an SM signature computed by the provisioning server on data comprises the identity module challenge in return from the provisioning server. The eSIM server comprises a generate module configured to generate authentication data using an ephemeral key pair of the eSIM server. The authentication data provides proof of the eSIM server knowledge of the device challenge. The authentication data comprises the SM challenge and the SM signature. The eSIM server comprises a provide module configured to provide an EAP request towards the communication device. The EAP request comprises a public key of the ephemeral key pair of the eSIM server and the authentication data. The eSIM server comprises an obtain module configured to obtain an EAP response from the communication device in an authentication request. The EAP response comprises an identity module signature. The eSIM server comprises an obtain module configured to obtain an indication of successful authentication of the communication device. Successful authentication of the communication device comprises successful verification of the identity module signature. The eSIM server comprises a provide module configured to provide, upon having obtained the indication of successful authentication of the communication device, a response to the authentication request towards the communication device comprises an EAP success message indicating successful authentication of the communication device for network connectivity to be established with the communication device.
According to an eighth aspect there is presented a computer program for assisting in establishing network connection for a communication device, the computer program comprising computer program code which, when run on processing circuitry of an eSIM server, causes the eSIM server to perform a method according to the fifth aspect.
According to a ninth aspect there is presented a computer program product comprising a computer program according to at least one of the fourth aspect and the eighth aspect and a computer readable storage medium on which the computer program is stored. The computer readable storage medium could be a non-transitory computer readable storage medium.
Advantageously, these aspects enable network connection to be established for a communication device being without an operational profile in an efficient manner.
Advantageously, these aspects do not require each communication device to have a regular subscription profile with an IMSI to connect to an initial 3GPP network. In turn, this reduces the number of regular subscription profiles with an IMSI that need to be used.
Advantageously, these aspects enable an eSIM server to be set up for communication devices that can gain initial connectivity to public or non-public networks by performing network access authentication where eSIM credentials are leveraged. This can be achieved without requiring any changes in the provisioning sever or the eUICC.
Advantageously, the eSIM server can be combined with an eSIM provisioning service in an efficient way by re-using the common mutual authentication procedure between the provisioning server and the eUICC both for network access authentication and profile download. In turn, this saves the number of bits needed to be sent by the communication device. In turn, this can reduce the energy requirements of the communication device, thus prolonging the lifetime of the communication device.
Other objectives, features and advantages of the enclosed embodiments will be apparent from the following detailed disclosure, from the attached dependent claims as well as from the drawings.
Generally, all terms used in the claims are to be interpreted according to their ordinary meaning in the technical field, unless explicitly defined otherwise herein. All references to “a/an/the element, apparatus, component, means, module, step, etc.” are to be interpreted openly as referring to at least one instance of the element, apparatus, component, means, module, step, etc., unless explicitly stated otherwise. The steps of any method disclosed herein do not have to be performed in the exact order disclosed, unless explicitly stated.
The inventive concept is now described, by way of example, with reference to the accompanying drawings, in which:
The inventive concept will now be described more fully hereinafter with reference to the accompanying drawings, in which certain embodiments of the inventive concept are shown. This inventive concept may, however, be embodied in many different forms and should not be construed as limited to the embodiments set forth herein; rather, these embodiments are provided by way of example so that this disclosure will be thorough and complete, and will fully convey the scope of the inventive concept to those skilled in the art. Like numbers refer to like elements throughout the description. Any step or feature illustrated by dashed lines should be regarded as optional.
A communication device 200 comprises an identity module, such as an eUICC, supporting remote SIM provisioning, for example according to the GSMA eSIM consumer variant. The identity module comprises credentials (such as eUICC credentials) for secure profile download from a subscription manager 400. The credentials comprise an elliptic curve (EC) private key and an eUICC certificate comprising the corresponding public key. The eUICC certificate also comprises the identity module identifier, such as an eUICC identifier (EID).
The communication device 200 comprises a cellular modem, or just modem for short. Commonly, the communication device 200 connects to a public mobile network, and/or a private network, based on an active operational SIM profile. The modem is configured to check if such an active profile is present. If a profile is not present, e.g. for the first start-up of the communication device 200, the modem performs the network access authentication for (initial) connectivity with the help of the identity module and the eSIM consumer common mutual authentication procedure. Connectivity is established using a first mobile network (MNO1) 500a. Using the eSIM remote SIM download mechanism the identity module may then be provisioned with an operational SIM profile from the second mobile network MNO2 500b. MNO1 and MNO2 may be one and the same network. After this profile has been activated, it is used to provide network connectivity for the communication device 200. The connectivity is sometimes referred to as initial connectivity, even though it may not only be used to connect the first time.
The communication device 200 may be a consumer device with a user interface (UI). This user interface might be used to trigger initial connectivity and to trigger download of the operational profile. For example, an Activation Code (AC) obtained from the second mobile network (MNO2) when ordering the subscription may be used and where the AC is in the form of a Quick Response (QR) code that is scanned by the communication device 200 to obtain details needed for the profile download. Examples of such details are Matching ID, subscription manager address. The AC may also include data needed for using the eSIM bootstrap connectivity service to obtain initial connectivity or such information is obtained separately using the UI, for example, scanning another QR code.
The communication device 200 device may be an IoT device with limited UI or no UI at all and where profile download and profile management is remotely managed. Such a communication device 200 may be pre-configured from manufacturing by a manufacturer 800 (such as an eUICC Manufacturer (EUM) or an original equipment manufacturer (OEM)) with data needed for using the eSIM bootstrap connectivity service to obtain initial connectivity. The communication device 200 may also be configured with eSIM service information such that it can with help from the eSIM service download a suitable operational profile.
An eSIM server 300 represent an eSIM bootstrap connectivity service provider and provides an eSIM bootstrap connectivity service. Such a service might be provided to enterprises, IoT service providers, device owners, and end-users by the eSIM bootstrap connectivity service provider. The eSIM server 300 may or may not be part of a full eSIM service 600. The eSIM bootstrap connectivity service provider, and thus the eSIM server 300, is acting as the home operator for the communication devices 200 using the eSIM bootstrap connectivity service. The eSIM bootstrap connectivity service provider is either an MNO, a Mobile Virtual Network Operator (MVNO) or it has an agreement with an MNO (shown as MNO3 500c in the figures) that forwards network access authentication for the communication devices 200 to the eSIM server 300. In the first and second case, if SUPI is IMSI-based, the eSIM bootstrap connectivity service provider owns a Mobile Country Code and Mobile Network Code (MCC+MNC) combination and in the latter case the MCC+MNC of MNO3 is used.
An MNO is also known as a (Communications) Service Provider. (C)SP), and provides cellular connectivity for a communication device 200 and potentially also eSIM services for remote profile download. The eSIM bootstrap connectivity service provider, in case of being an MNO or MVNO, has roaming agreements with a set of MNOs (indicated as MNO1 in the figures) that assist in providing initial connectivity for the communication device 200 using the eSIM bootstrap connectivity service.
Enterprises. IoT service providers, device owners or end-users 700 that are using the eSIM bootstrap connectivity service orders profile(s) for their communication devices 200 from an MNO (shown as MNO2 in the figures), or when ordering profiles from an MNO the enterprises. IoT service providers. device owners or end-users are directed to use a particular eSIM bootstrap connectivity service for initial connectivity. This MNO interacts with the subscription manager 400, possibly with help from the eSIM server 300, for the preparation of operational profiles for remote download. Upon successful download and activation of the of an operational profile into a communication device 200, the MNO provides cellular connectivity for the communication device 200.
The subscription manager 400, e.g., an SM-DP+ or a Subscription Manager Discovery Server, handles profile download to communication devices 200 according to GSMA eSIM standards. The subscription manager 400 is either operated by the MNO providing the operational profile to be downloaded (MNO2 in the figures) or a third party trusted by the MNO.
As part of providing initial connectivity it is, in case where communication devices 200 are distributed globally over the world, necessary to determine the proper local MNO to provide the operational profile for a particular communication device 200 that is delivered to a particular geographical region. The process of determining the proper profile is referred to as the localization process. For example, based on geographical location of the communication device 200, knowledge of pre-negotiated agreements with MNOs, device information, etc., the proper MNO, provisioning server, and profile to be used are determined. Such localization may be offered as a service to enterprises/IoT service providers by an eSIM service provider.
There may be different ways in how the eSIM service is offered and how it is connected to the eSIM bootstrap connectivity service. In a first option the eSIM service is managing connectivity for a set of MNOs and handles the interaction with provisioning servers on behalf of the MNOs (the subscription manager 400 may even be offered by the eSIM service provider) and also updates/controls the HSS (or similar) of the MNO. In a second option the eSIM service is performing the localization based on input data and the enterprise itself is handling interaction with MNOs. Other options are also possible. The eSIM server 300 may either be closely connected to the eSIM service (or part of it), e.g. in the first option, or it may have no relation and only use a localization Application Programming Interface (API) to trigger localization. Such interaction may also be via the enterprise.
The embodiments disclosed herein relate to mechanisms for establishing network connection for a communication device 200 and assisting in establishing network connection for a communication device 200. In order to obtain such mechanisms there is provided a communication device 200, methods performed by the communication device 200, a computer program product comprising code, for example in the form of a computer program, that when run on processing circuitry of the communication device 200, causes the communication device 200 to perform the methods. In order to obtain such mechanisms there is further provided an eSIM server 300, methods performed by the eSIM server 300, and a computer program product comprising code, for example in the form of a computer program, that when run on processing circuitry of the eSIM server 300, causes the eSIM server 300 to perform the methods.
Some embodiments are presented in the context of communication device 200 comprising an identity module supporting the eSIM consumer variant. Some embodiments make use of the 5G EAP framework for authentication and 5G SUCI, and is leveraging eSIM credentials, both in the identity module and the subscription manager 400, for the authentication. Some embodiments allow an eSIM bootstrap connectivity service provider (e.g. a home operator, or eSIM service provider assisting MNOs and providing eSIM services to enterprises) to authenticate such a communication device 200 and the communication device 200 to authenticate the eSIM bootstrap connectivity service provider, without requiring any changes to the identity module or to the subscription manager 400. Some embodiments re-use the common mutual authentication of the eSIM consumer variant in the network access authentication. The common mutual authentication exchange of messages between the subscription manager 400 and the identity module is here tunneled within the 5G network control signaling, resulting in a new EAP method. In some embodiments, data exchanged in the methods is optimized such that the essential data can be exchanged using EAP-AKA′ messages. This requires some data to be pre-configured at the eSIM bootstrap connectivity service (i.e. MNO/eSIM service provider). In some embodiments, the common mutual authentication of the eSIM consumer variant is performed only once and leveraged both for the network access authentication for initial connectivity and for downloading a profile from the subscription manager 400, which saves the number of bits needed to be sent by the communication device 200. In this case the eSIM server 300 is remotely assisting in the profile download.
Reference is now made to
Embodiments relating to further details of establishing network connection for a communication device 200 as performed by the communication device 200 will now be disclosed.
In some embodiments, the identity module challenge, the SM challenge, the SM signature, and the identity module signature follows a format used for handling remote subscription profile download to the identity module. In some embodiments, the SUCI comprises the encrypted data, a Message Authentication Code (MAC) over data comprising the device challenge, and the public key of the ephemeral key pair of the communication device 200. The MAC is based on an eSIM server public key and the ephemeral key pair of the communication device 200. In some embodiments, the device challenge provided in the encrypted data is the identity module challenge. In some embodiments, the encrypted data further is based on a device identifier of the communication device 200. In some examples, the device identifier is provided in an encrypted part of the SUCI.
In some embodiments, at least one of the encrypted data, the public key of the ephemeral key pair of the communication device 200, the identity module challenge and a device identifier of the communication device 200 is provided separately from the SUCI, and the communication device 200 is configured to perform (optional) step S104:
The identity module challenge and/or the device identifier might be provided in encrypted data. In some examples, the at least one of the encrypted data, the public key of the ephemeral key pair of the communication device 200, the identity module challenge and the device identifier provided in response to the request from the eSIM server 300 is provided towards the eSIM server 300 formatted as a SUCI. The identity module identifier (such as the eUICC Identifier; EID), might be used as device identifier of the communication device 200. The ephemeral key pair of the communication device 200 might be generated by the communication device 200. The identity module might comprise credentials for remote subscription profile download. The identity module might be an eUICC. The credentials might be used for generating the identity module signature. The eSIM server public key might be stored by the communication device 200.
In some embodiments, the authentication data comprises aMAC. The verifying then comprises calculating a MAC using the public key of the ephemeral key pair of the eSIM server 300, and the device challenge, and comparing the calculated MAC to the MAC received in the authentication data. In this respect, either the MAC is computed on the public key of the ephemeral key pair of the eSIM server 300 using the device challenge as key, or the MAC is computed on the device challenge using a MAC key, and where the MAC key is derived from an Elliptic Curve Diffie-Hellman (ECDH) shared secret derived using the ephemeral key pair of the eSIM server 300 and the ephemeral key pair of the communication device 200. In the latter case, the ECDH shared key is derived at the eSIM server 300 using the private key of the ephemeral key pair of the eSIM server 300 and the public key of the ephemeral key pair of the communication device 200, and at the communication device 200 using the private key of the ephemeral key pair of the communication device 200 and the public key of the ephemeral key pair of the eSIM server 300. In general terms, verification of a received MAC involves computing the MAC and comparing it to the received MAC. When the communication device 200 is calculating the MAC the public key of the ephemeral key pair of the eSIM server 300 is used. Successful verification of the received MAC ensures that the received public key of the ephemeral key pair of the eSIM server 300 is not tampered with.
In some embodiments, the authentication data comprises the device challenge encrypted using an encryption key derived using the public key of the ephemeral key pair of the eSIM server 300 and the private key of the ephemeral key pair of the communication device 200. In particular, the encryption key is derived from an ECDH shared secret derived using the ephemeral key pair of the eSIM server 300 and the ephemeral key pair of the communication device 200. The ECDH shared key is derived at the eSIM server 300 using the private key of the ephemeral key pair of the eSIM server 300 and the public key of the ephemeral key pair of the communication device 200, and at the communication device 200 using the private key of the ephemeral key pair of the communication device 200 and the public key of the ephemeral key pair of the eSIM server 300. The verifying of the authentication data then comprises decrypting the device challenge and comparing it to the device challenge as locally stored. Successful comparison of the decrypted device challenge to the locally stored device challenge ensures that the received public key of the ephemeral key pair of the eSIM server 300 is not tampered with.
In some embodiments, the SM challenge and/or the SM signature in the authentication data are encrypted using an encryption key. The verifying then comprises deriving the encryption key using the public key of the ephemeral key pair of the eSIM server 300 and the private key of the ephemeral key pair of the communication device 200, wherein the derivation of the encryption key is according to the above description, and decrypting, using the derived encryption key, the encrypted SM challenge and/or SM signature prior to verifying the SM signature. In particular, in case the device challenge is the identity module challenge, successful verification of the SM signature, using the identity module challenge as locally stored, provides proof of the eSIM server 300 knowledge of the device challenge and ensures that the received public key of the ephemeral key pair of the eSIM server 300 is not tampered with.
In some aspects, common mutual authentication between the subscription manager 400 and the communication device 200 is performed once and serves the purpose of both network access authentication for initial connectivity and mutual authentication for profile download. Particularly, in some embodiments, the communication device 200 is configured to perform (optional) step S116:
Reference is now made to
Embodiments relating to further details of assisting in establishing network connection for a communication device 200 as performed by the eSIM server 300 will now be disclosed.
In some embodiments, the identity module challenge, the SM challenge, the SM signature, and the identity module signature, follows a format used for handling remote subscription profile download to the identity module.
In some embodiments, the SUCI comprises the encrypted data, a MAC over data comprising the device challenge, and the public key of the ephemeral key pair of the communication device 200. The MAC is based on an eSIM server public key and the ephemeral key pair of the communication device 200.
The device challenge might be received from the communication device 200 in the encrypted data is the identity module challenge.
The encrypted data might further be based on a device identifier of the communication device 200. In some examples, the device identifier is provided in the encrypted part of the SUCI.
In some embodiments, the eSIM server 300 is configured to perform (optional) step S206a as part of step S206:
In some embodiments, at least one of the encrypted data, the public key of the ephemeral key pair of the communication device 200, the identity module challenge and a device identifier of the communication device 200 is obtained separately from the SUCI, and the eSIM server 300 is configured to perform (optional) step S204 before step S206:
In some embodiments, the identity module challenge and/or device identifier is obtained in encrypted data, and the eSIM server 300 is configured to perform (optional) step S206b as part of step S206:
The ephemeral key pair of the eSIM server 300 might be generated by the eSIM server 300. The eSIM server private key might be stored by the eSIM server 300.
In some embodiments, the indication of successful authentication is obtained by the eSIM server 300 itself verifying the identity module signature. In some embodiments, the indication of successful authentication is obtained by the eSIM server 300 sending the identity module signature to the subscription manager 400 for verification and in return receiving a result of successful authentication from the subscription manager 400.
In some embodiments, the authentication data comprises a Message Authentication Code (MAC) calculated using the ephemeral key pair of the eSIM server 300 and the device challenge. In this respect. either the MAC is computed on the public key of the ephemeral key pair of the eSIM server 300 using the device challenge as key, or the MAC is computed on the device challenge using a MAC key, and where the MAC key is derived from an ECDH shared secret derived using the private key of the ephemeral key pair of the eSIM server 300 and the public key of the ephemeral key pair of the communication device 200.
In some embodiments, the authentication data comprises a device challenge encrypted using an encryption key derived using the private key of the ephemeral key pair of the eSIM server 300 and the public key of the ephemeral key pair of the communication device 200.
In some embodiments, the SM challenge and/or the SM signature in the authentication data are encrypted using an encryption key derived using the private key of the ephemeral key pair of the eSIM server 300 and the public key of the ephemeral key pair of the communication device 200.
As disclosed above, in some aspects, common mutual authentication between the subscription manager 400 and the communication device 200 is performed once and serves the purpose of both network access authentication for initial connectivity and mutual authentication for profile download. Particularly, in some embodiments, the eSIM server 300 is configured to perform (optional) step S220:
An embodiment for initiating 5G network access authentication based on at least some of the above disclosed embodiments will now be disclosed in detail with reference to the signalling diagram of
In 5G networks, in order to protect subscriber privacy, the Subscription Permanent Identifier (SUPI), such as IMSI, is encrypted, and called SUCI, when delivered from the communication device 200 to the home network represented in
The AUSF of the eSIM server 300 is now ready to perform the network access authentication which is detailed in
An embodiment for 5G network access authentication using EAP framework and eSIM credentials based on at least some of the above disclosed embodiments will now be disclosed in detail with reference to the signalling diagram of
In the above flow a temporary SUPI (e.g. IMSI) is delivered to the communication device 200 (obtained in step S318) and the serving network (obtained in step S326) for use until the operational profile is downloaded. This SUPI is one from a range of SUPIs that the eSIM server 300 uses (e.g. licenses from MNO3) for temporary SUPIs for the communication devices 200 using the eSIM server 300. The SUPIs belonging to this range are under the control of the eSIM server 300 and are frequently reused as soon as an operational profile download has occurred. The temporary SUPIs may, for example, be recycled after a certain period of time within which the communication device 200 is expected to have downloaded a profile. Alternatively, the eSIM server 300 may be notified by the MNO, or the communication device 200 itself when the operational profile download has occurred. The same SUPI can potentially be used with different serving networks simultaneously and still avoid collisions since the communication device 200 will typically never present this SUPI.
The methods in
In
The eSIM server 300 authenticates the communication device 200 with help of the eUICC of the communication device 200. By verifying the eUICC signature being part of the AuthenticateServerResponse the eSIM server 300 ensures the eUCC of the communication device 200 is legitimate and it can also check that the EID of the eUICC is part of the list of EIDs that is using the service. The verification of the eUICC signature can either be made by the eSIM server 300 itself or the subscription manager 400 performs the verification on behalf of the eSIM server 300 as is shown in
As noted above, the network access authentication for initial connectivity may be performed without a continuation according to
In
In one variant of
In one variant of
In one variant the eUICCInfo1 of each communication device 200 is not known beforehand by the eSIM server 300 but is part of the encrypted SUCI, i.e., the eUICCInfo1 is encrypted along with the EID and eUICC challenge.
In general terms, after receiving the SUCI in step S305, the serving network needs to analyze the SUCI to determine the home network. For example, in case of IMSI-based SUPI the serving network needs to parse the SUPI to extract MCC+MNC of the home network. Depending on the type of SUPI and protection scheme the SUCI can be of varying length. However, in the case of IMSI-based SUPI and using a particular protection scheme the SUCI will have a certain length and format, as follows.
In particular, with the currently standardized protection schemes (profile A and profile B) the length of the encrypted data in SUCI is 5 bytes resulting from encrypting the MSIN part of the IMSI (the part of IMSI excluding MCC+MNC which is only 5 bytes).
If the home network operator uses a proprietary protection scheme, the format of byte 9 and onwards of the SUCI is only known to the home network operator.
The method disclosed with reference to
An embodiment for initiating 5G network access authentication with extra EAP round based on at least some of the above disclosed embodiments will now be disclosed in detail with reference to the signalling diagram of
In some variants of
The method in
S309e: In response to the authentication request received in step S309c, the communication device 200 returns an EAP-Response message containing the encrypted data and MAC computed in step S309d. Alternatively, a fully formatted SUCI can be sent containing the encrypted data, MAC, MCC+MNC, routing identifier, home public key identifier, protection scheme, and ephemeral public key of the communication device 200.
S309f: The serving network includes the EAP-Response message in an authentication request to the AUSF of the eSIM server 300.
S309g: The AUSF forwards the encrypted data and MAC (or full SUCI) to the UDM of the eSIM server 300 that process the encrypted data and the MAC in the same way as for SUCI, i.e. using same encryption key and MAC derived for SUCI the MAC is verified and encrypted data is decrypted to obtain eUICC challenge (possibly only remaining 11 bytes if random includes the other 5 bytes), EID, and optionally eUICCInfo1. Alternatively, if a fully formatted SUCI is received by the UDM the UDM discards any information obtained from the previous SUCI and processes the received SUCI from scratch.
From step S310 and onwards the method follows
An alternative to the method in
In some variant to
In some variants, neither the EID nor any other device identifier is transferred to the eSIM server 300 as part of the SUCI, nor as part of the encrypted data in the extra EAP round as shown in Error! Reference source not found. 7. The EID is part of the eUICC certificate that is part of the AuthenticateServerResponse transferred in step S321 to the eSIM server 300 and the validation that the communication device 200 uses the eSIM server 300 can be performed as part of step S322 instead of step S310. In step S311 the EID may be used in a localization decision and determining the subscription manager 400 to be used in step S313 and onwards, which requires the EID to be sent as part of the SUCI, or as part of the encrypted data in the extra EAP round.
As described above, a profile may be prepared for download where a Matching ID is used for identifying the profile at the subscription manager 400 during the profile download preparation. But the profile is not yet bound to a particular communication device 200 or eUICC with a particular EID. In this case the Matching Id needs to be provided to the communication device 200 before step S318 such that it can be included in the AuthenticateServerRequest. The end-user may have obtained an Activation Code (AC) containing the Matching ID when ordering a subscription from MNO2. For example, the AC may be obtained in the form of a QR code that is scanned by the communication device 200 to obtain the Matching ID e.g. between step S301 and S302. Alternatively, for communication devices 200 without UI that are remotely managed, and where the eSIM service is used together with the eSIM server 300, the Matching Id may be provided as part of the encrypted data in steps S316 to S318.
If an Activation Code is used, also other pieces of data such as the eSIM server long term EC public key, the address of the eSIM server 300, the SUPI information of the eSIM server 300, SUCI routing information and the SUCI home public key identifier may be obtained through the Activation Code instead of being pre-configured in step S300.
An embodiment for 5G network access authentication using EAP-AKA′ and eSIM credentials based on at least some of the above disclosed embodiments will now be disclosed in detail with reference to the signalling diagram of
The method in
In order to fit the above exchange using EAP-AKA′ messages the following data might be pre-configured in the database of the eSIM server 300 for each device using the service: eUICC certificate, EUM certificate, eUICCInfo2 (and eUICCInfo1 as eUICCInfo1 is a subset of eUICCInfo2), and DeviceInfo fields, and deviceCapabilities, possibly also the full IMEI.
Besides this change in step S300 of
Steps S313′, to S316′ of
The remaining steps S323′ to S328′ are identical to steps S323 to S328.
The AT_KDF_INPUT attribute of step S317′ normally contains the SNN. It is here extended with the last 32 bytes of AUSF ephemeral public key and the encrypted server data and SUPI.
The AT_CHECKCODE attribute of step S321 can be sent according to the EAP-AKA′ specification. It is here used to transfer the complete signature. An alternative to this is to first signal a sequence number synchronization and transfer first part of the signature as a response (i.e. attributes AT_AUTS and AT_MAC are returned in the response) and then as a second AKA′-Challenge round transfer the rest of the signature.
Some of the data of eUICCInfo2 related to available memory for profile installation in the eUICC may change during the life-time of the communication device 200. Likely, no changes to the memory are done since the eUICCInfo2 is extracted from the communication device 200 during eUICC personalization. But if there are changes to the size, these new values need to be communicated for the eSIM server 300 to correctly restore AuthenticateServerResponse. One way to accomplish this is to signal a sequence number synchronization and transfer the values of the non-static parts that can change. Alternatively, the non-static parts may be included along with eUICC challenge and EID as part of the SUCI, or in the extra EAP round of
The variants described above, except for not sending the EID/device identifier as part of SUCI, are applicable also when EAP-AKA′ formatted messages are used. EID is needed to be transferred before step S322′ such that the proper eUICCInfo2, DeviceInfo, eUICC certificate, and EUM certificate can be fetched from the database.
The method in
Instead, those 32 bytes of the SUCI can be used to transfer the remaining encrypted eUICC challenge bytes, the encrypted EID, and the encrypted non-static parts of the eUICCInfo2.
An embodiment for combined initial connectivity and profile download flow based on at least some of the above disclosed embodiments will now be disclosed in detail with reference to the signalling diagram of
A method for combined initial connectivity and profile download where common mutual authentication between the subscription manager 400 and the eUICC is performed once and serves the purpose of both network access authentication for initial connectivity and mutual authentication for profile download, where the latter is disclosed next.
Constrained communication devices 200 might be configured to communicate via a device management entity, also known as a Managing Entity. Hence, there might be a Managing Entity in the signalling path between the communication device 200 and the eSIM server 300 that handles protocol translation in case for example HTTPS communication is used between the eSIM server 300 and the Managing Entity and lightweight M2M (LwM2M) over Constrained Application Protocol (CoAP) over Datagram Transport Layer Security (DTLS) is used between the Managing Entity and the communication device 200. In this case existing secure communication might be leveraged between the communication device 200 and the Managing Entity and the shared key from step S401 is delivered from the communication device 200 to the Managing Entity for establishing secure communication with the eSIM server 300.
In some variants, the complete profile download is performed inside the EAP exchange as part of the network access authentication. In short, additional EAP request-response roundtrips need to be added to the method in
Particularly, the processing circuitry 210 is configured to cause the communication device 200 to perform a set of operations, or steps, as disclosed above. For example, the storage medium 230 may store the set of operations, and the processing circuitry 210 may be configured to retrieve the set of operations from the storage medium 230 to cause the communication device 200 to perform the set of operations. The set of operations may be provided as a set of executable instructions. Thus the processing circuitry 210 is thereby arranged to execute methods as herein disclosed.
The storage medium 230 may also comprise persistent storage, which, for example, can be any single one or combination of magnetic memory, optical memory, solid state memory or even remotely mounted memory.
The communication device 200 may further comprise a communications interface 220 for communications with other entities, functions, nodes, and devices, of the communication network of
The processing circuitry 210 controls the general operation of the communication device 200 e.g. by sending data and control signals to the communications interface 220 and the storage medium 230, by receiving data and reports from the communications interface 220, and by retrieving data and instructions from the storage medium 230. Other components, as well as the related functionality, of the communication device 200 are omitted in order not to obscure the concepts presented herein.
In general terms, each functional module 210a:210h may be implemented in hardware or in software. Preferably, one or more or all functional modules 210a:210h may be implemented by the processing circuitry 210, possibly in cooperation with the communications interface 220 and/or the storage medium 230. The processing circuitry 210 may thus be arranged to from the storage medium 230 fetch instructions as provided by a functional module 210a:210h and to execute these instructions, thereby performing any steps of the communication device 200 as disclosed herein.
Particularly, the processing circuitry 310 is configured to cause the eSIM server 300 to perform a set of operations, or steps, as disclosed above. For example, the storage medium 330 may store the set of operations, and the processing circuitry 310 may be configured to retrieve the set of operations from the storage medium 330 to cause the eSIM server 300 to perform the set of operations. The set of operations may be provided as a set of executable instructions. Thus the processing circuitry 310 is thereby arranged to execute methods as herein disclosed.
The storage medium 330 may also comprise persistent storage, which, for example, can be any single one or combination of magnetic memory, optical memory, solid state memory or even remotely mounted memory.
The eSIM server 300 may further comprise a communications interface 320 for communications with other entities, functions, nodes, and devices, of the communication network of
The processing circuitry 310 controls the general operation of the eSIM server 300 e.g. by sending data and control signals to the communications interface 320 and the storage medium 330, by receiving data and reports from the communications interface 320, and by retrieving data and instructions from the storage medium 330. Other components, as well as the related functionality, of the eSIM server 300 are omitted in order not to obscure the concepts presented herein.
In general terms, each functional module 310a:310l may be implemented in hardware or in software. Preferably, one or more or all functional modules 310a:310l may be implemented by the processing circuitry 310, possibly in cooperation with the communications interface 320 and/or the storage medium 330. The processing circuitry 310 may thus be arranged to from the storage medium 330 fetch instructions as provided by a functional module 310a:310l and to execute these instructions, thereby performing any steps of the eSIM server 300 as disclosed herein.
The eSIM server 300 may be provided as a standalone device or as a part of at least one further device. For example, the eSIM server 300 may be provided in a node of the radio access network or in a node of the core network. Alternatively, functionality of the eSIM server 300 may be distributed between at least two devices, or nodes. These at least two nodes, or devices, may either be part of the same network part (such as the radio access network or the core network) or may be spread between at least two such network parts. In general terms, instructions that are required to be performed in real time may be performed in a device, or node, operatively closer to the cell than instructions that are not required to be performed in real time. Thus, a first portion of the instructions performed by the eSIM server 300 may be executed in a first device, and a second portion of the instructions performed by the eSIM server 300 may be executed in a second device; the herein disclosed embodiments are not limited to any particular number of devices on which the instructions performed by the eSIM server 300 may be executed. Hence, the methods according to the herein disclosed embodiments are suitable to be performed by a eSIM server 300 residing in a cloud computational environment. Therefore, although a single processing circuitry 310 is illustrated in
In the example of
The inventive concept has mainly been described above with reference to a few embodiments. However, as is readily appreciated by a person skilled in the art, other embodiments than the ones disclosed above are equally possible within the scope of the inventive concept, as defined by the appended patent claims.
Filing Document | Filing Date | Country | Kind |
---|---|---|---|
PCT/EP2022/050484 | 1/12/2022 | WO |