SGP.02 v3.1 PDF
SGP.02 v3.1 PDF
SGP.02 v3.1 PDF
Official Document SGP.02 - Remote Provisioning Architecture for Embedded UICC Technical
Specification
Copyright Notice
Copyright © 2016 GSM Association
Disclaimer
The GSM Association (“Association”) makes no representation, warranty or undertaking (express or implied) with respect to and does not accept
any responsibility for, and hereby disclaims liability for the accuracy or completeness or timeliness of the information contained in this document.
The information contained in this document may be subject to change without prior notice.
Antitrust Notice
The information contain herein is in full compliance with the GSM Association’s antitrust compliance policy.
Table of Contents
1 Introduction 7
1.1 Overview 7
1.2 Scope 7
1.3 Document Purpose 7
1.4 Intended Audience 7
1.5 Definition of Terms 7
1.6 Abbreviations 10
1.7 References 12
2 General Parts of the Technical Specification 14
2.1 General Architecture 14
2.2 eUICC Architecture 16
2.2.1 Security Domains 16
2.2.2 Identification of eUICC: EID 20
2.2.3 Identification of Security Domains: AID and TAR 21
2.2.4 Profile Structure 22
2.2.5 Secure Channel on Interfaces 23
2.3 Security Overview 24
2.3.1 Certificate Issuer Role 25
2.3.2 Certification Chains 26
2.3.3 General Consideration on Algorithm and Key Length 27
2.4 OTA Communication on ES5 (SM-SR-eUICC) 27
2.4.1 General OTA Requirements 27
2.4.2 Void 28
2.4.3 SMS 28
2.4.4 HTTPS 29
2.5 Communication on ES8 (SM-DP) - eUICC 33
2.6 SM-DP to SM-SR Link Establishment (ES3) 34
2.7 OTA Platform Communication on ES6 (MNO-eUICC) 34
3 Detailed Procedure Specifications 34
3.1 Profile Download and Installation 35
3.1.1 ISD-P Creation 35
3.1.2 Key Establishment with Scenario#3-Mutual Authentication 37
3.1.3 Download and Installation of the Profile 40
3.1.4 Error Management Sub-Routine 43
3.2 Profile Enabling 43
3.2.1 Normal Case 44
3.2.2 Connectivity Failure Case 46
3.3 Profile Enabling Via SM-DP 48
3.3.1 Normal Case 48
3.3.2 Connectivity Failure Case 50
3.4 Profile Disabling 51
3.5 Profile Disabling Via SM-DP 53
3.6 Profile and ISD-P Deletion 55
1 Introduction
1.1 Overview
This document provides a technical description of the GSMA’s ‘Remote Provisioning
Architecture for Embedded UICC’ [1].
1.2 Scope
This specification provides a technical description of:
Term Description
Physical entity (person, company or organisation) that can
assume a Role in the functional architecture. It is possible for an
Actor
Actor to assume multiple Roles in the same functional
architecture.
This term refers to a link of an application, an Executable Load
Associated (with) / File or a security domain to (another) security domain, which
Association provides services to the former as defined in GlobalPlatform
Card Specification [6] section 7.2.
A set of data (for example SMSC address) required by the
Connectivity Parameters eUICC to open a communication channel (for example SMS,
HTTPS) on a dedicated network.
A paying party, in particular a legally responsible juridical person
Customer
or entity.
1.6 Abbreviations
Abbreviation Description
AID Application Identifier
AES Advanced Encryption Standard
CASD Controlling Authority Security Domain
CBC Cipher Block Chaining
CC Cryptographic Checksum
CERT.DP.ECDSA Certificate of the SM-DP for its ECDSA key
CERT.SR.ECDSA Certificate of the SM-SR for its ECDSA key
CERT.ECASD.ECKA Certificate of the ECASD for its ECKA key
CI Certificate Issuer
CMAC Cipher-based Message Authentication Code
ECASD eUICC Controlling Authority Security Domain
ECDSA Elliptic Curve cryptography Digital Signature Algorithm
ECKA Elliptic Curve cryptography Key Agreement algorithm
DAP Data Authentication Pattern
DR Derivation Random
EUM eUICC Manufacturer
EID eUICC-ID
EIS eUICC Information Set
ETSI European Telecommunications Standards Institute
ePK.DP.ECKA ephemeral Public Key of the SM-DP used for ECKA
ePK.SR.ECKA ephemeral Public Key of the SM-SR used for ECKA
eSK.DP.ECKA ephemeral Private Key of the SM-DP used for ECKA
eSK.SR.ECKA ephemeral Private Key of the SM-SR used for ECKA
eUICC Embedded UICC
GP GlobalPlatform
GSMA GSM Association
1.7 References
Document
Ref Title
Number
GSMA ‘Remote Provisioning Architecture for Embedded UICC’
[1] SGP.01
Version 1.1
Smart Cards; ETSI numbering system for telecommunication
[2] ETSI TS 101 220
application providers; Release 9
[3] ETSI TS 102 223 Smart Cards; Card Application Toolkit (CAT) ; Release 9
Secured packet structure for UICC based applications; Release
[4] ETSI TS 102 225
12
[5] ETSI TS 102 226 Remote APDU structure for UICC based applications; Release 9
[6] GPC_SPE_034 GlobalPlatform Card Specification v.2.2.1
GlobalPlatform Card Specification v.2.2.1 UICC Configuration
[7] GPC_GUI_010
v1.0.1
GlobalPlatform Card Specification v.2.2 Amendment B: Remote
[8] GPC_SPE_011
Application Management over HTTP v1.1.3
GlobalPlatform Card Specification v.2.2 Amendment C:
[9] GPC_SPE_025
Contactless Services v1.1.1
GlobalPlatform Card Specification v.2.2 Amendment D: Secure
[10] GPC_SPE_014
Channel Protocol 03 v1.1.1
GlobalPlatform Card Specification v.2.2 Amendment E: Security
[11] GPC_SPE_042
Upgrade for Card Content Management v1.0.1
The international identification plan for public networks and
[12] ITU E.212
Subscriptions
Secured packet structure for (Universal) Subscriber Identity
[13] 3GPP TS 31.115
Module (U)SIM Toolkit applications Release 11
OMA Smartcard-
[14] OMA-TS-Smartcard_Web_Server-V1_0-20080421-A
Web-Server v1.0
[15] RFC 5246 The TLS Protocol – Version 1.2
Pre-Shared Key Cipher suites for Transport Layer Security
[16] RFC 4279
(TLS)
Pre-Shared Key Cipher Suites for TLS with SHA-256/384 and
[17] RFC 5487
AES Galois Counter Mode
[18] RFC 3629 Unicode Transformation Format 8-bit
[19] ISO/IEC 7812 Identification Cards; Identification of issuers
ES2
SM-DP
ES3
MNO
ES7*
CI ES4
SM-SR
ES1 ES6
ES8 ES5
EUM eUICC
Off-card interface
eUICC interface
Not covered by this specification
* Interface between two SM-SR entities for the change of SM-SR
The above figure provides the complete description of the eUICC Remote Provisioning and
Management system.
The ES5, ES6 and ES8 interfaces are described in section 4.
The ES1, ES2, ES3, ES4 and ES7 interfaces are described in section 5.
NOTE: Functions of the ES2 interface related to Profile ordering and master delete
are considered out of the scope of this specification as these functions may
be based upon pre-existing MNO processes.
NOTE: The interface between the SM-DP and EUM and the related function for
Profile Creation is out of the scope of this specification as this function is
based upon proprietary mechanisms.
NOTE: The ES6 interface is based on the RAM and RFM mechanisms described in
ETSI TS 102 225 [4] and ETSI TS 102 226 [5].
ISD-R ECASD
AM AM
ISD-P 1 ISD-P n
Profile … Profile
An ISD, as specified in GlobalPlatform Card Specification [6], does not exist in the
architecture of the eUICC.
2.2.1.1 ISD-R
There shall be only one ISD-R on an eUICC.
The ISD-R shall be installed and first personalized by the EUM during eUICC manufacturing.
The ISD-R shall be Associated with itself.
The ISD-R shall only be able to perform Platform Management functions on ISD-Ps.
2.2.1.2 ECASD
There shall be only one ECASD on an eUICC.
The ECASD shall be installed and personalized by the EUM during the eUICC
manufacturing. The ECASD shall be Associated with the ISD-R.
The ECASD shall be personalized by the EUM during eUICC manufacturing with:
PK.CI.ECDSA
SK.ECASD.ECKA
CERT.ECASD.ECKA for eUICC Authentication and key establishment
EUM key set for key renewal
EID
The ECASD shall comply with the requirements defined for the CASD in GlobalPlatform
Card Specification UICC configuration [7] except:
2.2.1.3 ISD-P
An ISD-P hosts a unique Profile.
An ISD-P shall be installed by the ISD-R and then personalized by its related SM-DP (see
section 3.1.1). At least one ISD-P with a Profile shall be installed and first personalized by
the EUM during eUICC manufacturing to allow future eUICC connectivity.
No component outside the ISD-P shall have visibility or access to any Profile component
with the exception of the ISD-R, which shall have read access to POL1.
A Profile Component shall not have any visibility of, or access to, components outside its
ISD-P. An ISD-P shall not have any visibility of, or access to, any other ISD-P.
It shall be possible to allocate the same AID within different Profiles. A Profile Component
shall not use the reserved ISD-R, ISD-P and ECASD AIDs.
It shall be possible to allocate the same TAR within distinct Profiles. A Profile Component
shall not use the reserved ISD-R, ISD-P and ECASD TARs.
An ISD-P shall remain associated to the ISD-R during all its life time in order for the ISD-R to
be able to perform the Platform Management functions:
ISD-P Creation: the Association between the ISD-R and an ISD-P shall be created at
that time
ISD-P Deletion and Master Delete
Profile Enabling and Disabling
Fall-back Attribute setting
Transport function: The Association shall allow SCP03/SCP03t establishment
between the SM-DP and the ISD-P.
ISD-P shall follow the life-cycle illustrated in the Figure 3, based on the Security Domain life-
cycle defined in GlobalPlatform Card Specification [6], section 5.3.
1
SELECTABLE delete
PERSONALIZED 1
delete
(Profile creation)
1
DISABLED delete
After execution of the procedure described in section 3.1.1, the ISD-P shall be in
SELECTABLE state. After execution of the procedure described in section 3.1.2, the ISD-P
shall be in PERSONALIZED state.
NOTE: The INSTALLED state for security domains defined in GlobalPlatform Card
Specification [6] is skipped by the command for ISD-P creation defined in
section 4.1.1.1.
After execution of the procedure described in section 3.1.3 or 3.4, the ISD-P shall be in the
DISABLED state. The ISD-P can also transition to the DISABLED state as the result of the
enabling of another ISD-P as described in section 3.2, or the activation of the fall-back
mechanism.
After execution of the procedure described in section 3.2, the ISD-P shall be in the
ENABLED state. The ISD-P can also transition to the ENABLED state as the result of the
activation of the fall-back mechanism.
Deletion removes the ISD-P with its Profile from the eUICC.
For coding the states, table 11-5 of GlobalPlatform Card Specification [6] is modified as
follows:
b8 b7 b6 b5 b4 b3 b2 b1 Meaning
0 0 0 0 0 0 1 1 (INSTALLED)
0 0 0 0 0 1 1 1 SELECTABLE
PERSONALIZED (Profile
0 0 0 0 1 1 1 1
creation)
0 0 0 1 1 1 1 1 DISABLED
0 0 1 1 1 1 1 1 ENABLED
These states can be mapped to the architectural states defined in GSMA Remote
Provisioning Architecture [1] as shown below:
All Profile Components, in particular the MNO-SD, shall remain linked to the ISD-P in order
to enable the following:
Profile Download and Installation: the Profile Components, which are affiliated with
the ISD-P, are created at that time
ISD-P Deletion and Master Delete: the Profile Components shall be deleted at that
time
Profile Enabling and Disabling: Enable and Disable access to all the Profile
Components
Update of POL1
Provide read access to POL1 when required for Platform Management functions.
All Profile Components created by the ISD-P shall always remain affiliated with the ISD-P. In
particular it is not possible to change the affiliation of any Profile Component.
When an ISD-P is not in enabled state, the eUICC shall ensure that:
Remote management of any Profile Component is not possible via the ES6 interface;
The file system within the Profile cannot be selected by the Device or any application
on the eUICC;
The applications (including NAAs and Security Domains) within the Profile cannot be
selected, triggered or deleted.
The EID shall be stored within the ECASD and can be retrieved by the Device at any time
using the standard GlobalPlatform GET DATA command by targeting the ECASD as
specified in GlobalPlatform Card Specification [6] as follows:
Select the ECASD using the SELECT command with the AID value defined in
section 2.2.3
Send a ‘GET DATA’ command to the ECASD with the data object tag '5A' to retrieve
the EID
o An additional twelve digits for the individual identification number (19th to 30th
digits),
o A last two digits (31st to 32nd digits) containing check digits calculated over all
32 digits as specified below.
The country code and issuer identifier shall be assigned as specified in ITU
E.118 [21]
The two check digits are calculated as follows:
o 1. Replace the two check digits by two digits of 0,
o 2. Using the resulting 32 digits as a decimal integer, compute the remainder
of that number on division by 97,
o 3. Subtract the remainder from 98, and use the decimal result for the two
check digits,
If the result is one digit long, its value shall be prefixed by one digit of
0.
When stored as a byte string, the first digit shall be put into the highest four bits of the
first byte
The RID of the Executable Load File, the Executable Module and the Application of the ISD-
R, the ISD-P and the ECASD shall be set to 'A000000559' (as defined in ISO/IEC 7816-
5:2004).
The ISD-R application shall be installed by the EUM during eUICC manufacturing. The ISD-
R Executable Load File AID and the ISD-R Executable Module AID can be freely selected by
the EUM.
The ECASD application shall be installed by the EUM during eUICC manufacturing. The
ECASD Executable Load File AID and the ECASD Executable Module AID can be freely
selected by the EUM.
The ISD-P application shall be installed by SM-SR during the first step of the “Profile
Download and Installation” procedure in section 3.1.
The ISD-P application AID shall be coded according to Annex 8. The SM-SR shall allocate
the ISD-P application AID in the range defined in Annex H.
NOTE: The choice of having the ISD-P AID allocated by the SM-SR is to avoid
conflicts with other ISD-P AIDs used by already installed ISD-Ps; the SM-DP
cannot have such visibility.
The MNO-SD application AID and TAR(s) can be freely allocated by the MNO during Profile
definition.
The Profile structure shall contain a Profile Component, called MNO-SD, which performs an
identical Role as the ISD for a UICC (see GlobalPlatform Card Specification [6]). This MNO-
SD is the representative of the MNO owning the Profile, meaning it contains the MNO’s OTA
Key sets.
AM
ISD-P
-SM-DP_Keyset_scp03
POL1
AM
MNO-SD
-MNO_Keyset_scp80
-MNO_Keyset_scp81 (opt.)
-MNO other keysets (opt.)
FileSystem
CASD NAA
SSD
Application
GP association link
The MNO-SD
At least one NAA
POL1, even if not used
The privileges that can be allocated to the MNO-SD and to applications shall comply with
Annex C.
It shall be possible for the MNO to establish secure channels between the MNO OTA
Platform and security domains of the Profile as specified in ETSI TS 102 225 [4] and ETSI
TS 102 226 [5].
To enable SCP80, the ISD-R shall be personalized before issuance by the EUM with at least
one key set, with a Key Version Number between ‘01’ to ‘0F’ following GlobalPlatform Card
Specification UICC Configuration [7].
To enable SCP81, the ISD-R shall be personalized with at least one key set, with a Key
Version Number between ‘40’ to ‘4F’ following GlobalPlatform Secure Element
Configuration [34].
The key length and algorithm shall comply with section 2.3.3.
The key sets shall be loaded in the ISD-R, and provided to SM-SR, in the EIS, through ES1
SCP80 or SCP81
SM-SR ES5 function ISD-R
- Keyset_scp80
- Keyset_scp81 (opt.)
- Keyset_scp80
- Keyset_scp81 (opt.)
Off-card eUICC
NOTE: SCP03 is the only secure channel defined by GlobalPlatform that complies
with requirements of the section 2.3.3.
To enable SCP03 and SCP03t, the ISD-P shall be personalized with at least one key set,
with a Key Version number between ‘30’ to ‘3F’ (see GlobalPlatform Secure Element
Configuration [34]).
The secure channel configuration, key length and algorithm to be used shall comply with
section 2.5.
The first SCP03 key set is loaded into the ISD-P by its SM-DP as described in the procedure
“Key Establishment with Scenario#3-Mutual Authentication”, section 3.1.2.
Off-card eUICC
Figure 6: Secure Channel Between SM-DP and ISD-P
NOTE: The MNO can also communicate with any other SSD (of the Profile) belonging
to the MNO. The Figure 7 only illustrates the secure channel with the MNO-
SD.
The initial OTA Key sets are part of the Profile and are loaded by the SM-DP during the
“Profile Download and Installation”, see section 3.1, or loaded by the EUM before eUICC
issuance.
Profile
The expectation of this architecture is to provide a solution offering a security level at least
equivalent to the security reached by the current UICC and its management systems.
The security requirements have to be applied to the different Actors and Roles (Customer,
MNO, SM-DP, SM-SR, CI, eUICC and eUICC Manufacturer). Each Role is considered as
elements which can belong to a security realm and has to fulfil the appropriate certification
scheme criteria.
According to section 2.2.3 of the GSMA Remote Provisioning Architecture for Embedded
UICC [1]:
Every SM-SR and SM-DP shall be certified according to a GSMA agreed certification
scheme.
The eUICC shall be certified according to the GSMA eUICC Protection Profile.
The eUICC Manufacturer shall be SAS certified.
In addition to the intrinsic security of each security realm, the data exchanged between these
entities has to be protected. Any communication between two security realms of the eUICC
ecosystem shall be origin authenticated, as well as integrity-Protected and, unless otherwise
specified in detailed sections of this specification, confidentiality protected.
For all the procedures described in this specification the security realms are mutually
authenticated and they have negotiated a minimal-acceptable common cryptographic suite
for further communication.
For the eUICC interfaces, the Platform Management commands (ES5) and the OTA
Platform commands (ES6) shall be protected by either a SCP80 or SCP81 secure channel
with security level defined in section 2.4. The Profile Management commands (ES8) shall be
at least protected by a SCP03 security level as detailed in section 2.5.
Off-card entities shall implement access control mechanisms for all function execution and
data access requests. This access shall be authorised and any access shall be traced as
defined in the GSMA certification schemes.
A self-signed Root Certificate used to verify certificates issued and signed by the CI
A public key (PK.CI.ECDSA), part of that Root Certificate, used on the eUICC to
verify certificates issued by the CI
A certificate (CERT.DP.ECDSA, signed by the CI) to authenticate the SM-DP. This
certificate is used in the “Load and Install Profile” procedure
A certificate (CERT.SR.ECDSA, signed by the CI) to authenticate the SM-SR. This
certificate is used in the “SM-SR change” procedure
A certificate, signed by the CI, to authenticate the EUM. This certificate is used in the
"Download and Install Profile" and in the “SM-SR change” procedures.
eUICC Certificates
CI
Root Certificate
(self signed)
eUICC
eUICC Certificate
(signed by EUM) A B
B certificate is signed by A private key
Public Key
(PK.ECASD.ECKA)
Private Key
(SK.ECASD.ECKA)
The eUICC Certificate is part of the EIS (eUICC Information Set) which is stored in the SM-
SR and/or at EUM level. This certificate contains:
The PK.ECASD.ECKA used for ElGamal Elliptic Curves key agreement as defined in
GlobalPlatform Card Specification Amendment E [11]
The EID
The technical reference of the product, which allows the Common Criteria (CC)
certification report to be identified by Common Criteria certification body (for example
BSI, ANSSI).
The eUICC shall support SMS and either CAT_TP or HTTPS or both.
Device requirements are stated in Annex G.
The SM-SR shall support SMS, HTTPS and CAT_TP.
For LTE network deployments the system shall support SMS as defined in GSMA
PRD IR.92 [38].
The SM-SR is free to select the most relevant protocol according to the eUICC and
Device capabilities and the platform or Profile Management operation to execute.
The eUICC shall support the RAM and RFM as defined in ETSI TS 102 226 [5], in
particular Expanded Remote Application data format and Script chaining.
2.4.2 Void
2.4.3 SMS
The usage of the SMS protocol may be relevant in several situations:
SMS for HTTPS session triggering, as defined in ETSI TS 102 226 [5], and also in
OMA-Smart Card Web Server [14] (section “Remote Administration Request sent
using a MT-SMS”)
SMS for CAT_TP session triggering as defined in ETSI TS 102 226 [5].
When a command to be sent to the eUICC can fit into a few SMS; such a solution can
be more efficiently handled via SMS, as compared to HTTPS.
The eUICC shall support the sending of secure packet over SMS as defined in 3GPP TS
31.115 [13]
The eUICC shall support RAM over SMS as defined in ETSI TS 102 226 [5].
The eUICC shall comply with 3GPP TS 31.111 [27] and 3GPP TS 31.116 [28].
Except for the notification described in section 3.15.1, concerning the security level, the SMS
(MT or MO) shall make use of a CC with a length of 64 bits using AES CMAC mode,
ciphering using AES in CBC mode and counter value higher (SPI1=’16’). Minimum key
lengths are defined in section 2.3.3.
Procedures for the PoR shall follow ETSI TS 102 225 [4] and 3GPP TS 31.115 [13]
with the following precisions:In the case that an incoming SMS for the ISD-R does
not meet this security level, it must be rejected by the eUICC and no PoR shall be
sent back
When the eUICC cannot authenticate the SM-SR, it shall not send any PoR and
discard the command packet with no further action being taken.
‘00’: no PoR (this value shall only be used for the notification described in section
3.15.1),
or to ‘39’: PoR with CC and encryption.
When a PoR is returned, the SMS shall make use of a CC with a length of 64 bits using AES
CMAC mode , ciphering using AES in CBC mode and shall be sent using SMS-SUBMIT
mode. Minimun key lengths are defined in section 2.3.3.
All these security requirements shall apply also for the SCP80 secured packets exchanged
during a CAT_TP session.
This SMS shall be addressed to the ISD-R. The necessary TAR information shall be
included in the EIS. The SMS shall comply with the format described in:
NOTE: Normally the SM-SR will close the session. However, if needed, the eUICC
may close the session.
This SMS shall be addressed to the ISD-R. The necessary TAR information shall be
included in the EIS. The SMS shall comply with the format described in:
ETSI TS 102 226 [5], using the parameter “Request for BIP channel opening” and
“Request for CAT_TP link establish”. These parameters and the corresponding “Data
for BIP channel opening” and “Data for CAT_TP link establishment” are separated in
two different commands sent in the same push SMS.
NOTE: Normally the SM-SR will close the session. However, if needed, the eUICC
may close the session.
2.4.4 HTTPS
If HTTPS is used, the following sections shall apply.
2.4.4.1 PSK-TLS
TLS_PSK_WITH_AES_128_GCM_SHA256
TLS_PSK_WITH_AES_128_CBC_SHA256
derived from master key. In this case the derivation algorithm used shall be robust and follow
the NIST recommendation SP800-56C [55], the derived Pre-Shared Keys shall have an
entropy of at least 128 bits.
As specified in RFC 4279 [16], the PSK Identity shall be first converted to a character string,
and then sent encoded in octets using UTF-8 [18] by the eUICC.
In the context of this specification, the PSK Identity before conversion is a sequence of
Tag/Length/Value (TLV) objects in hexadecimal string representation.
NOTE: As the PSK Identity is expected to be as short as possible, all lengths are
coded in one byte. BER-TLV coding is unnecessary in this case.
Length
Description Value
(bytes)
Tag for identifying PSK-ID format 1 ‘80’
Length 1 ‘01’
Identification of the PSK-ID 1 Expected value is ‘02’ indicating a full qualified
format. format for random PSK.
Tag for indicator of EID 1 ‘81’
Length of EID 1 ‘10’
EID value 16 The EID value. The value shall be coded in
hexadecimal string representation.
Tag for security domain AID 1 ‘4F’
Length of security domain AID 1 ‘10’
Security domain AID value 16 The AID value of the ISD-R. The value shall be
coded in hexadecimal string representation.
Tag for key identifier 1 ‘82’
Length 1 ‘01’
Key identifier 1 The key identifier value. The value shall be
coded in hexadecimal representation.
Tag for Key version 1 ‘83’
Length 1 ‘01’
Key version 1 The key version value. The value shall be coded
in hexadecimal representation. Key version
number range reserved for SCP81 is '40' to '4F'.
‘8001028110010203040506070809010203040506074F10000102030405060708090A0B0C
0D0E0F820101830140’
Amendment B [8] for the format of the POST request. The content of the HTTP POST
header field X-Admin-From shall be filled with the “Agent Id” information standardised in
GlobalPlatform Card Specification Amendment B [8], section “Administration Session
Triggering Parameters” (the format of this field is not standardised).
Where:
- <part-id> is the tag that specifies which part is defined: “se-id” or “aa-id”
- <part-id-type> specifies the type of the identifier that is provided: “eid” or “aid”
Note that this representation of AID in the format /aid/<RID>/<PIX> is already used in
GlobalPlatform for other purposes than the “Agent Id”.
“//se-id/eid/89001012012341234012345678901224;//aa-
id/aid/0001020304/05060708090A0B0C0D0E0F”
The eUICC shall use the Chunked mode [Transfer-Encoding: chunked CRLF] for the POST
request message.
The SM-SR shall use Chunked mode [Transfer-Encoding: chunked CRLF] for the POST
response.
The POST response shall strictly follow the GlobalPlatform Card Specification Amendment
B [8].
POST response sent by the SM-SR containing commands that shall be executed by the
ISD-R:
POST response sent by the SM-SR containing commands that shall be executed by the
ISD-P:
Last POST response sent by the SM-SR with nothing to do, communication shall be closed:
1. The SM-SR sends a MT-SMS to the ISD-R for HTTPS session triggering as defined in
section 2.4.3.1.
1. The ISD-R checks the security of the MT-SMS. The figure assumes the security is ok as
defined in [13], else a PoR shall be returned to the SM-SR to indicate the failure (only in
case the received SMS contains an authenticated TP-OA). In case of a temporary or
fixable error the SM-SR shall retry or fix the error.
2. The PSK-TLS handshake is performed as defined in [16] and [17]. The figure assumes
the security is ok. In case of a temporary or fixable error, the SM-SR shall retry or fix the
error.
3. The first POST request is sent to the SM-SR as defined in section 2.4.4.2.
The ES8 is realised by a SCP03 or SCP03t secure channel that is tunnelled through the
secure channel between the SM-DP and the SM-SR (ES3) and on through into the SCP80
or SCP81 secure channel between the SM-SR and the ISD-R (ES5). It is then provided by
the ISD-R to the ISD-P. This is shown in the Figure 6.
The eUICC shall support the Secure Channel Protocol 03 (SCP03) as defined in
GlobalPlatform Card Specification Amendment D [10], as well as the variant SCP03t defined
in this specification (see section 4.1.3.3), with:
AES in CBC mode with key length of 128 bits, referred as AES-128
Use of C-MAC, C-DECRYPTION R-MAC and R-ENCRYPTION for SCP03 (set in
reference control parameter P1 of the EXTERNAL AUTHENTICATE command) and
for SCP03t.
Use of mode i=’70’, meaning use of pseudo-random card challenge, R-MAC and R-
ENCRYPTION support
As a result the SM-DP and its ISD-P are mutually authenticated, all commands sent from the
SM-DP to the ISD-P are signed and encrypted, and all responses sent by the ISD-P to the
SM-DP are also signed and encrypted.
The MNO, requesting an action of an SM-DP through the ES2 interface, is able to
provide the identification of the SM-SR in charge of the management of the eUICC
targeted by the function.
The SM-DP, based on the SM-SR identification provided through the ES2 interface, is
able to retrieve the SM-SR address.
The SM-DP, based on the SM-SR identification and address, is able to establish a
new link to the identified SM-SR during any procedure requiring this step.
The procedure describing how the SM-DP establishes a link to the SM-SR (for example:
business agreement or technical solution) is not covered by this specification.
This specification recommends that OTA Platform communication on ES6 makes use of at
least a minimum security settings defined for ES5 in section 2.4.
NOTE: CAT_TP could be used as transport protocol and would have an equivalent
procedure.
eUICC
MNO SM-DP SM-SR ISD-R ISD-P
(1) downloadProfile(srid, eid, iccid, final state, profileType, msisdn)
(2) getEIS(eid)
(11)
Start Conditions:
The start conditions are described in GSMA Remote Provisioning Architecture for the
Embedded UICC [1].
Procedure:
(1) The MNO owning the Profile to download shall call the “ES2.DownloadProfile”
function with its relevant input data (the MNO has to provide the SM-SR identification
and address). By providing the required final state, the MNO may ask the SM-DP to
enable the newly downloaded Profile at the end of the procedure. Else, by default, the
Profile will be in the DISABLED state.
(2) The SM-DP on reception of this request shall call the “ES3.GetEIS” function with its
relevant input data.
(3) The SM-SR shall retrieve the EIS of the eUICC based on the EID. At this stage the
SM-SR may return an error indicating that the eUICC is unknown in its system. The
error shall be finally returned to the MNO and the procedure shall end.
(4) The SM-SR shall return the EIS of the eUICC.
(5) The SM-DP shall check the eligibility of the eUICC against the characteristics of the
Profile to be downloaded. Although the exact checks performed by the SM-DP are out
of scope for this specification, some examples might include:
a. Is the target Profile compatible with and validated against this type of eUICC?
(including the fact that the SM-DP is able to generate the Profile for this type
of eUICC).
c. Is the eUICC certified? In case of a non-certified eUICC, the SM-DP may stop
the procedure.
The SM-DP shall verify the ECASD certificate, which was received as part of the EIS,
using the EUM Certificate and the CI’s Root Certificate and shall extract
PK.ECASD.ECKA from the ECASD certificate.
If any of these conditions is not satisfied or if the certificate verification fails, the SM-DP
shall return a response indicating a failure.
(6) The SM-DP shall call the “ES3.CreateISDP” function with its relevant input data.
(7) The SM-SR shall verify that the SM-DP request is acceptable (the verifications that the
SM-SR shall perform are described in the section 5.4.3).
If any of the conditions to be verified are not satisfied, the SM-SR shall return a
response indicating a failure, and the procedure shall stop.
(8) If there is no existing HTTPS session with the eUICC, the SM-SR shall trigger the
HTTPS session as defined in section 2.4.4.5.
(9) The SM-SR shall return the HTTP POST response containing the “ES5.CreateISDP”
with its relevant input data. The X-Admin-Targeted-Application parameter shall be
omitted as the command is targeting the ISD-R.
(10) The ISD-R shall create the ISD-P. In case of an error, the ISD-R shall return the error
within the next POST request to the SM-SR. The error shall be finally returned to the
SM-DP and the procedure may end depending on the error.
(11) The eUICC shall return the “ES5.CreateISDP” function execution response within the
POST request to the SM-SR.
(12) Assuming a successful ISD-P creation, the SM-SR shall update the EIS to reflect the
newly created ISD-P.
(13) The SM-SR shall return to the SM-DP the “ES3.CreateISDP” function execution
response.
In this sample procedure, it is assumed that the SM-DP has indicated “more to do” in the
“ES5.CreateISDP” call. In case the SM-DP did not indicate “more to do”, the SM-SR may
end the HTTPS session.
eUICC
MNO SM-DP SM-SR ISD-R ISD-P ECASD
(6) RC or error
(8) sendData response with (7)
ES8.keyEstablishISDPKeySet response: RC or error
POST /<next-uri> HTTP/1.1 CRLF
…
X-Admin-Script-Status: <script-status> CRLF
CRLF
<Body with ES8.keyEstablishISDPKeySet response: RC or error>
Start Conditions:
As a pre-condition, the ISD-P shall be created as defined in section 3.1.1, the
eUICC/ECASD shall support the scenario#3-Mutual Authentication and shall be provisioned
with the SK.ECASD.ECKA, PK.CI.ECDSA.
Procedure:
(1) The SM-DP shall call the “ES3.SendData” function specifying the targeted eUICC, the
ISD-P, and the data containing the “ES8.EstablishISDPKeySet” function with the
certificate identifying the SM-DP. The certificate shall be issued by the SM-DP
Certificate Issuer.
(2) The SM-SR shall verify that the SM-DP request is acceptable (the verifications that the
SM-SR shall perform are described in the section 5.4.4).
If any of the conditions to be verified are not satisfied, the SM-SR shall return a
response indicating a failure, and the procedure shall stop.
(2a) The SM-SR shall trigger the HTTPS session with the ISD-R if not already
opened.
(3) The SM-SR shall return the HTTP POST response with a body containing the
“ES8.EstablishISDPKeySet” function as provided by the SM-DP in (1).
(3a) The ISD-R shall forward the content of the STORE DATA command contained
in the HTTP response to the ISD-P.
(3b) The ISD-P shall verify that it is an SM-DP certificate.
(4) The ISD-P shall forward the CERT.DP.ECDSA to the ECASD for verification.
(5) ECASD shall verify the provided CERT.DP.ECDSA with the PK.CI.ECDSA; if
CERT.DP.ECDSA is valid, ECASD shall extract and store the PK.DP.ECDSA and
generate a random challenge (RC).
(6) The Random Challenge (or error if any) shall be returned to the ISD-P which forwards
it to the ISD-R.
(7) The ISD-R shall return the execution response received from the ISD-P (RC or error)
within a new HTTP POST request addressed to the SM-SR.
(8) The SM-SR shall return the content of the received HTTP POST (RC or error) to the
SM-DP.
(8a) In case of failure during the key establishment procedure, error management
procedure describes in section 3.1.4 shall be executed and the procedure shall
stop.
(9) The SM-DP shall generate an ephemeral key pair (related to the targeted ICCID),
called ePK.DP.ECKA and eSK.DP.ECKA. The SM-DP signs the received Random
Challenge(RC) and the generated ePK.DP.ECKA with the SK.DP.ECDSA.
(10) The SM-DP shall call the “ES3.SendData” function specifying the targeted eUICC, the
ISD-P and the data containing the “ES8.EstablishISDPKeySet” function with the
ePK.DP.ECKA and the previously computed signature on Random Challenge (RC)
and ePK.DP.ECKA using SK.DP.ECDSA.
(11) The SM-SR shall return the HTTP POST response with a body containing the
“ES8.EstablishISDPKeySet” function as provided by the SM-DP in (10).
(12) The ISD-P shall forward the ePK.DP.ECKA and signature to the ECASD for
verification.
(13) The ECASD shall verify the signature using the previously stored PK.DP.ECDSA. If
the signature is not verified, an error shall be returned. Else the ECASD shall calculate
the ShS using the ePK.DP.ECKA and the SK.ECASD.ECKA.
(14) The ShS or an error shall be returned to the ISD-P.
(15) The ISD-P:
May optionally compute a Derivation Random (DR, if requested by the SM-DP in
the function call).
Derives the key set from ShS (and optionally DR).
Calculates the receipt to be returned to SM-DP.
(16) The ISD-P shall return the calculated receipt (and optionally the DR) or the error to the
ISD-R.
(17) The ISD-R shall return the execution response to the ISD-P (receipt (opt. DR) or error)
within a new HTTP POST request addressed to the SM-SR.
(18) The SM-SR shall return the content of the received HTTP POST (receipt (opt. DR) or
error) to the SM-DP.
(18a) In case of failure during the Download and Installation procedure, the error
management procedure describes in section 3.1.4 shall be executed and the
procedure shall stop.
(19) The SM-DP symmetrically shall:
Calculates the ShS using the eSK.DP.ECKA and the PK.ECASD.ECKA,
Derives the key set from ShS (and optionally DR), and
Verify the receipt received in the response to ensure that key set derivation is
consistent with what has been performed by the ISD-P.
The eUICC shall support key establishment with and without the DR. The SM-DP decides
which option to use.
BSI TR-03111 [49] contains recommendations and requirements on the generation and
validation of ephemeral keys. In addition, NIST SP 800-56A [50] provides requirements on
the destruction of ephemeral keys and other intermediate secret data after their use.
eUICC
MNO SM-DP SM-SR ISD-R ISD-P
Start Conditions:
As a pre-condition, the ISD-P shall be created and personalized as defined in section 3.1.1
and section 3.1.2.
Procedure:
(1) The SM-DP shall call the “ES3.SendData” function providing the Profile data to
download as input data. The Profile data has to be given as specified in section 4.1.3.1
and 5.4.4.
(2) The SM-SR shall verify that the SM-DP request is acceptable (the verifications that the
SM-SR shall perform are described in section 5.4.4).
(2a) Depending on the error, the procedure may stop and a global failure message
shall be returned to the MNO.
(2b) The SM-SR shall trigger the HTTPS session opening with the ISD-R if not
already opened.
(3) The SM-SR shall return the HTTP POST response containing the secure data as
provided by the SM-DP. The X-Admin-Targeted-Application field shall contain the ISD-
P-AID.
(4) The ISD-R shall forward the received secure data to the ISD-P identified by the X-
Admin-Targeted-Application field.
(5) The ISD-P shall process the security of the received data. The figure illustrates a
success case; in case of security failure the error shall be returned within the next
POST request to the SM-SR and finally returned to the SM-DP; and the procedure
may end depending on the error.
(6) The ISD-P shall process the received command TLV(s).
(6a) The ISD-P shall return the response to the command TLV(s) to the ISD-R.
(7) The ISD-R shall return within the next POST request to the SM-SR.
(8) The SM-SR shall return to the SM-DP the execution status of the “ES3.SendData”
function.
(9) Optionally the SM-DP may call the same “ES3.SendData” function again if the
download and installation of the Profile requires several steps. This optional step may
be repeated as many times as required.
(9a) In case of failure during the Download and Installation procedure, error
management procedure describes in section 3.1.4 shall be executed and the
procedure shall stop.
(10) When Profile download is completed the SM-DP shall call the
“ES3.ProfileDownloadCompleted” function. This basically indicates to the SM-SR
that the Profile is downloaded and installed. The SM-DP may take the opportunity to
define a POL2 on the Profile. The MNO shall be able to sign the POL2 content even if
it is empty.
As requested by the MNO, after Profile installation the SCP03 key set of the ISD-P
may:
i) Be retained by the SM-DP. In this case the MNO can instruct the SM-DP to
hand over or delete the key set at a later point in time;
ii) Be handed over to the MNO. The keys may be replaced by the MNO;
Be deleted from the eUICC by the SM-DP (using the GlobalPlatform DELETE
command).
(11) The SM-SR shall update the EIS reflecting that the Profile is in “DISABLED” state, and
POL2 if present.
(12) Optionally, if the MNO has initially requested the Profile to be enabled, the SM-DP
shall request the SM-SR to enable the newly installed Profile by calling the
“ES3.EnableProfile” function.
(12a) The SM-SR handles the “ES3.EnableProfile” function request (if called by the
SM-DP) as described in section 5.4.8.
(12b) The SM-SR provides the status of the Profile Enabling function to the SM-DP.
(13) Finally, the SM-DP shall return the response to the “ES2.DownloadProfile” function
call to the MNO.
At the end of this procedure, if the Profile has been enabled, the MNO owning of the Profile
is able to perform any remote management operation to the Profile using its own Remote
Administration Server.
Procedure:
(1) In case of failure during the key establishment procedure or the Download Profile
procedure, the SM-DP shall call the “ES3.DeleteISDP” function with its relevant input
data.
(1a) The SM-SR shall trigger the HTTP session with the ISD-R if not already
opened.
(2) The SM-SR shall return the HTTP POST response with a body containing the
“ES5.DeleteProfile” function with the ICCID.
(3) The ISD-R shall delete the targeted ISD-P.
(4) The ISD-R shall return the execution response to the ISD-P deletion
“ES5.DeleteProfile” within a new HTTP POST request addressed to the SM-SR.
(5) The SM-SR shall forward the status of the “ES3.DeleteISDP”to the SM-DP.
(6) The failure message shall be returned to the MNO.
eUICC
MNO2 MNO 1 SM-SR Device ISD-R
(1) enableProfile(eid,iccid)
Start Conditions:
The start conditions are described in GSMA Remote Provisioning Architecture for the
Embedded UICC [1].
Procedure:
(1) MNO1 of the target Profile shall call the “ES4.EnableProfile” function with its relevant
input data.
(2) The SM-SR shall verify that the MNO1 request is acceptable (the verifications that the
SM-SR shall perform are described in the section 5.5.5), and in particular evaluates
POL2 of the currently Enabled Profile. If any of the conditions to be verified are not
satisfied, the SM-SR shall return a response indicating the failure, and the procedure
shall end.
(3) The SM-SR shall send an MT-SMS containing the “ES5.STORE DATA” command for
Profile enabling with its relevant input data (see section 4.1.1.2) to the ISD-R. The SM-
SR shall request a PoR to get the execution status of the “ES5.STORE DATA”
command.
(4) The ISD-R shall enforce POL1 of the currently Enabled Profile. If POL1 rejects
enabling of the target Profile, the ISD-R shall return directly the MO-SMS containing
the response indicating a failure, and the procedure shall end.
(5) If POL1 allows, the ISD-R shall disable the currently enabled ISD-P and enable the
targeted ISD-P.
NOTE: Profile change includes a change of the IMSI that is used to attach to the
network. As indicated in 3GPP TS 31.102 [52], such a change requires
special caution and should always be accompanied by a REFRESH
command to avoid inconsistent information being read by the terminal. So
while the targeted ISD-P is marked as enabled in this step, it may actually
become effective after the terminal executes the REFRESH command.
(6) The ISD-R shall return the MO-SMS containing the execution status of the
“ES5.STORE DATA” command to the SM-SR.
(6a) If the response to the “ES5.STORE DATA” command indicates a failure, the
SM-SR shall return a response indicating the failure to MNO1, and the
procedure shall end.
(7) The ISD-R shall send a REFRESH proactive command in UICC reset mode to the
Device. This will trigger the execution of a network attach procedure.
NOTE: In case of any error after this steps, indicating that the currently Enabled
Profile cannot provide connectivity, the ISD-R shall re-enable the previously
Enabled Profile as described in section 3.2.2.
(8) The eUICC and the Device shall perform a network attach procedure with the newly
Enabled Profile.
(9) The eUICC shall perform the notification procedure as described in section 4.1.1.11.
During this procedure, if the ISD-R doesn’t succeed in sending the SMS notification
(after having exhausted all possible retries), or doesn’t receive the SM-SR notification
confirmation, this shall be considered as a fatal error, and the previous note shall
apply. On reception of the SM-SR notification confirmation command, if POL1 of the
now Disabled Profile contains the rule “Profile deletion is mandatory when it is
disabled”, the ISD-R shall delete the disabled ISD-P and the contained Profile. The
eUICC shall send the response to the notification confirmation indicating whether the
disabled ISD-P has been deleted or not.
(10) On reception of the “ES5.HandleNotificationConfirmation” response, and if this
response indicates that the Disabled Profile has not been deleted, the SM-SR shall
evaluate POL2 of the Disabled Profile. If POL2 of the Disabled Profile contains the rule
“Profile deletion is mandatory when it is disabled”, the SM-SR shall perform step (11),
else it shall jump to step (12).
(11) The SM-SR shall send an MT-SMS containing the “ES5.DELETE” command with its
relevant input data (see section 4.1.1.4) to the ISD-R, targeting the Disabled Profile.
The SM-SR shall request a PoR to get the execution status of the “ES5.DELETE”
command.
(11a) The ISD-R shall enforce POL1 of the target Profile. If POL1 rejects the deletion
of the target Profile, the ISD-R shall return the MO-SMS containing the
response indicating the corresponding failure, and the procedure shall end.
(11b) If POL1 allows its deletion, the ISD-R shall delete the targeted ISD-P and the
contained Profile.
(11c) The ISD-R shall return the MO-SMS to the SM-SR containing the execution
status of the “ES5.DELETE” command.
(12) According to the executed sequence and the eUICC responses, the SM-SR shall
update the EIS to reflect that:
The target Profile has been enabled
The previously Enabled Profile has been disabled or deleted.
NOTE: POL1 and POL2 may have different content. As a consequence, both the
eUICC and the SM-SR have to ensure the ISD-P deletion based on their
respective Policy.
(13) The SM-SR shall return the response to the “ES4.EnableProfile” function to MNO1,
indicating that the Profile has been enabled.
(14) The SM-SR shall send the “ES4.HandleProfileDisabledNotification” or
“ES4.HandleProfileDeletedNotification” (if deletion was triggered by the evaluation
of POL1 and POL2) to MNO2, the owner of the Profile that was enabled at the
beginning of the procedure. In case MNO2 has no direct connection with the SM-SR
(SM-SR shall be able to detect such a situation based on its own database), the SM-
SR shall send this notification to the SM-DP authorised by MNO2 by calling the
“ES3.HandleProfileDisabledNotification” or the
“ES3.HandleProfileDeletedNotification”. The SM-SR can retrieve the SM-DP identity
based on the EIS content. Then the SM-DP, on reception of this notification, shall
forward it to MNO2 by calling the “ES2.HandleProfileDisabledNotification” or the
“ES2.HandleProfileDeletedNotification”.
NOTE: The MT-SMS and MO-SMS shall be secured according to section 2.4.
eUICC
MNO 1 SM-SR Device ISD-R
(1) enableProfile(eid,iccid)
Start Conditions:
The start conditions are identical to section 3.2.1.
Procedure:
Steps (1), (2), (3), (4), (5), (6), (6a) and (7) are also identical to section 3.2.1.
(8) A network attach failure occurs indicating that the Enabled Profile cannot provide
connectivity, or the eUICC doesn’t succeed to send the SMS notification (after having
exhausted all possible retries), or doesn’t receive the SM-SR notification confirmation.
(9) The ISD-R shall enable the Profile that was previously enabled before the reception of
the command, to re-establish connectivity.
NOTE: Profile change includes a change of the IMSI that is used to attach to the
network. As indicated in 3GPP TS 31.102 [52], such a change requires
special caution and should always be accompanied by a REFRESH
command to avoid inconsistent information being read by the terminal. So
while the targeted ISD-P is marked as enabled in this step, it may actually
become effective only after the terminal executes the REFRESH command.
(10) The ISD-R sends a REFRESH proactive command in UICC reset mode to the Device.
This will trigger the execution of a new network attach procedure.
(11) The eUICC and the Device shall perform a new network attach procedure with the
Profile Enabled before the start of the procedure.
(12) The eUICC shall perform the notification procedure as described in section 4.1.1.11.
On reception of the SMS notification, the SM-SR is informed that the target Profile has
not been enabled.
(13) Finally, the SM-SR shall return the response to the “ES4.EnableProfile” function to
MNO1; indicating a failure, the target Profile didn’t succeed to provide the connectivity.
This procedure is similar to the procedure “Enable Profile” described in section 3.2.
eUICC
MNO2 MNO 1 SM-DP SM-SR Device ISD-R
(0) enableProfile(eid, smsr-id ,iccid)
(1) enableProfile(eid,iccid)
Failed
(2) Check initial conditions
(3) SMS-MT [ES5.STORE DATA command]SCP80
Start Conditions:
The start conditions are described in GSMA Remote Provisioning Architecture for the
Embedded UICC [1].
Procedure:
(0) MNO1, the owner of the target Profile, shall call the “ES2.EnableProfile” function with
its relevant input data, see section 5.3.5, in particular the identification of the SM-SR in
charge of the management of the target eUICC.
(1) The SM-DP shall forward the request to the SM-SR provided by the MNO and shall
call the function “ES3.EnabledProfile”. During this step the SM-DP may have to
establish a link to the SM-SR (see section 2.6).
Steps (2) to (12) are the same as in the procedure “Profile Enabling” described in
section 3.2.1.
(13) The SM-SR shall return the response to the “ES3.EnableProfile” function to the SM-
DP, indicating that the Profile has been enabled.
(14) The SM-SR shall send the “ES4.HandleProfileDisabledNotification” or
“ES4.HandleProfileDeletedNotification” (if deletion was triggered by the evaluation
of POL1 and POL2) to MNO2, the owner of the Profile that was enabled at the
beginning of the procedure. In case MNO2 has no direct connection with the SM-SR,
the SM-SR shall apply the same process as described in point (14) of section 3.2.1.
(15) Finally, the SM-DP shall return the response to the “ES2.EnableProfile” function call
to MNO1.
eUICC
MNO 1 SM-DP SM-SR Device ISD-R
(0) enableProfile(eid, smsr-id iccid)
(1) enableProfile(eid,iccid)
Start Conditions:
The start conditions are the same as in section 3.3.1.
Procedure:
Steps (0) and (1) are the same as in section 3.3.1.
Steps (2) to (12) are the same as in procedure “Connectivity failure case” as described in
section 3.2.2.
(13) The SM-SR shall return the response to the “ES3.EnableProfile” function to the SM-
DP, indicating a failure, the target Profile didn’t succeed to provide the connectivity.
(14) Finally, the SM-DP shall return the response to the “ES2.EnableProfile” function to
MNO1, indicating a failure, the target Profile didn’t succeed to provide the connectivity.
NOTE: In case the previously Enabled Profile can also not provide connectivity, the
eUICC shall activate the Fall-back Mechanism.
The sequence flow in the Figure 18 describes the case where the targeted Profile can
successfully be disabled.
eUICC
MNO2 MNO 1 SM-SR Device ISD-R
(1) disableProfile(eid,iccid)
Start Conditions:
The start conditions are described in GSMA Remote Provisioning Architecture for the
Embedded UICC [1].
Procedure:
(1) MNO1, the owner of the target Profile shall call the “ES4.DisableProfile” function with
its relevant input data.
(2) The SM-SR shall verify that the MNO1 request is acceptable (the verifications that the
SM-SR shall perform are described in the section 5.5.6, and in particular checks that
Profile is enabled and Profile disabling is allowed in POL2. If any of the conditions to
be verified are not satisfied, the SM-SR shall return a response indicating the failure,
and the procedure shall end.
(3) The SM-SR shall send an MT-SMS containing the “ES5.STORE DATA” command for
Profile disabling with its relevant input data (see section 4.1.1.3) to the ISD-R. The SM-
SR shall request a PoR to get the execution status of the “ES5.STORE DATA”
command.
(4) The ISD-R shall enforce POL1 of the currently Enabled Profile. In case POL1 rejects
disabling, the ISD-R shall return PoR containing the response indicating a failure, and
the procedure shall end.
(5) The ISD-R shall disable the targeted ISD-P and the contained Profile and shall enable
the Profile with the Fall-back Attribute Set.
NOTE: Profile change includes a change of the IMSI that is used to attach to the
network. As indicated in 3GPP TS 31.102 [52], such a change requires
special caution and should always be accompanied by a REFRESH
command to avoid inconsistent information being read by the terminal. So
while the targeted ISD-P is marked as enabled in this step, it may actually
become effective only after the terminal executes the REFRESH command.
(6) The ISD-R shall return the MO-SMS containing the execution status of the
“ES5.STORE DATA” command to the SM-SR.
(6a) If the response to the “ES5.STORE DATA” command indicates a failure, the
SM-SR shall return a response indicating the failure to MNO1, and the
procedure shall end.
(7) The ISD-R sends a REFRESH proactive command in UICC reset mode to the Device.
This will trigger the execution of a network attach procedure.
NOTE: In case of any error after this step indicating that the current Enabled Profile
cannot provide connectivity, the ISD-R shall re-enable the previously
Enabled Profile as described in section 3.2.2.
(8) The eUICC and the Device shall perform a new network attach procedure with the
Profile with the Fall-back Attribute Set.
(9) The eUICC shall perform the notification procedure as described in section 4.1.1.11.
During this procedure, if ISD-R doesn’t succeed to send the SMS notification, or
doesn’t receive the SM-SR notification confirmation, this shall be considered as an
error, and the previous note shall apply.
On reception of the SM-SR notification confirmation command, if POL1 of the Disabled
Profile contains the rule “Profile deletion is mandatory when it is disabled”, the ISD-R
shall delete the disabled ISD-P and the contained Profile. The eUICC shall send the
response to the notification confirmation indicating whether the disabled ISD-P has
been deleted or not.
(10) On reception of the ES5.HandleNotificationConfirmation response, and if the
ES5.HandleNotificationConfirmation response indicates that the Disabled Profile
has not been deleted, the SM-SR shall evaluate POL2 of the Disabled Profile. If POL2
of the Disabled Profile contains the rule “Profile deletion is mandatory when it is
disabled”, the SM-SR shall perform step (11), else it shall jump to step (12).
(11) The SM-SR shall send an MT-SMS containing the “ES5.DELETE” command with its
relevant input data (see section 4.1.1.4) to the ISD-R, targeting the Disabled Profile.
The SM-SR shall request a PoR to get the execution status of the “ES5.DELETE”
command.
(11a) The ISD-R shall enforce POL1 of the target Profile. If POL1 rejects the deletion
of the target Profile, the ISD-R shall return the MO-SMS containing the
response indicating the corresponding failure, and the procedure shall end.
(11b) If POL1 allows its deletion, the ISD-R shall delete the targeted ISD-P and the
contained Profile.
(11c) The ISD-R shall return the MO-SMS to the SM-SR containing the execution
status of the “ES5.DELETE” command.
(12) According to the executed sequence and the eUICC responses, the SM-SR shall
update the EIS to reflect that:
The Profile having the fall-back attribute has been enabled
The previously Enabled Profile has been disabled or deleted.
NOTE: POL1 and POL2 may have different content. As a consequence, both the
eUICC and the SM-SR have to ensure the ISD-P deletion based on their
respective Policy.
(13) The SM-SR shall return the response to the “ES4.DisableProfile” function to MNO1,
indicating that the Profile has been disabled. In case the Profile has also been deleted
because of POL1 or POL2, the function execution response shall include an execution
status “Executed-WithWarning” indicating that the Profile has also been deleted.
(14) The SM-SR shall send the “ES4.HandleProfileEnabledNotification” to MNO2, the
owner of Profile with Fall-back Attribute Set that is now enabled. In case MNO2 has
no direct connection with the SM-SR (SM-SR shall be able to detect such situation
based on its own database), the SM-SR shall send this notification to the SM-DP
authorized by MNO2 by calling the “ES3.HandleProfileEnabledNotification”. The
SM-SR can retrieve the SM-DP identity based on the EIS content. Then the SM-DP,
on reception of this notification, shall forward it to MNO2 by calling the
“ES2.HandleProfileEnabledNotification”.
NOTE: The MT-SMS and MO-SMS shall be secured according to section 2.4.
This procedure is similar to the procedure “Disable Profile” described in section 3.4.
The sequence flow in the Figure 19 describes the case where the targeted Profile can
successfully be disabled.
eUICC
MNO2 MNO 1 SM-DP SM-SR Device ISD-R
(0) disableProfile(eid,smsr-id,iccid)
(1) disableProfile(eid,iccid)
Failed
(2) Check initial conditions
(3) MT-SMS [ES5.STORE DATA command]SCP80
Start Conditions:
The start conditions are described in GSMA Remote Provisioning Architecture for the
Embedded UICC [1].
Procedure:
(0) MNO1, the owner of the target Profile, shall call the “ES2.DisableProfile” function with
its relevant input data, see section 5.3.6, in particular the identification of the SM-SR in
charge of the management of the target eUICC.
(1) The SM-DP shall forward the request to the SM-SR identified by the MNO and shall
call the “ES3.DisableProfile” function with its relevant input data.
Steps (2) to (12) are the same as in the procedure “Profile Disabling” described in
section 3.4.
(13) The SM-SR shall return the response to the “ES3.DisableProfile” function to the SM-
DP, indicating that the Profile has been disabled. In case the Profile has also been
deleted because of POL1 or POL2, the function execution response shall include an
execution status “Executed-With Warning” indicating that the Profile has also been
deleted.
(14) The SM-SR shall send the “ES4.HandleProfileEnabledNotification” to MNO2, the
owner of the Profile with Fall-back Attribute Set that is now enabled.
(15) Finally, the SM-DP shall return the response to the “ES2.DisableProfile” function call
to MNO1.
NOTE: The MT-SMS and MO-SMS shall be secured according to section 2.4.
eUICC
MNO SM-SR ISD-R
(1) DeleteProfile(eid,Iccid)
Start Conditions:
The start conditions are described in GSMA Remote Provisioning Architecture for the
Embedded UICC [1].
Procedure:
(1) The MNO owning the target Profile shall call the “ES4.DeleteProfile” function with its
relevant input data.
(2) The SM-SR shall verify that the MNO request is acceptable (the verifications that the
SM-SR shall perform are described in the section 5.4.7), and in particular shall
evaluate POL2 of the target Profile. If any of the conditions to be verified are not
satisfied, the SM-SR shall return a response indicating the failure, and the procedure
shall end.
(3) The SM-SR shall check the state of the target Profile. If the target Profile is enabled
and if POL2 of the target Profile allows it to be disabled, then the SM-SR shall execute
the “ES4.DisableProfile” function to first disable the target Profile (and thus enable the
Profile having the Fall-back Attribute). In case of error, a response indicating the failure
is returned to the MNO, and the procedure shall end.
NOTE: Profile change includes a change of the IMSI that is used to attach to the
network. As indicated in 3GPP TS 31.102 [52], such a change requires
special caution and should always be accompanied by a REFRESH
command to avoid inconsistent information being read by the terminal. So
while the targeted ISD-P is marked as enabled in this step, it may actually
become effective only after the terminal executes the REFRESH command.
(4) The SM-SR shall send an MT-SMS containing the “ES5.DELETE” command with its
relevant input data (see section 4.1.1.4) to the ISD-R. The SM-SR shall request a PoR
to get the execution status of the “ES5.DELETE” command.
(5) The ISD-R, shall enforce POL1. If POL1 rejects deletion of the target Profile, the ISD-R
shall return directly the MO-SMS containing the response indicating a failure, and the
procedure shall end.
(6) If POL1 allows, the ISD-R shall delete the targeted ISD-P and the contained Profile.
(7) The ISD-R shall return the MO-SMS containing the execution status of the
“ES5.DELETE” command to the SM-SR.
(8) In case of successful execution, the SM-SR shall update the EIS to reflect the newly
deleted Profile.
(9) Finally, the SM-SR shall return the response to the “ES4.DeleteProfile” function to the
caller MNO.
NOTE: The MT-SMS and MO-SMS shall be secured according to section 2.4.
eUICC
MNO SM-DP SM-SR ISD-R
(1) DeleteProfile(eid, iccid, srid)
(2) DeleteISDP(eid,Iccid)
Start Conditions:
The start conditions are described in GSMA Remote Provisioning Architecture for the
Embedded UICC [1].
Procedure:
(1) The MNO owning the Profile which is to be deleted shall call the “ES2.DeleteProfile”
function with its relevant input data (we assume that the MNO knows the identification
and the address of the SM-SR, as the MNO has a Profile on the eUICC managed by
this SM-SR). The identification and address of the SM-SR in charge of the
management of the eUICC shall be provided at that time to the SM-DP.
(2) The SM-DP shall forward the MNO request to the relevant SM-SR.
(3) The SM-SR shall verify if the SM-DP request is acceptable (the verifications that the
SM-SR shall perform are described in section 5.4.9), and, in particular, shall evaluate
POL2 of the target Profile. If any of the conditions to be verified are not satisfied, the
SM-SR shall return a response indicating a failure, and the procedure shall end.
(4) The SM-SR shall check the state of the target Profile. If the target Profile is enabled
and if POL2 of the target Profile allows it to be disabled, then the SM-SR shall execute
the “ES4.DisableProfile” function to first disable the target Profile (and thus enable the
Profile having the Fall-back Attribute). In case of error, a response indicating the failure
shall be returned to the SM-DP, who forwards it to the MNO, and the procedure shall
end.
NOTE: Profile change includes a change of the IMSI that is used to attach to the
network. As indicated in 3GPP TS 31.102 [52], such a change requires
special caution and should always be accompanied by a REFRESH
NOTE: The MT-SMS and MO-SMS shall be secured according to section 2.4.
This sequence uses the same key establishment mechanism as section 3.1.2.
Failed
(2)Check initial conditions
(3)PrepareSMSRChange success
Failed
(6)Verify ECASD Certificate
(9) (CERT.SR.ECDSA)
(10)
- verify CERT.SR.ECDSA using PK.CI.ECDSA
- extract and store PK.SR.ECDSA from CERT.SR.ECDSA
- generate Random Challenge RC
(12) EstablishISDRKeySet success (RC)
(11) RC
(13) AuthenticateSMSR success
(14)
- Generate ephemeral key pair (eSK,SR.ECKA, ePK.SR.ECKA)
- Signs RC and ePK.SR.ECKA with SK.SR.ECDSA
(18)
- verify signature using PK.SR.ECDSA
- calculate ShS from ePK.SR.ECKA and SK.ECASD.ECKA
(19) (ShS)
(20)
- Optional: generate DR
- derive key set KS2 from ShS (and, if generated, DR)
- calculate receipt
(21) EstablisISDRKeySet (receipt and opt: DR)
(25) FinaliseISDRhandover
(28)HandovereUICC success
NOTE: The actions to perform in relationship to the MNO before the SM-SR change
are out of scope of this specification.
NOTE: The settings of the secure connections between the MNOs and the SM-SRs
are out of scope of this specification.
NOTE: The interaction between CI and SM-SR2 is out of the scope of this
procedure.
Start Conditions:
a) The EID of the eUICC is known to the Initiator MNO.
a) The two SRIDs of the SM-SR1 and SM-SR2 are known to the Initiator MNO.
b) The ISD-R is personalised with the keys of SM-SR1.
c) The change of SM-SR is allowed.
Procedure:
(1) The Initiator MNO shall call the “ES4.PrepareSMSRChange” function addressing the
new SM-SR with the EID as input data.
(2) SM-SR2 shall verify that it is prepared to manage this eUICC. A failure at this step will
stop the procedure and the error information shall be returned to the Initiator MNOs.
(3) SM-SR2 shall return a response indicating a success.
(4) The Initiator MNO shall call the SM-SR1 “ES4.SMSRChange” function with its relevant
input. SM-SR1 shall verify that there is no pending action for the eUICC. SM-SR1 shall
also reject any new management requests for the target eUICC as long as the
procedure is on-going. In case of pending action(s), SM-SR1 shall perform all the
pending actions and continue the procedure when these actions are completed.
(5) SM-SR1 shall call the SM-SR2 “ES7.HandoverEUICC” function with its relevant input
data.
(6) SM-SR2 shall verify that:
It has the capabilities to manage this eUICC.
The ECASD certificate is valid, using the EUM Certificate and the CI’s Root
Certificate. The ECASD certificate is part of the EIS and is provided in the
HandoverEUICC function. SM-SR2 shall extract PK.ECASD.ECKA from the
ECASD certificate.
(7) SM-SR2 shall call the “ES7.AuthenticateSMSR” function specifying the targeted
eUICC and providing the certificate identifying SM-SR2, CERT.SR.ECDSA.
(8) SM-SR1 shall call the “ES5.EstablishISDRKeySet” function with CERT.SR.ECDSA
as input data to authenticate SM-SR2.
(8a) The ISD-R shall verify that it is an SM-SR certificate.
(9) The ISD-R shall forward the CERT.SR.ECDSA to ECASD.
(10) The ECASD shall:
Verify CERT.SR.ECDSA using PK.CI.ECDSA;
Extract and store PK.SR.ECDSA from CERT.SR.ECDSA;
Generate a Random Challenge(RC).
(11) The ECASD shall return the Random Challenge (RC) to the ISD-R.
(12) The ISD-R shall return a response indicating a success with the generated Random
Challenge RC.
(13) SM-SR1 receives and shall forward the response to SM-SR2.
(14) SM-SR2 shall generate an ephemeral key pair (eSK.SR.ECKA, ePK.SR.ECKA) and
sign the received Random Challenge (RC) and ePK.SR.ECKA with SK.SR.ECDSA.
(15) SM-SR2 shall call the “ES7.CreateAdditionalKeyset” function specifying the targeted
eUICC and providing the ePK.SR.ECKA and the previously generated signature.
(16) SM-SR1 shall call the “ES5.EstablishISDRKeySet” function with ePK.SR.ECKA and
the signature as input data to request generation of an additional key set KS2.
(17) The ISD-R shall forward ePK.SR.ECKA and the signature to ECASD
(18) The ECASD shall:
(30) SM-SR1 shall return the result of the SM-SR change function to the Initiator MNO.
(31) SM-SR2 shall call the “ES4.HandleSMSRChangeNotification” and
“ES3.HandleSMSRChangeNotification“ functions, with its relevant input data, to
notify the MNOs (and the SM-DP s who represent the MNO), owning the Profiles on
the eUICC.
The eUICC shall support key establishment with and without the DR. The SM-SR decides
which option to use.
BSI TR-03111 [49] contains recommendations and requirements on the generation and
validation of ephemeral keys. In addition, NIST SP 800-56A [50] provides requirements on
the destruction of ephemeral keys and other intermediate secret data after their use.
End Conditions:
b) The ISD-R is personalised with only the key set of SM-SR2
f) The eUICC is registered within SM-SR2
g) The EIS and EID reside within SM-SR2
h) SM-SR1 is no longer related to the eUICC and its EIS record has been erased
i) The MNO(s) owning the Profile(s) are aware of the change
j) The Initiator MNO is aware of the SM-SR change
Personalise other key sets to have the capability to use other secure channels
Update the HTTPS parameters of the admin agent in the ISD-R, as specified in
GlobalPlatform Card Specification Amendment B [8]
EUM SM-SR
(1) registerEIS(eis)
Start Conditions:
The start conditions are described in GSMA Remote Provisioning Architecture for the
Embedded UICC [1].
It is assumed that the EUM has been given the SM-SR identity and address by the entity
that has ordered the eUICC.
Procedure:
(1) The EUM that has manufactured the eUICC shall call the “ES1.RegisterEIS” function
with the EIS data. The EIS shall include the data according to Annex E. The EIS shall
be signed by the EUM.
(2) The SM-SR shall verify that the EUM request is acceptable (the verifications that the
SM-SR shall perform are described in the section5.2.1). If any of the conditions to be
verified is not satisfied, the SM-SR shall return a response indicating the failure, and
the procedure shall end.
(3) The SM-SR shall store the new EIS in its database.
(4) The SM-SR shall return the successful response to the “ES1.RegisterEIS” function to
the caller EUM.
MNO eUICC
Initiator SM-SR SM-DP (of target Profile)
ISD-R ISD-P
Start Conditions:
The start conditions are described in GSMA Remote Provisioning Architecture for the
Embedded UICC [1], plus:
c) The target Profile has been verified not to be the Profile which has the Fall-
back Attribute Set.
Procedure:
(1) The Initiator shall send a Master Delete request to the SM-SR containing at least
ICCID and EID (the function used in this step is not covered in this specification).
(2) The SM-SR shall verify that the request is acceptable (at least the preconditions are
satisfied). If any of the verifications fails, the SM-SR shall return a response
indicating the failure, and the procedure shall end.
(3) SM-SR shall send a request for Master Delete authorisation to the SM-DP, which is
associated with the target Profile (the function used in this step is not covered in this
specification).
(4) SM-DP shall verify that the request is authenticated and authorized.
The SM-DP also requests authorisation from the MNO owner of the target Profile.
NOTE: The definition of this interface is out of the scope of this document.
If the verification of the request from the SM-SR fails, or if the MNO does not give its
authorisation, the SM-DP shall return that the deletion of target Profile is not allowed,
and the procedure shall end.
(5) If deletion of the Profile is allowed, a delete token as defined in section 4.1.1.6, shall
be returned to the SM-SR.
(6) The SM-SR shall send an MT-SMS containing the “ES5.MasterDelete” command
with its relevant input data (see section 4.1.1.6) to the ISD-R. The SM-SR shall
request a PoR to get the execution status of the “ES5.MasterDelete” command.
(7) The ISD-R shall execute the function as described in section 4.1.1.6. In case of an
error, a response indicating the failure shall be returned (step 9) to the SM-SR and
the procedure shall end.
(8) The ISD-P shall verify the token and if successful, the ISD-R shall delete the targeted
ISD-P and the contained Profile.
(9) The ISD-R shall return the MO-SMS containing the execution status of the
“ES5.MasterDelete” command to the SM-SR.
(10) In case of successful execution, the SM-SR shall update the EIS to reflect the
deleted Profile.
(11) Finally, the SM-SR shall return the response to the Master Delete request to the
Initiator (the function used in this step is not covered in this specification).
NOTE 1: The MT SMS and MO-SMS shall be secured according to section 2.4.
(3)Update POL2
Start Conditions:
The start conditions are described in GSMA Remote Provisioning Architecture for the
Embedded UICC [1].
Procedure:
(1) The MNO owner of the target Profile shall call the “ES2.UpdatePolicyRules”
function with its relevant input data, as described in section 5.3.3, in particular the
identification of the SM-SR in charge of the management of the target eUICC.
(2) The SM-DP shall forward the request to the SM-SR identified by the MNO and shall
call the “ES3.UpdatePolicyRules” function with its relevant input data, as described
in section 5.4.6
(3) The SM-SR shall update the POL2 of the targeted eUICC’s EIS.
(4) The SM-SR shall return the execution status of the “ES3.UpdatePolicyRules” to the
SM-DP.
(5) Finally, the SM-DP shall return the execution status of the “ES2.UpdatePolicyRules”
command to the MNO.
The procedure illustrates the usage of SMS as a possible transport protocol between the
MNO and eUICC, but can be also performed using other transport protocols.
(POL1)
(2) POL1 Update Command
(POL1)
Start Conditions:
The start conditions are described in GSMA Remote Provisioning Architecture for the
Embedded UICC [1].
Procedure:
(1) The MNO owning the target Profile shall send a MT-SMS containing the
“ES6.UpdatePOL1byMNO” function with its relevant input data (as described in
section 4.1.2.1).
(2) The MNO-SD receives this request and shall transfer it to the ISD-P with POL1 as
input data.
(3) The ISD-P shall process POL1 update of the target profile.
(4) The ISD-P shall return the execution status of the “ES6.UpdatePOL1byMNO” to
MNO-SD.
(5) Finally, the MNO-SD shall return the MO-SMS containing the execution status of the
“ES6.UpdatePOL1byMNO” command to the MNO.
NOTE: The MT-SMS and MO-SMS shall be secured according to section 2.7.
The procedure illustrates the usage of SMS as a possible transport protocol between the
MNO and eUICC, but can be also performed using other transport protocols.
eUICC
MNO
MNO-SD ISD-P
Start condition:
The MNO wants to update the Connectivity Parameters in their Profile
Procedure:
(1) The MNO owning the target Profile shall send a MT-SMS containing the Connectivity
Parameters to the MNO-SD.
(2) The MNO-SD shall transfer the Connectivity Parameters to the ISD-P.
(3) The ISD-P shall update the Connectivity Parameters.
(4) The ISD-P shall return the execution status to the MNO-SD.
(5) The MNO-SD shall send the MO-SMS containing the execution status to the MNO.
NOTE: The MT-SMS and MO-SMS shall be secured according to section 2.7.
The procedure illustrates the usage of SMS as a possible transport protocol between the
SM-SR and eUICC, but can be also performed using other transport protocols.
NOTE: The MT-SMS and MO-SMS shall be secured according to section 2.7
First network attachment of the Device: this indicates to the SM-SR in charge of
managing of the eUICC that the eUICC has been deployed on the field. The
notification of “First network attachment” happens only once in the eUICC’s lifetime. It
is triggered when the eUICC is network attached the very first time. Nevertheless,
note that this notification will be retried until the effective reception by the SM-SR,
including further network attachments if not succeeded during the first network
attachment session.
After an explicit new Profile Enabling request: this indicates to the SM-SR which is
the Profile which is currently enabled. This notification happens right after the network
attachment:
With the newly Enabled Profile in case of successful attachment
Or with the previously Enabled Profile or with the Profile having the Fall-back
Attribute, after the attachment with the requested Profile has failed.
After activation of the Fall-back Mechanism: this indicates to the SM-SR that the
Profile with the Fall-back Attribute has been enabled. This notification happens right
after the network attachment.
The notification may happen either on SMS, CAT_TP or HTTPS. The content of the
notification message is the same whatever protocol is used. The eUICC is free to select the
most relevant protocol according to the Device’s capabilities.
The notification has to be confirmed by the SM-SR. The confirmation will depend on the
protocol used for notification.
On reception of the SM-SR notification confirmation, the eUICC may perform any operation
as specified in one of the procedures including the notification sequence (like for instance
deletion of an ISD-P after its disabling, see section 3.6). After the eUICC has performed the
follow-up activities, the eUICC shall respond to the SM-SR notification confirmation function,
including the identification of the operation performed if any.
(1) At the end of the start-up sequence, the eUICC detects a first “power on” or a situation
where the Enabled Profile has changed compared to the previous eUICC reset.
(2) The eUICC sends an MO-SMS envelop. The SMS contains a secure SCP 80
Command Packet (MO-SMS shall be formatted as defined in section 2.4.3 with
security set to cryptographic checksum and no ciphering, the counter value of the
Command Packet shall be set to ‘0000000000’ and SPI set to “No counter available”)
using the SCP80 keys of the ISD-R, and containing the notification data structure
described in section 4.1.1.11. The secured data shall be coded as described in
section 4.1.1.11.
The eUICC shall use the network information of the Enabled Profile.
NOTE: This deviates from the typical secured packets generation defined in ETSI
TS 102 225 [4].
The eUICC shall retry sending until getting a successful response of the Device (‘0X’).
Note, that the eUICC shall implement a mechanism to avoid attempting an infinite
number of retries. Finally the eUICC shall use another protocol in case of final failure
for sending the notification using SMS.
(2a) The eUICC shall wait for the SM-SR confirmation. If no confirmation is received
by the eUICC after a certain amount of time (dependent on the configuration),
eUICC shall restart from step (2) (with the same sequence number).
(3) The SM-SR processes the notification.
(4) The SM-SR sends an MT-SMS containing the “ES5.
HandleNotificationConfirmation” command defined in section 4.1.1.12 in a SCP80
command packet. This MT-SMS shall target the entity on the eUICC that has sent the
notification.
(5) The ISD-R un-wraps the SCP80 security layer
(6) The eUICC processes the notification confirmation data; this may include follow-up
activities as required by the procedure where this sequence is used.
(7) The eUICC shall return the MO-SMS containing the response of the
“ES5.HandleNotificationConfirmation” response. The MO-SMS shall be secured
according to section 2.4.3. The eUICC shall retry sending until getting a successful
response of the Device (‘0X’). Note, that the eUICC shall implement a mechanism to
avoid attempting an infinite number of retries.
(1) At the end of the start-up sequence, the eUICC detects a first “power on” or a situation
where the Enabled Profile has changed compared to the last eUICC reset.
(2) The eUICC opens a BIP channel with the relevant parameters to address the SM-SR.
This includes having access to the Network Access Name, User Login and User
Password of the Enabled Profile.
(3) The ISD-R of the eUICC negotiates the PSK-TLS handshake with the SM-SR. The
TLS session shall be opened as defined in section 2.4.3. The ISD-R shall apply the
retry Policy as defined in GlobalPlatform Card Specification Amendment B [8].
(4) The eUICC sends the first HTTP POST. The notification contains the SM-SR URL with
the special query parameter “?msg” containing the data for eUICC notification defined
in section 4.1.1.11. The data of the notification shall be coded as hexadecimal string
(see section 5.1.1.1) with no spaces.
(5) ISD-R shall apply the retry Policy as defined in GlobalPlatform Card Specification
Amendment B [8].
(6) The SM-SR processes the notification
(7) The SM-SR shall return an HTTP response with a body containing the
“ES5.ConfirmationNotification” command acknowledging the reception of the
notification.
(8) The eUICC processes the notification confirmation; this may include follow-up activities
as required by the procedure where this sequence is used.
(9) The eUICC shall return the execution response of the
“ES5.ConfirmationNotification” command within a new HTTP POST request
addressed to the SM-SR.
(10) The SM-SR shall return an HTTP response “204 No content”.
eUICC
MNO1 MNO2 SM-SR Device ISD-R
Start Conditions:
The start conditions are described in GSMA Remote Provisioning Architecture for the
Embedded UICC [1]
The profile with Fall-back Attribute set has already been installed and is in disabled state.
Procedure:
(1) The Fall-back Mechanism is triggered in accordance with the Start Conditions.
(2) Ignoring POL1 of the Enabled Profile, the ISD-R shall disable the currently Enabled
Profile and shall enable the Profile with the Fall-back Attribute set.
(3) The ISD-R shall request the Device to perform the toolkit REFRESH command in
UICC Reset mode. This will trigger the execution of the network attach procedure.
(4) The eUICC and the Device shall perform a new network attach procedure.
(5) The eUICC shall perform the notification procedure as described in section 4.1.1.11.
The ISD-R shall ensure that all supported Default Notification mechanism will be used
to inform SM-SR about the Fall-back occurrence. After having exhausted all possible
retries to inform the SM-SR, the eUICC shall stay in this state and continue trying to
notify the SM-SR. On reception of the SMS notification, the SM-SR is informed that the
Fall-back mechanism was triggered and the last Enabled Profile has been disabled.
If the previously Enabled Profile has the POL1 rule “disable not allowed” set, then the
eUICCcan only switch back to this Profile until the POL1 of this Profile is changed. As long
as POL1 is not changed, this Profile can only be deleted by Master Delete function.
NOTE: A mechanism may permit to request to the eUICC to switch back to the previously
enabled profile once the network connectivity has been restored. The technical solution of
the mechanism mentioned above is out of scope.
The following table presents the normative list of all the functions that are defined in this
section.
Request-response functions:
Function
Interface Function group Functions
provider entity
CreateISDP
EnableProfile
DisableProfile
DeleteProfile
Platform Management
eUICCCapabilityAudit
MasterDelete
ES5 ISD-R
SetFallbackAttribute
EstablishISDRKeySet
UpdateSMSRAddressingParameters
UpdatePOL1byMNO
ES6 Profile Management MNO-SD
UpdateConnectivityParametersByMNO
DownloadAndInstallation
UpdateConnectivityParameters SCP03
Function
Interface Function group Notification handler functions
provider Role
HandleDefaultNotification
ES5 Platform Management SM-SR
HandleNotificationConfirmation
Parameters:
ISD-P-AID
Memory quota for the ISD-P (optional)
Prerequisite:
INSTALL COMMAND
The following tables describe the installation command and the specific parameters within
the data field:
Le ‘00’
b8 b7 b6 b5 b4 b3 b2 b1 Meaning
P2 is set to ‘00’; according to GlobalPlatform Card Specification [6] section 11.5, this means
no information provided.
Data Field
Privileges
Security Domain
Trusted Path
Authorized Management
Install Parameters
‘C9’ Application Specific Parameters: see GlobalPlatform Card Specification [6] section M
‘1-n’
11.5.3.2.
M (n
'81' 2 Secure Channel Protocol Identifier and Implementation Option “i”
occurrences)
Data Returned
None
Response Message
A single byte of '00' shall be returned indicating that no additional data is present, as defined
in the GlobalPlatform Card Specification [6] section 11.5.3.1.
The function makes the target Profile enabled, and disables implicitly the currently Enabled
Profile.
Parameters:
ISD-P-AID
Prerequisites:
SM-SR shall check that POL2 of both the currently Enabled Profile and the target
Profile allow this action.
Function Flow
Command Description:
CLA ‘80’
b8 b7 b6 b5 b4 b3 b2 b1 Meaning
1 - - - - - - - Last block
- 0 0 - - - - - No general encryption information or non-encrypted data
- - - 0 1 - - - DGI format of the command data field
- - - - - X X X RFU
Response Message
’69 E1’: POL1 of the currently Enabled Profile prevents this action.
This function makes the target Profile Disabled, and implicitly enables the Profile which has
the Fall-back Attribute set.
Parameters:
Command Description:
CLA ‘80’
b8 b7 b6 b5 b4 b3 b2 b1 Meaning
1 - - - - - - - Last block
Response Message
’69 85’: Profile is not in the Enabled state or Profile has the Fall-back Attribute.
Related Procedures: Profile and ISD-P deletion, Profile and ISD-P deletion via SM-DP
Parameters:
ISD-P-AID
Prerequisites:
DELETE COMMAND
Command Message
The DELETE command message shall be coded according to the following table:
CLA '80' - '8F', 'C0' - 'CF' or 'E0' - 'EF' See section 11.1.4 of GlobalPlatform Card Specification [6]
b8 b7 b6 b5 b4 b3 b2 b1 Meaning
b8 b7 b6 b5 b4 b3 b2 b1 Meaning
The data field of the DELETE command message shall contain the TLV coded name(s) of
the object to be deleted.
Response Message
A single byte of '00' shall be returned indicating that no additional data is present.
’69 85’: Profile is in Enable State or Profile has the Fall-back Attribute.
Related Procedures: -
NOTE: This function is not present in any procedure, however, may be used and
requested at any point of time by the Profile owner or SM-SR.
Parameters:
It may be used to ensure the data within the SM-SR’s EIS database is up to date. This
function uses two commands which shall be implemented as an extension of the
GlobalPlatform functions GET DATA and GET STATUS.
GET DATA
GET STATUS
Each ISD-P-AID
State of the ISD-Ps / Profiles
Prerequisites:
None
Commands Description:
GET DATA
Le ‘00’
Parameter P1 and P2
The P1 and P2 parameters define the tag of the data object to be read.
Tag ‘FF 21’: Extended Card Resources Information available for Card Content Management,
as defined in ETSI TS 102 226 [5].
Tag ‘BF 30’: Forwarded CASD Data mechanism as defined in GlobalPlatform Card
Specification Amendment C [9].
Data field
If the P1 and P2 parameters are set to ‘BF 30’, the data field shall include one (and only one)
of the following requests:
Length of the response 1, 2 or 3 '00' - '7F', or '81 80' - '81 FF' or '82 01 00' - '82 FF FF' C
Length of the
1, 2 or 3 '00' - '7F', or '81 80' - '81 FF' or '82 01 00' - '82 FF FF' M
certificate
Certificate Data
The following table describes the certificate data which will be returned by the eUICC
Capability Audit command.
The public key data object contains an elliptic curves (EC) public key and the corresponding
domain parameters.
An ECASD shall have at least one set of elliptic curve parameters preloaded (see
GlobalPlatform Card Specification Amendment E [11]) as defined in the table above.
GET STATUS
Le ‘00’
Parameter P1
Parameter P2
b8 b7 b6 b5 b4 b3 b2 b1 Meaning
X X X X X X - - RFU
- - - - - - Response Data Structure according to table 11-36 of
1 -
GlobalPlatform Card Specification [6].
The GET STATUS command message data field shall contain at least one TLV coded
search qualifier: the AID (tag ‘4F’). It shall be possible to search for all the occurrences that
match the selection criteria according to the reference control parameter P1 using a search
criteria of ‘4F 00’.
The following other search criteria shall be supported: Life Cycle State (tag ‘9F70’) and ISD-
P Attributes (tag ‘53’).
The tag list (tag ‘5C’) indicates to the UICC how to construct the response data for each
eUICC entity matching the search criteria.
… … … …
‘5C’ 1-n Tag list M
Response Message
The tag list (tag ‘5C’) identifies the extended information for ISD-P. The coding of the
response message is defined as followed:
b8 b7 b6 b5 b4 b3 b2 b1 Meaning
X X X X X X X - RFU
- - - - - - - 0 Fall-back Attribute not set
- - - - - - - 1 Fall-back Attribute set
Table 29: ISD-P Attributes
Description: This function deletes a target Profile on the target eUICC regardless of POL1
rules. This function shall use the ISD-P token verification key(AES key with key version
number ‘70’ and key identifier ‘01’) in order to authenticate the source of the command.
Parameter:
ISD-P-AID
Delete Token, calculated as defined in GlobalPlatform Card Specification Amendment
D [10] , provided by the SM-DP
Prerequisites:
The target Profile shall not be the Profile which has the Fall-back Attribute set.
The target Profile shall be in the Disabled state.
Function flow
As token protection is only used by this command, this token shall be processed by the ISD-
P even though the ISD-P does not have the token verification privilege. No receipt shall be
generated by the command.
NOTE: This deviates from the typical handling of tokens by SDs.
Command Description:
Command Message
DELETE COMMAND
The DELETE command message shall be coded according to the following table:
CLA ‘80’ – ‘8F’, ‘C0’ – ‘CF’ or ‘E0’ – ‘EF’ See section 11.1.4 of GlobalPlatform Card Specification [6]
b8 b7 b6 b5 b4 b3 b2 b1 Meaning
- X X X X X X X RFU
b8 b7 b6 b5 b4 b3 b2 b1 Meaning
The Delete [card content] Data Field shall contain the following parameters:
Response Message
A single byte of ‘00’ shall be returned indicating that no additional data is present.
’69 85’: Profile is not in the Disabled state or Profile has the Fall-back Attribute.
Related Procedures: -
Description: This function sets the Fall-back Attribute for one Profile on the target eUICC.
Parameters:
ISD-P-AID
Prerequisites:
The Profile to be assigned the Fall-back Attribute must have Provisioning capability.
Function flow
Command Description:
This function is realised through the GlobalPlatform STORE DATA command as defined in
GlobalPlatform Card Specification [6].
Command Message
The STORE DATA command message shall be coded according to the following table:
CLA ‘80’ – ‘8F’, ‘C0’ – ‘CF’ or ‘E0’ – ‘EF’ See section 11.1.4 of GlobalPlatform Card Specification [6]
Le Not present
b8 b7 b6 b5 b4 b3 b2 b1 Meaning
1 - - - - - - - Last block
- 0 0 - - - - - No general encryption information or non-encrypted data
Response Message
Description: This function is used to perform mutual authentication between the new SM-
SR and the eUICC and to establish a shared secret key set between the new SM-SR and
the ISD-R.
Adding this step to Scenario 3 requires an additional STORE DATA command to precede
the command defined for Scenario 3. This new command provides the eUICC with the
certificate of the new SM-SR and retrieves a random challenge from the eUICC. This
random challenge then has to be signed by the new SM-SR and sent to the eUICC in the
second command to prove to the eUICC that the new SM-SR is in possession of the private
key related to the certificate presented. The sequence is pictured in Figure 22 of section 3.8.
Parameters:
The ECASD certificate was provided to and verified by the new SM-SR
The new SM-SR has generated an ephemeral key pair
The new SM-SR has a signature from the CI.
Command Description:
Command Message
The STORE DATA command message shall be coded according to the following table:
CLA ‘80’ – ‘8F’, ‘C0’ – ‘CF’ or ‘E0’ – ‘EF’ See section 11.1.4 of GlobalPlatform Card Specification [6]
INS ‘E2’ STORE DATA
b8 b7 b6 b5 b4 b3 b2 b1 Meaning
0 - - - - - - - More blocks
- - - - - X X - RFU
The following TLV-encoded data are signed off-card with SK.CI.ECDSA to generate the
content of tag ‘5F37’ (signature), as described in GlobalPlatform Card Specification
Amendment E [11]:
Response Message
The STORE DATA command message shall be coded according to the following table:
CLA '80' - '8F', 'C0' - 'CF' or 'E0' - 'EF' See section 11.1.4 of GlobalPlatform Card Specification [6]
b8 b7 b6 b5 b4 b3 b2 b1 Meaning
1 - - - - - - - Last block
- 0 0 - - - - - No general encryption information or non-encrypted data
- - - - - X X - RFU
b8 b7 b6 b5 b4 b3 b2 b1 Description
In case the scenario parameter specifies usage of HostID+CardID (bit b3=1), then the SM-
SR and the eUICC shall use the SIN-LV and SDIN-LV of ISD-R, in lieu of the IIN-LV and
CIN-LV of the card; this deviates from GP Amendment E [11].
The SM-SR knows the SIN and SDIN of ISD-R as per the EIS.
The following TLV-encoded data are signed off-card with SK.SR. ECDSA to generate the
content of DGI '5F37' (signature), as described in GlobalPlatform Card Specification
Amendment E [11]:
Response Message
‘85’ Variable DR C
Description: This function deletes all keys in the ISD-R except for the key ranges indicated
by the command parameter(s). It is intended as a simple clean-up mechanism for the new
SM-SR after takeover to get rid of all keys of the previous SM-SR in the ISD-R.
Parameters:
None.
Command Description:
DELETE COMMAND
Le ‘00’
The Delete [card content] Data Field shall contain one or two instances of following TLV:
NOTE: Two TLVs allow for one SCP80 and one SCP81 key set to “survive” key
clean-up.
Example:
‘F2 03 06 01 03 F2 03 43 01 02’ will delete all keys except those with Key Version Number –
Key identifier: ‘06’ – ‘01’, ‘06’ – ‘02’, ‘06’ – ‘03’, ‘43’ – ‘01’ and ‘43’ – ‘02’.
Function flow
Check that all keys of the key set(s) used for setting up the current secure channel
are among the keys not to be deleted. For SCP81, this also includes the key set used
for the push SM. If that check fails, the command is terminated without deleting any
key.
Delete all keys except those in the key ranges indicated in the command parameters.
Response Message
The data field of the response message shall contain a single byte of ‘00’.
’69 85’: Key(s) of key set used for the current secure channel is/are among the keys to be
deleted.
Description:
This function may be used by the SM-SR outside the SM-SR Change procedure in case
some parameters have changed.
ISD-R AID
SM-SR addressing Parameters
NOTE: The HTTPS Connectivity Parameters can be updated by the function
defined in GlobalPlatform Card Specification Amendment B [8].
Prerequisites
- None
Function flow
Upon reception of the SM-SR addressing Parameters update command, the eUICC shall:
Commands
CLA ‘80’
Le Not present
b8 b7 b6 b5 b4 b3 b2 b1 Meaning
1 - - - - - - - Last block
- - - - - X X X RFU
Description
*As defined in ETSI TS 102 226 [5] in the section “Data for CAT_TP link establishment” and
“Data for BIP channel opening”.
Response Message
Related Procedures: Profile Enabling, Profile Enabling via SM-DP, Profile Disabling, Fall-
back
Description: This function provides a default notification from the eUICC to the SM-SR.
Parameters:
EID
ISD-P AID
Mobile Equipment Identification (for example MEID, IMEI)
Notification Sequence number
Notification type
Prerequisites:
Note: There is no single method implemented by all devices to notify the eUICC of
network attachment. The eUICC may rely on various heuristics to determine that
network attachement is effective. As a worst-case safeguard, the eUICC shall
attempt to send profile change notifications within a time interval of 10 STATUS
events after card reset.
eUICC notification tag 1 ‘E1’. To avoid conflicts with the values defined in ETSI TS M
101 220 [2], a tag from the proprietary class is used.
IMEI and MEID are optional. In case the eUICC encounters any issue while getting the
Mobile Equipment Identification of the Device, no value is provided. If both IMEI and MEID
are retrieved, only one could be sent to limit overall message length.
3 Notification type 1
Notification type:
Coding:
2 Length=’02’ 1
The notification sequence number identifies the notification message, and allows the SM-SR
to distinguish a new notification from a retry. In case of a retry, the eUICC shall use the
same notification sequence number. When a Notification Confirmation has been successfully
received by the SM-SR, the eUICC shall increment the sequence number for the next
notification.
NOTE : Depending on the eUICC implementation, the notification may also contain
additional TLVs using EUM-specific tags.
An SM-SR is not required to record or process such specific tags, and can simply ignore
them
In any case, the size of the complete notification shall fit into one SMS-MO if the notification
is sent by SMS, and shall not exceed the size of 240 bytes if sent by HTTP or CAT-TP.
A protocol priority order for default notification may be defined for every Profile, using SMS,
HTTPS and CAT_TP.
If not defined for a Profile, the default priority order is set as follow:
Priorit Protocol
y
1 SMS
2 HTTPS
3 CAT_TP
Description: This function confirms the notification and triggers potential follow-up activities
required by POL1.
Parameters:
Command Description:
This function is realised through the GlobalPlatform STORE DATA command as defined in
GlobalPlatform Card Specification [6].
Command Message
The STORE DATA command message shall be coded according to the following table:
CLA ‘80’ – ‘8F’, ‘C0’ – ‘CF’ or ‘E0’ – ‘EF’ See section 11.1.4 of GlobalPlatform Card Specification [6]
INS ‘E2’ STORE DATA
P1 ‘89’ Reference control parameter P1
P2 ‘00’ Block number
Lc ‘xx’ Length of data field
b8 b7 b6 b5 b4 b3 b2 b1 Meaning
1 - - - - - - - Last block
- - - - - - - 1 Case 4 command
- - - - - X X - RFU
Response Message
The data field of the response message shall contain the data structure below.
NOTE: In the current version, the response will carry only one AID. However, the
structure is defined in a generic way so that results of other follow-up
activities can be added when required.
NOTE: If no follow-up activity has been performed at all, the data field shall contain
tag 80 followed by a length of zero, and no value.
POL1
Prerequisites
Le ‘00’
b8 b7 b6 b5 b4 b3 b2 b1 Meaning
0 0 1 0 0 0 0 0 For personalization
P2 is set to ‘00’: according to GlobalPlatform Card Specification [6] section 11.5, this means
no information is provided.
Data Field
Application AID (Reserved value for Profile’s ISD-P) ’05 – 10’ ‘xxxx’ M
Length of data ’1’ ‘00’ M
The reserved value for Profile’s ISD-P indicates that the Security Domain targeted by the
INSTALL [for personalization] command is the ISD-P of the Profile containing the MNO-SD.
NOTE: This mechanism avoids the MNO having to know and keep track of the ISD-
P AID assigned by the SM-SR.
Response Message
A single byte of '00' shall be returned indicating that no additional data is present, as defined
in the GlobalPlatform Card Specification [6] section 11.5.3.1.
None
STORE DATA command:
Le Not present
b8 b7 b6 b5 b4 b3 b2 b1 Meaning
1 - - - - - - - Last block
- - - - - X X X RFU
POL1 coding
b8 b7 b6 b5 b4 b3 b2 b1 Meaning
- - - - - 0 0 0 No POL1
rule active
- - - - - 0 - 1 Disabling of
this Profile
not allowed
- - - - - 0 1 - Deletion of
this Profile
not allowed
- - - - - 1 0 0 Profile
deletion is
mandatory
when its
state is
changed to
disabled
- - - - - X X X Other
combinations
are forbidden
X X X X X - - - RFU
Response Message
Connectivity Parameters
Prerequisites
Upon reception of the Connectivity Parameters update command, the eUICC shall:
Update the Connectivity Parameters of the ISD-P containing the targeted MNO-SD.
Commands
Description: This function is used to perform mutual authentication between the SM-DP and
the eUICC and to establish a shared secret key set between the SM-DP and the ISD-P.
Adding this step to Scenario 3 requires an additional STORE DATA command to precede
the command defined for Scenario 3. This new command provides the eUICC with the
certificate of the SM-DP and retrieves a random challenge from the eUICC. This random
challenge then has to be signed by the SM-DP and sent to the eUICC in the second
command to prove to the eUICC that the SM-DP is in possession of the private key related
to the certificate presented. The sequence is pictured in Figure 11 of section 3.1.2.
Parameters:
ISD-P AID
Ephemeral public key of the SM-DP
Certificate for the SM-DP
Prerequisites:
This function is realized through GlobalPlatform INSTALL [for personalization] and STORE
DATA commands as defined in GlobalPlatform Card Specification [6].
Command Message
Le ‘00’
b8 b7 b6 b5 b4 b3 b2 b1 Meaning
0 0 1 0 0 0 0 0 For personalization
P2 is set to ‘00’: according to GlobalPlatform Card Specification [8] section 11.5, this means
no information is provided.
Data Field
Response Message
A single byte of '00' shall be returned indicating that no additional data is present as defined
in the GlobalPlatform [6] section 11.5.3.1.
None
Command Message
The STORE DATA command message shall be coded according to the following table:
CLA ‘80’ – ‘8F’, ‘C0’ – ‘CF’ or ‘E0’ – ‘EF’ See section 11.1.4 of GlobalPlatform Card Specification [6]
Le ‘00’
b8 b7 b6 b5 b4 b3 b2 b1 Meaning
0 - - - - - - - More blocks
- - - - - X X - RFU
The following TLV-encoded data are signed off-card with SK.CI. ECDSA to generate the
content of tag ‘5F37’ (signature), as described in GlobalPlatform Card Specification
Amendment E [11]:
Response Message
Command Message
The STORE DATA command message shall be coded according to the following table:
CLA '80' - '8F', 'C0' - 'CF' or 'E0' - 'EF' See section 11.1.4 of GlobalPlatform Card Specification [6]
Le ‘00’
b8 b7 b6 b5 b4 b3 b2 b1 Meaning
1 - - - - - - - Last block
- 0 0 - - - - - No general encryption information or non-encrypted data
- - - - - X X - RFU
The following TLV-encoded data are signed off-card with SK.DP. ECDSA to generate the
content of DGI '5F37' (signature), as described in GlobalPlatform Card Specification
Amendment E [11]:
b8 b7 b6 b5 b4 b3 b2 b1 Description
0 0 0 0 – X X X As defined in GlobalPlatform Card Specification
Amendment E: Security Upgrade for Card
Content Management [11] section 4.8.1
In case the scenario parameter specifies usage of HostID+CardID (bit b3=1), then the SM-
DP and the eUICC shall use the SIN-LV and SDIN-LV of ISD-R, in lieu of the IIN-LV and
CIN-LV of the card; this deviates from GP Amendment E [11], and ISD-P has no SIN/SDIN
yet.
The SM-DP can know the SIN and SDIN of ISD-R by inspecting the EIS retrieved on ES3.
Response Message
'85' Variable DR C
'86' Variable Receipt M
NOTE: The profile package itself is protected by SCP03t as defined in the next
section.
EXTERNAL AUTHENTICATE
P2 ‘00’
Lc ‘10’ Length of the host cryptogram and MAC
Data ‘XX…XX’ Host cryptogram and MAC (see to
GlobalPlatform Card Specification
Amendment D [10] for computation of
host cryptogram and MAC)
Le Not Present
These two commands shall be following by any ES8 command as defined in subsequent
sections depending on the procedure to be performed.
Those ES8 commands and their responses are modified by encrypting the data part and
adding a MAC as defined in GlobalPlatform Card Specification Amendment D [10].
NOTE: The ISD-P identification is provided within the ES5 transport protocol.
The Profile shall be protected by SCP03t. The Profile shall include in particular:
The setting of POL1, if defined by MNO
The setting of connectivity parameters (see section 4.1.3.4)
The setting of ISD-P state from ‘CREATED’ to ‘DISABLED’ when installation is
finished.
Parameters:
Profile
Prerequisites:
This section defines a secure channel protocol based on GlobalPlatform's SCP03 usable for
TLV structures, named SCP03t hereafter.
Tag values are defined so that they can be used without conflict within the expanded remote
management format which is used to transport data inside SCP80 or SCP81 of ES5.
As no SWs are used, errors are indicated by a special response tag with tag number +'80'
(resulting in a 2 byte tag).
The data transported in the command TLVs specified below shall consist of the Profile
Package specified in [53]; the response TLVs shall transport Profile Element (PE) responses
as provided by the Profile Package processing specified in [53]. The Profile Package
consists of a sequence of PE TLVs. However, SCP03t does not take that PE structure into
account, but treats the whole Profile Package as one block of transparent data. That block of
data is split into segments of a maximum size of 1024 bytes (including the tag and length
field). The eUICC shall support profile command data segments of at least up to this size.
The following sections describe the changes required to move from SCP03 to SCP03t.
Everything else is inherited from SCP03.
As the security mechanisms are exactly the same as SCP03, the SCP03 key sets are used
for SCP03t.
Secure channel initiation uses 2 TLVs equivalent to the INITIALIZE UPDATE and the
EXTERNAL AUTHENTICATE APDUs.
Thereafter, command and response TLVs are protected in the same way as SCP03 APDUs.
Each command TLV triggers one response TLV. A response may be empty or carry
response data from the application layer.
The data field of the response TLV shall contain the concatenation without delimiters of the
following data elements, encapsulated in a TLV with tag '84'.
In case of an error, tag '9F44' is used. The following values are defined:
The security level shall be set to '33': "C DECRYPTION, R ENCRYPTION, C MAC, and R
MAC".
The MAC shall be computed based on the values present in the TLV, as follows:
=L + LMAC = ‘11’
MAC chaining value (16 bytes ‘00’) ‘85’ Lcc Security Host cryptogram
level
If the message is accepted, a Response TLV with tag '85' and length zero shall be returned.
In case of an error, tag '9F45' is used. The following values are defined:
For encapsulating encrypted profile command data in a SCP03t TLV, tag '86' is used.
C-MAC calculation as
defined in section 6.2.4 S-MAC
For encapsulating encrypted profile response data in a SCP03t TLV, tag '86' is used.
If there is no response data field, the length is ‘00’, and no R-MAC shall be generated, so the
response TLV shall be ’86 00’.In case of an error, tag '9F46' is used, and no R-MAC nor R-
ENCRYPTION shall be generated. The response data field contains only one byte, the
following values are defined:
R-MAC calculation as
defined in section 6.2.4 S-RMAC
ISD-P AID
Connectivity Parameters
Prerequisites
None
Function flow
Upon reception of the Connectivity Parameters update command, the eUICC shall:
CLA ‘80’
INS ‘E2’ STORE DATA
Le Not present
b8 b7 b6 b5 b4 b3 b2 b1 Meaning
1 - - - - - - - Last block
NOTE 1: The order of the TLVs in the Connectivity parameter DGI defines the priority.
Description
SMSC Address*
* Comprehension TLVs as defined in ETSI TS 102 223 [3]. The CR bit of the tags shall be
set to zero.
Description
Bearer description*
User Login*
User Password*
* Comprehension TLVs as defined in ETSI TS 102 223 [3]. The CR bit of the tags shall be
set to zero.
Response Message
ES1, interface between the two entities fulfilling the Role EUM and the Role SM-SR.
ES2, interface between the two entities fulfilling the Role MNO and the Role SM-DP.
ES3, interface between the two entities fulfilling the Role SM-DP and the Role SM-
SR.
ES4, interface between the two entities fulfilling the Role MNO and the Role SM-SR.
ES7, interface between the two entities fulfilling the Role SM-SR and the Role SM-
SR.
The functions in this section are grouped into function groups. Each function group is
provided by a unique Role and corresponds to an autonomous and consistent functionality.
When a function group is implemented by a Role, all the functions associated to this function
group shall be implemented by that Role. In other words, function groups cannot be partially
implemented; if a special function is requested, then all the functions of the corresponding
function group shall be implemented.
The following table presents the normative list of all the functions that are defined in this
section.
Request-response functions:
Function
Interface Function group Functions
provider Role
GetEIS
DownloadProfile
SM-DP
Profile Management UpdatePolicyRules
UpdateSubscriptionAddress
ES2
EnableProfile
Platform Management DisableProfile SM-DP
DeleteProfile
GetEIS
AuditEIS
CreateISDP
SendData
SM-SR
Profile Management ProfileDownloadCompleted
ES3 UpdatePolicyRules
UpdateSubscriptionAddress
UpdateConnectivityParameters
EnableProfile
Platform Management DisableProfile SM-SR
DeleteISDP
GetEIS
UpdatePolicyRules
Profile Management UpdateSubscriptionAddress SM-SR
AuditEIS
ES4
EnableProfile
Platform Management DisableProfile SM-SR
DeleteProfile
PrepareSMSRChange
eUICC Management SM-SR
SMSRchange
CreateAdditionalKeySet
ES7 eUICC Management HandoverEUICC SM-SR
AuthenticateSMSR
Function
Interface Function group Notification handler functions
handler/recipient
HandleProfileDisabledNotification
ES2 Platform HandleProfileEnabledNotification MNO
Management
HandleProfileDeletedNotification
eUICC HandleSMSRChangeNotification
MNO
Management
HandleProfileDisabledNotification
Platform
HandleProfileEnabledNotification SM-DP
ES3 Management
HandleProfileDeletedNotification
The AID (Application IDentifier) of an Executable Load File, Hexadecimal string representation of 5 to
AID
an Executable Module, a security domain, or an Application. 16 bytes.
Any date and time used within any interface of this String format as specified by W3C:
specification
YYYY-MM-DDThh:mm:ssTZD
Where:
YYYY = four-digit year
MM = two-digit month (01=Jan, etc.)
DATETIME DD = two-digit day of month (01-31)
hh = two digits of hour (00 -23)
mm = two digits of minute (00 - 59)
ss = two digits of second (00 - 59)
TZD = time zone designator (Z, +hh:mm or
-hh:mm)
Ex: 2001-12-17T09:30:47Z
The EID type is for representing an eUICC-ID. An eUICC-ID
is primarily used in the “Embedded UICC Remote
EID Provisioning and Management System” to identify an eUICC. Hexadecimal string
See section 2.2.2 for EID description.
The Mobile Station ISDN (Integrated Services Digital String representation of up to 15 decimal
MSISDN
Network) Number digits, as defined in [22]
5.1.1.3.2 POL2-RULE
The POL2-RULE type is defined by the following data structure:
Enumeration{ENABLE,
action Identifies the action/function on which the rule has to be applied. DISABLE, 1 M
DELETE}
Enumeration{
qualification Indicates the final result of the rule that has to be applied. Not allowed, 1 M
Auto-delete}
Any other combination shall be treated as not valid regarding this specification release.
5.1.1.3.3 POL2
The POL2 type is defined by the following data structure:
Rules List of Policy Rules defined for a given Profile. POL2-RULE 1..N O
An empty POL2 shall be represented as a POL2 data structure having no rules inside
fallbackAttribute Boolean value to indicate the Profile having the Fall-back Attribute set. Boolean 1 M
SUBSCRIP
subscriptionAddress The address of the Subscription associated to this Profile. TION- 1 M
ADDRESS
Enumeratio
n{
The current state of the ISD-P containing the Profile as per defined in
GSMA Remote Provisioning Architecture for Embedded UICC [1]. The Created,
state 1 M
‘Deleted’ state is not defined as a possible state; a ‘Deleted’ ISD-P will
simply not appear in the list of eUICC Profiles. Enabled,
Disabled}
Identification of the SM-DP that has initially downloaded and installed the
Profile. This value can be empty in case the Profile has been loaded
smdp-id during issuance of the eUICC, else the value is mandatory. OID 1 C
Once this information is associated to the Profile, it remains unchanged
during the Profile’s life-time.
Indicates the amount of memory free within Profile allocated space. This
information is provided in case of using the quota management
mechanism.
freeMemory Integer 1 C
pol2 Contains the POL2 rules defined for this Profile. POL2 1 M
5.1.1.3.5 KEY-COMPONENT
The KEY-COMPONENT type is defined by:
Data
Description Type No. MOC
name
Definition of the key type coding. This defines the algorithm associated with
the key, coded on 1 byte. Meaning of the byte value follows Hexadecimal string
type GlobalPlatform Card Specifications [6], section 11.1.8. representation of exactly 1 1 M
byte
i.e. '88' AES (16, 24, or 32 long keys)
The value as a binary data. This data shall be encrypted with a transport
value Hexadecimal string 1 M
key agreed between the provider and the requester.
5.1.1.3.6 KEY
The KEY type is defined by:
index The Key index as an integer value between 0 and 127 (as defined in
integer 1 M
GlobalPlatform Card Specifications)
A simple key is defined using only one Key Component, but it is also KEY-
KeyComponents 1..N M
possible to define keys with multiple key components (like RSA keys) COMPONENT
5.1.1.3.7 CERTIFICATE
The CERTIFICATE type is defined by:
Data
Description Type No. MOC
name
Indicates the index of the private key, being the private counterpart of the certificate.
index Index is an integer value between 0 and 127 (as defined in GlobalPlatform Card Integer 1 M
Specifications)
Identifier of the CA that has issued (and signed) the certificate. This shall match the
ca-id OID 1 M
CA Identifier included in the certificate itself.
Value of the certificate. The certificate shall be coded according to GlobalPlatform Hexadecimal
value 1 M
Card Specification UICC Configuration [7], section 9.2.1 string
5.1.1.3.8 KEYSET
The KEY SET type is defined by:
Data
Description Type No. MOC
name
The version of the key set (as an integer value). The version
value of a key set shall be unique within SD definition. Possible
version values are from 1 to 127. Integer 1 M
Example: ‘48’ stands for a SCP03 version ‘30’
Enumeration{
Generally key set usage (SCP03...) can be fully deduced from
the key set version. If version information should not be used, SCP03, SCP80, SCP81,
type 1 O
this element shall be present to indicate the real usage of this TokenGeneration,
key set. ReceiptVerification, CA}
keys List of keys contained in the key set KEY 1..128 C(1)
NOTE: A key set provisioned at SM-SR level may be composed of a set of keys or
certificates.
A key set shall include at least one key or certificate. But for a given index, it may exist only
one key or one certificate.
5.1.1.3.9 SECURITY-DOMAIN
The SECURITY-DOMAIN type is defined by:
Data
Description Type No. MOC
name
sdin The security domain Identification Number as defined in GlobalPlatform Card Hexadecimal string 1 M
Specification [6]
numeration{ISD-R,
role Identification of the Role of the security domain. 1 M
ECASD}
keysets The list of key sets defined within the security domain KEYSET 1..127 M
5.1.1.3.10 EUICC-CAPABILITIES
The EUICC-CAPABILITIES type allows listing the capabilities supported by the eUICC.
CAT_TP- If CAT_TP according to ETSI TS 102 127 [25] is supported by the eUICC. Boolean 1 M
Support
Shall contain the highest supported release number of ETSI TS 102 127 (defining
CAT_TP) that is implemented by the eUICC.
Conditional to the support of the CAT_TP-Support.
CAT_TP-Version Version 1 C
In case of support, the supported version shall be at least the minimum version
mandated by the present specification.
If RAM over HTTP according to GlobalPlatform Card Specification Amendment B [8] Boolean 1 M
HTTP-Support
is supported by the eUICC.
Shall contain the highest supported release number of ETSI TS 102 225 (defining
secure packet) that is implemented by the eUICC.
secure-packet-
The support of this feature as defined in ETSI TS 102 225 is not optional. The Version 1 M
version
supported version shall be at least the minimum version mandated by the present
specification.
Shall contain the highest supported release number of this specification SGP.02
that is implemented by the eUICC. The support of this feature is obviously not
optional.
As a consequence, the eUICC shall be compliant will all relevant specifications
referenced in this specification.
Remote- Note 1: If the document version has less than three digits, one or more extra “.0”
provisioning- shall be appended to obtain a value that conforms to the type “Version” defined Version 1 M
version
in Table 97. For example a value of “3.1.0” denotes that the eUICC is compliant with
version 3.1 of SGP.02
EID The EID type is for representing an eUICC-ID. An eUICC-ID is primarily EID 1 M
used in the “Embedded UICC Remote Provisioning and Subscription
Management System” to identify an eUICC. See section 2.2.2 for EID
description.
‘0100’: CreateISDP
‘0200’: EnableProfile
‘0300’: DisableProfile
‘0400’: DeleteProfile
‘0500’: eUICCCapabilityAudit
‘0600’: MasterDelete
‘0700’: SetFallbackAttribute
‘0800’: EstablishISDRkeyset
‘0900’:FinaliseISDRhandover
‘0A00’ to ‘FF00’ RFU
NOTE: 1st byte is reserved for Notification Type as defined in section 4.1.1.11
5.1.1.3.13 EIS
The EIS type is for representing eUICC Information Set.
audit trail History of all the platform and Profile Management AUDIT-TRAIL- 0..N M
operations or eUICC notifications related to the eUICC RECORD
eumCertificateId Indicates the EUM Certificate that has been used to String 1 M
perform the signature. This data contains the “Serial
Number” of the certificate.
signatureAlgorithm Indicates the signature algorithm used by the EUM to sign Enumeration{ 1 M
the relevant part of the EIS. See Annex E to have details
of the data that shall be included in the signature. rsa-sha256, rsa-
sha384,
rsa-sha512,
The algorithm naming follows RFC 4051 [24]
ecdsa-sha256,
ecdsa-sha384,
ecdsa-sha512
}
Signature Signature value of the EUM. See Annex E to have details Byte[] 1 M
of the data included in the computation of the signature
NOTE: The ISD-P(s) are not represented in the EIS as a pure SECURITY-DOMAIN
data type; ISD-P information is directly included in the Profile representation
without distinction as the SM-SR doesn’t have access to ISD-P credentials.
Role A
(function requester)
Role B
(function provider)
The function processing might no longer be valuable if it ends after the validity period.
For example, a function is only valuable if it is executed within a minute. If more than
a minute has elapsed, then it is no longer required to continue the function execution.
Processing might not want to wait for an external event that might not occur before a
very long time or an event that might even never occur at all. For example, it is
possible when performing an OTA dialog that the Device is unreachable (switched
off, lost…), or that an acknowledgement message coming from the Device is lost on
the network (for example the loss of a PoR coming from an eUICC). If so, it might not
be acceptable to wait several days or weeks for the Device to be switched on again,
or even to wait forever for an acknowledgement message that will never come.
It is desirable that the function provider system is not overloaded with requests that
will be pending for a long period. The function caller would like to be notified as soon
as possible that the function cannot be processed within a specific amount of time,
and may then implement a calling side retry Policy.
By providing a validity period, the function caller indicates a specific amount of time to the
function provider to process the function. As a consequence, during this validity period, the
function caller shall not issue the same request again as it might generate duplicate
execution steps within the function provider system.
After the end of the validity period, the function provider shall no longer continue with new
execution steps. It is only mandated to tell the function caller that the function processing
has expired. It is then the caller responsibility to either:
Input data
Description Type No. MOC
name
Function
Requester Identification of the function requester. String 1 M
Identifier
Identification of the function call.
This identifier enables to manage function call retry policies.
When requesting for the execution of a function, the function caller shall provide a unique
Function Call Identifier. Uniqueness is to be ensured in its own perimeter.
In case the function caller wants to retry the same function, then it shall perform the same
function call, providing the same Function Call Identifier.
Function Call
String 1 C
Identifier On function provider side, when receiving this retry attempt, if a call to a function if
performed with an Function Call Identifier of a function already in process in its system,
then the function provider shall refuse the new call
If the function provider does not want to implement any retry Policy, then it might ignore
this field.
The Function Call identifier is only mandatory for request-response functions. It shall not
be present for notification functions.
This field defines the length of the period (provided as a number of seconds) during
which the request is valid. The period starts at the time the function call was received by
the function provider and ends a number of seconds later. During this period of time, the
function provider has the responsibility to execute the function.
The function provider, on reception of the function call, may:
Accept the function call: in that case the function provider accepts the provided
validity period
Reject the function call: if the function provider immediately considers that the
validity period is invalid (for example too long or too short) or cannot fulfil the
requirements (i.e. cannot start the sequence of operations so that all of the
operations are completed within the validity period), it shall not process the
function and shall immediately return a Function Execution Status output
Validity
parameter with a Status field set to 'Failed' and a Subject code and Reason Integer 1 O
Period
code of the Status Code Data field set to 'Validity Period not accepted'.
The function provider shall also indicate to the function caller an acceptable
amount of time into which the request could be fulfilled, by setting the
Acceptable Validity Period field in the output header.
The Validity Period is only present (but optional) for request-response functions. If not
specified, the function caller doesn’t require any specific validity period. Nevertheless the
function provider is free to apply any internal rule to restrict the validity period (it could be
the case to ensure that a function request will never stay stacked in the system). In that
case the function provider shall indicate to the function caller the applied validity period
value in the Acceptable Validity Period field in the output header.
The Validity Period shall not be present for notification functions.
5.1.2.2 Exceptions
During the processing of a function, an unexpected behaviour may happen. This event,
called an exception in this specification, may cause the function to be ended before the
functional work to be completed (the exception is then considered as an error), or may let
the functional work continue, but under specific conditions (the exception is then called a
warning).
Role A
(notification source)
Notification (data)
Role B
(notification recipient)
By definition, no validity period is applied for a notification, and no data can be returned back
by the notification recipient to the notification source.
Input data
Description Type No. MOC
name
Function
Requester Identification of the function requester. String 1 M
Identifier
In case the function caller wants to retry the same function, then it shall perform the same
function call, providing the same Function Call Identifier.
Function Call
String 1 C
Identifier
On function provider side, when receiving this retry attempt, if a call to a function if
performed with an Function Call Identifier of a function already in process in its system,
then the function provider shall refuse the new call
If the function provider does not want to implement any retry Policy, then it might ignore
this field.
The Function Call identifier is only mandatory for request-response functions. It shall not
be present for notification functions.
This field defines the length of the period (provided as a number of seconds) during
which the request is valid. The period starts at the time the function call was received by
the function provider and ends a number of seconds later. During this period of time, the
function provider has the responsibility to execute the function.
The Validity Period is only present (but optional) for request-response functions. If not
specified, the function caller doesn’t require any specific validity period. Nevertheless the
function provider is free to apply any internal rule to restrict the validity period (it could be
the case to ensure that a function request will never stay stacked in the system). In that
case the function provider shall indicate to the function caller the applied validity period
value in the Acceptable Validity Period field in the output header.
Additionally to this common header, each function may define its own set of additional input
data.
Processing End The function processing end time and date. DATETIME 1 O
Data
Description Type No. MOC
name
It indicates whether the processing has been completed correctly or not.
Value 'Executed-Success' means that the function has been processed correctly.
Application output data MAY optionally be part of the function response.
Enumeration
Value 'Executed-WithWarning' means that the function has been processed
{Executed-
correctly, but that warnings have been generated during this execution.
Success,
Application output data MAY optionally be part of the function response in order
to provide details on the warnings. Executed- 1 M
Status WithWarning,
Value 'Failed' means that the function execution has encountered errors during its
processing. The Status Code Data output structure shall give the reason of error Failed,
in the processing (values depend on the function and may be implementation
dependant). Expired}
Value 'Expired' means that the validity period of the request has expired before
the completion of the function processing. The Status Code Data output structure
MAY give the reason of expiration of the function.
The “status code” is part of the Function output header (as defined in section 5.5.5). In this
specification, the status codes are representing any exception from a simple warning to an
error.
When an error is raised (function output header status is ‘Failed’), it means that the
expected functional behaviour has not been completed.
When a warning is raised (function output header status is ‘Executed-WithWarning’’),
it means that the expected functional behaviour has been completed, but under
specific conditions that should be pointed out by the function provider.
Both Subject code and Reason code fields of the Status code data of the function output
header are represented by an OID (Object IDentifier). These identifiers refer to a list of pre-
defined elements and reasons (see below for details).
representation. This specification proposes to reuse the category “1. Generic” as defined
in [23].
The subjects codes linked with the “Remote Provisioning Architecture for Embedded UICC”,
are regrouped under a dedicated category, which has the identifier value “8. eUICC Remote
Provisioning” to avoid any conflict with the categories already defined in [23].
The possible values for the Subject code used in the context of this specification are defined
as follow:
1. Generic
1.1. Function Requester
1.2. Function Provider
1.2.1. Validity Period
1.3. Protocol
1.3.1. Protocol Format
1.3.2. Protocol Version
1.4. External Resource
1.5 Extension Resource
1.6 Function
8. eUICC Remote Provisioning
8.1 eUICC
8.1.1 EID
8.2 Profile
8.2.1 Profile ICCID
8.2.2 POL1
8.2.3 POL2
8.2.4 Void
8.2.5 Profile Type
8.2.6 Subscription Address
8.3 ISD-P
8.3.1 ISD-P-AID
8.4 ISD-R
8.5 ECASD
8.5.1 Certification Request
8.5.2 Embedded UICC Certificate Authority
8.6 EIS
8.7 SM-SR
5. Access error
6. Format error
7. Conditions of use not satisfied
8. Processing error
9. Transport error
10. Security error
The possible values for the Reason code are defined as follow:
1. Access Error
1.1. Unknown (Identification or Authentication)
1.2. Not Allowed (Authorisation)
2. Format Error
2.1. Invalid
2.2. Mandatory Element Missing
2.3. Conditional Element Missing
3. Conditions of Use Not Satisfied
3.1. Unsupported
3.2. Maximum Size Exceeded
3.3. Already in Use (Uniqueness)
3.4. Invalid Destination
3.5. Invalid Transition
3.6. Related Objects Exists
3.7. Unavailable
3.8. Refused
3.9 Unknown
4. Processing Error
4.1. Function Already in Progress
4.2. Execution Error
4.3. Stopped on Warning
4.4. Busy
4.5. Operation Already Processed
4.6. Not Present / Missing
4.7. Generation Not Possible
State: The function requester tries to access a function, but its credentials are not known to
the function provider
Function processing: The function provider raises an internal exception, as the function
requester couldn’t be identified
State: The function requester tries to create a new ISD-P, but with an ICCID already in used
for another Profile
In addition each function may raise additional specific status codes. In that case, it is defined
explicitly in the function description.
As an implementer’s choice, it is also possible that a function may return additional status
codes not described in this specification. The function caller shall be ready to handle such
situation.
Subject Reason
Subject Reason Description
code code
Unknown
Function
1.1 1.1 (Identification or The function caller is unknown to the function provider.
requester
Authentication)
Function Not allowed
1.1 1.2 The function caller is not allowed to use this function.
requester (authorisation)
Function Internal processing error (this status code shall be returned only
1.2 4.2 Execution error
provider when no more accurate status code can be returned)
Function
1.2 4.4 Busy Busy: not possible to process the function for the moment
provider
Validity The requested validity period is not accepted by the function
1.2.1 3.8 Refused
period provider.
Subject Reason
Subject Reason Description
code Code
The function execution request has expired (end of validity period has been
Time to
reached). This may be because the server had no time to execute the function or
1.6 Function 5.3 live
because the function was requesting a remote communication with the eUICC
expired
which was not present on the network during all the validity period.
Description:
This function allows an eUICC Manufacturer (EUM) to register an eUICC represented by its
eUICC Information Set (EIS) within an identified SM-SR information database.
The EIS contains the complete set of data that is applicable for the SM-SR to manage the
lifecycle of this eUICC. This data set is split in two different parts:
Subject Reason
Subject Reason Description
code code
Indicates that the EIS identified by this EID, is already register within the
8.6 EIS 1.3 Already registered
EIS database of the SM-SR
Error in signature
8.6 EIS 1.4 During the verification of the EIS signature, an error occurred.
calculation
During the consistency review of the EIS data, an error was found (for
8.6 EIS 1.5 Data inconsistency
example free memory is bigger than full memory)
Description: This function allows the MNO to retrieve up to date the EIS information. The
SM-DP shall forward the function request to the SM-SR “ES3.GetEIS” as defined in
section 5.4.1.
Subject Reason
Subject Reason Description
code code
Indicates that the SM-SR, identified by this smsr-id, is unknown to or whose address
8.7 SM-SR 3.9 Unknown
cannot be solved by the SM-DP
Description: This function allows the MNO to request that the SM-DP downloads a Profile,
identified by its ICCID, via the SM-SR identified by the MNO on the target eUICC, the eUICC
being identified by its EID.
Function flow
Upon reception of the function request, the SM-DP shall perform the following minimum set
of verifications:
The SM-DP shall verify it is responsible for downloading and installation of the Profile
SM-DP may provide additional verifications.
In case one of these conditions is not satisfied, the SM-DP shall refuse the function request
and return a ‘Function execution status’ indicating ‘Failed’ with the relevant status code (see
table below).
The SM-DP shall perform/execute the function according to the Profile Download and
Installation procedure described in section 3.1.
A ‘Function execution status’ with ‘Executed-success’ indicating that the function has
been successfully executed by the function provider as requested by the function
caller.
A ‘Function execution status’ with ‘Expired’ with a status code as defined in
section 5.1.6.4
A ‘Function execution status’ indicating ‘Failed’ with a status code as defined in
section 5.1.6.4 or a specific status code as defined in the table below.
profileType Identification of the Profile type to download and install in the eUICC. String 1 C
enableProfile Indicates if the Profile shall be enabled after downloading and installation. BOOLEAN 1 M
NOTE: MNO can either provide ICCID or the Profile type. In case the Profile type is
provided, the SM-DP is free to select one of the Profiles that matches the
Profile type.
iccid Indicates the Profile ICCID that has been downloaded and installed ICCID 1 C
Contains the detailed error returned by the eUICC in case the function execution Hex
euiccResponseData failed on eUICC. The response data is defined in ES5 depending of the requested 1 O
function. binary
Subject Reason
Subject Reason Description
Code code
8.1.1 EID 3.9 Unknown Indicates that the eUICC, identified by this EID, is unknown to the SM-SR.
Profile
8.2.1 3.9 Unknown Indicates that the Profile, identified by this iccid is unknown to the SM-DP.
ICCID
Profile Not Allowed Indicates that the function caller is not allowed to perform this function on
8.2.1 1.2
ICCID (Authorisation) the target Profile.
Profile Indicates that the Profile type identified by this profileType is unknown to
8.2.5 3.9 Unknown
Type the SM-DP.
Profile Not Allowed Indicates that the function caller is not allowed to perform this function on
8.2.5 1.2
Type (Authorisation) the ProfileType.
Related Procedures: -
Description: This function allows the MNO to update POL2 of a Profile, identified by its
ICCID, and installed on an eUICC identified by its EID.
The SM-DP shall forward this function request to the identified SM-SR by calling the
ES3.UpdatePolicyRules function as defined in section 5.4.6.
smsr-id OID 1 M
Identification of the SM-SR currently in charge of eUICC management.
This information may change during the eUICC’s lifetime.
None
Subject Reason
Subject Reason Description
code code
Indicates that the SM-SR, identified by this smsr-id, is unknown to or whose address
8.7 SM-SR 3.9 Unknown
cannot be solved by the SM-DP
Related Procedures: Profile Download and Installation, Profile Enabling, Profile Enabling
via SM-DP
Description: This function enables the caller to update the Subscription Address for a Profile
in the eUICC Information Set (EIS) of a particular eUICC identified by the EID and ICCID.
The Subscription Address is the identifier, such as MSISDN and/or IMSI, through which the
eUICC is accessible from the SM-SR via the mobile network when the Profile is in Enabled
state. The function replaces the content of the Subscription Address. For consistency within
the system, it is the responsibility of the caller to ensure that all data is provided. The SM-
DP shall forward the function request to the SM-SR “ES3.UpdateSubscriptionAddress” as
defined in section 5.4.7.
Subscription
newSubscriptionAddress The new Subscription Address 1 M
Address
Subject Reason
Subject Reason Description
code code
Indicates that the SM-SR, identified by this smsr-id, is unknown to or whose address
8.7 SM-SR 3.9 Unknown
cannot be resolved by the SM-DP
Description:
This function allows the MNO owner of the Profile to request a SM-DP to enable a Profile in
a specified eUICC, eUICC being identified by its EID.
The SM-DP receiving this request shall process it according to the “Profile Enabling via SM-
DP” procedure described in the section 3.3 of this specification.
A ‘Function execution status’ with ‘Executed-success’ indicating that the Profile has
been enabled on the eUICC.
A ‘Function execution status’ with ‘Expired’ with a status code as defined in
section 5.1.6.4
A ‘Function execution status’ indicating ‘Failed’ with a status code as defined in
section 5.1.6.4 or a specific status code as defined in the table here after.
None
Subject Reason
Subject Reason Description
code code
Indicates that the eUICC, identified by this EID, is unknown to the SM-
8.1.1 EID 3.9 Unknown
SR.
Profile Indicates that the Profile identified by this ICCID is unknown to the SM-
8.2.1 3.9 Unknown
ICCID SR.
Indicates that the Profile identified by this ICCID is known to the SM-SR
Profile
8.2.1 3.4 Invalid destination but installed on another eUICC than the one identified by the function
ICCID
caller.
Profile Not Allowed Indicates that the function caller is not allowed to perform this function
8.2.1 1.2
ICCID (Authorisation) on the target Profile.
8.2.2 POL1 3.8 Refused The POL1 of the impacted Profiles doesn’t allow this operation.
8.2.3 POL2 3.8 Refused The POL2 of the impacted Profiles doesn’t allow this operation.
8.4 ISD-R 4.2 Execution error Error during execution of the enabling command on the eUICC.
Indicates that the SM-SR, identified by this smsr-id, is unknown to or
8.7 SM-SR 3.9 Unknown
whose address cannot be resolved by the function provider.
Description: This function allows the MNO to request a Profile Disabling to the SM-DP in
charge of the management of the targeted eUICC; eUICC being identified by its EID. The
target Profile is owned by the requesting MNO.
The SM-DP receiving this request shall process it according to Profile Disabling via SM-DP
procedure described in section 3.5 of this specification.
A ‘Function execution status’ with ‘Executed-success’ indicating that the Profile has
been disabled on the eUICC.
A ‘Function execution status’ with ‘Expired’ with a status code as defined in
section 5.1.6.4
A ‘Function execution status’ indicating ‘Failed’ with a status code as defined in
section 5.1.6.4 or a specific status code as defined in the table here after
Additional input data:
None
Subject Reason
Subject Reason Description
code code
Indicates that the target Profile can’t be disabled. (for example the
8.1 eUICC 3.8 Refused
Profile is the only Profile in the eUICC)
Indicates that the eUICC, identified by this EID, is unknown to the SM-
8.1.1 EID 3.9 Unknown
SR.
Profile Indicates that the Profile identified by this ICCID is unknown to the SM-
8.2.1 3.9 Unknown
ICCID SR.
Indicates that the Profile identified by this ICCID is known to the SM-SR
Profile
8.2.1 3.4 Invalid destination but installed on another eUICC than the one identified by the function
ICCID
caller.
Profile Not Allowed Indicates that the function caller is not allowed to perform this function
8.2.1 1.2
ICCID (Authorisation) on the target Profile.
8.2.2 POL1 3.8 Refused The POL1 of the target Profile doesn’t allow this operation.
8.2.3 POL2 3.8 Refused The POL2 of the target Profile doesn’t allow this operation.
8.4 ISD-R 4.2 Execution error Error during execution of the disabling command on the eUICC.
Description: This function allows the MNO to request deletion of the target ISD-P with the
Profile to the SM-DP; eUICC being identified by its EID. The SM-DP shall forward the
function request to the SM-SR “ES3.DeleteISDP” as defined in section 5.4.10.
None
Subject Reason
Subject Reason Description
code code
Indicates that the SM-SR, identified by this smsr-id, is unknown to or whose address
8.7 SM-SR 3.9 Unknown
cannot be resolved by the SM-DP
Related Procedures: Profile Download and Installation, Profile Enabling via SM-DP, Profile
Enabling, Fall-back Activation Procedure
Description:
This function shall be called to notify that the Profile identified by its ICCID has been
disabled on the eUICC identified by its EID. It is assumed that the ICCID is enough for the
SM-DP to retrieve the MNO to notify. This notification also conveys the date and time
specifying when the operation has done.
What is performed by the MNO receiving this notification is out of scope of this specification.
Related Procedures: Profile Disabling and Profile Disabling via SM-DP, Fall-back Activation
Procedure
Description:
This function shall be called to notify that the Profile identified by its ICCID has been enabled
on the eUICC identified by its EID. It is assumed that the ICCID is sufficient for the SM-DP to
retrieve the MNO to notify.
This notification also conveys the date and time specifying when the operation has been
done. What is performed by the MNO receiving this notification is out of scope of this
specification.
Description: This function shall be called for notifying each MNO owning a Profile hosted in
the eUICC, identified by its EID, that the SM-SR has changed. The notification is sent by the
new SM-SR to the SM-DP, which route this notification to the MNO.
This notification also conveys the date and time specifying when the operation has been
done.
The relevant part of the eUICC Information Set linked with the MNO owning
the Profile hosted in the eUICC.
eis EIS 1 M
See section 5.1.1.1 for type description.
The list of EIS data fields that shall be included is defined in Annex E.
Description: This function shall be called to notify that the Profile identified by its ICCID has
been deleted on the eUICC identified by its EID.
This notification also conveys the date and time specifying when the operation has been
done. What is performed by the MNO receiving this notification is out of scope of this
specification.
Description: This function allows retrieving the eUICC Information Set (EIS) of a particular
eUICC from the SM-SR information database based on the EID. The retrieved EIS contains
only the data that is applicable for that particular SM-DP. The SM-DP utilises the retrieved
EIS, for instance, to verify the eligibility of the eUICC (for example type, certificate and
memory).
Output data
Description Type No. MOC
name
The relevant eUICC Information Set of the eUICC. See section 5.1.1.1 for type
eis description. EIS 1 C
The list of EIS data fields that shall be included is defined in Annex E.
Subject Reason
Subject Reason Description
code code
8.1.1 EID 1.1 Unknown Indicates that the EID is unknown to the function provider
Not Allowed Function requester is not allowed to manage this EIS, identified by
8.6 EIS 1.2
(Authorisation) this EID.
Description: This function allows the SM-DP to retrieve up to date the EIS information. The
SM-SR shall use the relevant functions of the ES5 interface to retrieve the information from
the eUICC. At the end of the successful execution of this function, the SM-SR shall update
its EIS database upon the basis of this information.
Subject Reason
Subject Reason Description
Code code
Not Allowed Function requester is not allowed to manage this EIS, identified by
8.6 EIS 1.2
(Authorisation) this EID.
Delivered With No The function execution request has been delivered to remote entity
1.6 Function 5.4
Response but no response is received.
Description: This function allows the SM-DP to request the creation of an ISD-P to the SM-
SR in charge of the management of the targeted eUICC; eUICC being identified by its EID.
Function flow
Upon reception of the function request, the SM-SR shall perform the following minimum set
of verifications:
The SM-SR is responsible for the management of the targeted eUICC
The Profile identified by its ICCID is not already present within its EIS database
(meaning allocated to another ISD-P)
The requested amount of memory can be satisfied
SM-SR may provide additional verifications.
In case one of these conditions is not satisfied, the SM-SR shall refuse the function request
and return a ‘Function execution status’ indicating ‘Failed’ with the relevant status code (see
table below).
The SM-SR receiving this request shall process it according to the “Profile Download and
Installation” procedure described in the section 3.1 of this specification.
When the SM-SR ends successfully this function it shall update the eUICC EIS by adding a
new Profile entry in the EIS with following values:
A ‘Function execution status’ with ‘Executed-success’ indicating that the ISD-P has
been successfully created on the eUICC as requested by the function caller.
A ‘Function execution status’ with ‘Expired’ with a status code as defined in
section 5.1.6.4
A ‘Function execution status’ indicating ‘Failed’ with a status code as defined in
section 5.1.6.4 or a specific status code as defined in the table below.
The AID, allocated by the SM-SR, of the ISD-P containing the Profile. The
isd-p-aid Tar value is included in the AID. See Annex G “Coding of the PIX for AID 1 M
‘Embedded UICC Remote Provisioning and Management’ (Normative)”.
Contains the detailed error returned by the eUICC in case the function
Hexadecimal
euiccResponseData execution failed on eUICC. The response data is defined in ES8 depending 1 O
string
of the requested function.
Subject Reason
Subject Reason Description
code code
Indicates that the eUICC, identified by this EID, is unknown to the function
8.1.1 EID 3.9 Unknown provider
The eUICC has not enough free memory to execute the creation of the new
Insufficient ISD-P with this required amount of memory.
8.1 eUICC 4.8
memory
Description: This function allows the SM-DP to send securely commands defined in ES8
interface (i.e.: Profile download or establish a key set) to an ISD-P or the ISD-R through the
SM-SR in charge of the management of the targeted eUICC; eUICC being identified by its
EID.
Function flow
Upon reception of the function request, the SM-SR shall perform the following minimum set
of verifications:
In case one of these conditions is not satisfied, the SM-SR shall refuse the function request
and return a ‘Function execution status’ indicating ‘Failed’ with the relevant status code (see
table below).
This function allows sending commands defined in the ES8 interface in several steps. This
may be necessary in case of the data is too big compared to eUICC capabilities. It is up to
the function caller to determine if it has to handle this situation based on the eUICC
capabilities described in EIS.
The SM-SR is free to select the most relevant OTA protocol to communicate up to the
eUICC. As a consequence, the data format provided by the function caller shall not depend
of the selected OTA protocol capabilities (for example SM-DP can consider there is no limit
on data length). The data provided by the SM-DP shall be a list of C-APDU as defined in
ETSI TS 102 226 [5] section 5.2.1. The SM-SR has the responsibility to build the final
Command script, depending on eUICC capabilities and selected protocol:
by adding the Command scripting template for definite or indefinite length,
and, if necessary, by segmenting the provided command script into several pieces
and adding the relevant Script chaining TLVs.
This function may return:
A ‘Function execution status’ with ‘Executed-success’ indicating that the function has
been successfully executed by the function provider as requested by the function
caller.
A ‘Function execution status’ with ‘Expired’ with a status code as defined in
section 5.1.6.4
A ‘Function execution status’ indicating ‘Failed’ with a status code as defined in
section 5.1.6.4 or a specific status code as defined in the table below.
Input data
Description Type No. MOC
name
Identification of the SD which shall process the APDUs contained in the data
sd-aid AID 1 M
argument. sd-aid could identificatify the ISD-P or the ISD-R.
The data shall contain a list a C-APDU as defined in ETSI TS 102 226 [5], section Hexadecimal
data 1 M
5.2.1. C-APDU can contain any of the commands defined in ES8 interface. The string
moreToDo See section 5.4.3 for description of this input data Boolean 1 O
Subject Reason
Subject Reason Description
code code
Indicates that the eUICC, identified by this EID, is unknown to the function
8.1.1 EID 3.9 Unknown
provider
Indicates that the ISD-P or the ISD-R identified by this SD-AID is unknown to the
8.3.1 SD-AID 3.9 Unknown
function provider.
Indicates that the ISD-P or the ISD-R identified by this SD-AID is known to the
Invalid
8.3.1 SD-AID 3.4 function provider but installed on another eUICC than the one identified by the
destination
function caller.
Execution
8.3 ISD-P 4.2 Error during execution of one command, when error occurs at ISD-P level.
error
Description: This function allows the SM-DP to indicate to the SM-SR that the Profile
download (identified by its ICCID) has been completed on the eUICC; eUICC being identified
by its EID.
This function allows optionally to set a first Subscription Address, typically the MSISDN, and
saves it in the EIS, and optionally a first POL2 associated to the newly download Profile. In
case no POL2 is provided at that time, it means that the Profile won’t be protected by any
POL2 at SM-SR side. But the POL2 may be set or updated at any time later using the
“UpdatePolicyRules” function defined in section 5.4.6.
The Subscription Address is the identifier, such as MSISDN and/or IMSI, through which the
eUICC is accessible from the SM-SR via the mobile network when the Profile is in Enabled
state. The Subscription Address may be set or updated at any time later using the
“UpdateSubscriptionAddress” function defined in section 5.4.7.
On reception of this function request the SM-SR shall immediately update the EIS to set the
identified Profile:
At the end of this function call, the Profile state is “Disabled”. The SM-DP may call the
function “ES3.EnableProfile” (see section 5.4.8) to enable the Profile if required by the
MNO.
A ‘Function execution status’ with ‘Executed-success’ indicating that the function has
been correctly executed.
A ‘Function execution status’ indicating ‘Failed’ with a status code as defined in
section 5.1.6.4 of a specific status code as defined in the table below.
SUBSCRIPTION-
subscriptionAddress The Subscription Address related to the identified Profile 1 O
ADDRESS
No additional data
code code
8.1.1 EID 3.9 Unknown Indicates that the eUICC, identified by this EID, is unknown to the function
provider
8.2.1 Profile 3.9 Unknown Indicates that the Profile identified by this ICCID is unknown to the function
ICCID provider.
8.2.1 Profile 3.4 Invalid Indicates that the Profile identified by this ICCID is known to the function
ICCID destination provider but installed on another eUICC than the one identified by the
function caller.
Related Procedures: -
Description: This function allows the SM-DP authorised by the MNO to update POL2 of a
Profile, identified by its ICCID, and installed on an eUICC identified by its EID.
The function can update a Profile in “Disabled” or “Enabled” state and shall return an error
for any other Profile state.
The function completely replaces the definition of existing POL2. It means that it is the
responsibility of the caller to provide the complete definition of POL2.
Subject Reason
Subject Reason Description
code code
Indicates that the eUICC, identified by this EID, is unknown to the function
8.1.1 EID 3.9 Unknown
provider
Profile Indicates that the Profile identified by this ICCID is unknown to the function
8.2.1 3.9 Unknown
ICCID provider.
Indicates that the Profile identified by this ICCID is known to the function
Profile Invalid
8.2.1 3.4 provider but installed on another eUICC than the one identified by the
ICCID destination
function caller.
8.2.3 POL2 2.1 Invalid Indicates that the POL2 is invalid.
Related Procedures: Profile Download and Installation, Profile Enabling, Profile Enabling
via SM-DP
Description: This function enables the caller to update the Subscription Address for a
Profile in the eUICC Information Set (EIS) of a particular eUICC identified by the EID and
ICCID. The Subscription Address is the identifier, such as MSISDN and/or IMSI, through
which the eUICC is accessible from the SM-SR via the mobile network when the Profile is in
Enabled state. The function replaces the content of the Subscription Address. For
consistency within the system, it is the responsibility of the caller to ensure that all data is
provided. This function may return:
Subject Reason
Subject Reason Description
code code
Description: This function allows the SM-DP to request a Profile Enabling to the SM-SR in
charge of the management of the targeted eUICC; eUICC being identified by its EID. The
target Profile is managed by the SM-DP authorised by the MNO owner of the Profile.
The SM-SR receiving this request shall process it according to “Profile Enabling via SM-DP”
procedure described in the section 3.3 of this specification.
A ‘Function execution status’ with ‘Executed-success’ indicating that the Profile has
been enabled on the eUICC.
Contains the detailed error returned by the eUICC in case the function
Hexadecimal
euiccResponseData execution failed on eUICC. The response data is defined in ES8 1 O
String
depending of the requested function.
Subject Reason
Subject Reason Description
code code
Profile Not Allowed Indicates that the function caller is not allowed to perform this function on
8.2.1 1.2
ICCID (Authorisation) the target Profile.
8.2.2 POL1 3.8 Refused The POL1 of the impacted Profiles doesn’t allow this operation.
8.2.3 POL2 3.8 Refused The POL2 of the impacted Profiles doesn’t allow this operation.
Error during execution of the enabling command on the eUICC. In that
8.4 ISD-R 4.2 Execution error case, the output data “euiccResponseData” contains the exact response
coming from the eUICC.
Description: This function allows the SM-DP authorised by the MNO to request a Profile
Disabling to the SM-SR in charge of the management of the targeted eUICC, eUICC being
identified by its EID. The target Profile shall be owned by the requesting MNO.
The SM-SR receiving this request shall process it according to Profile Disabling procedure
described in section 3.5 of this specification.
A ‘Function execution status’ with ‘Executed-success’ indicating that the Profile has
been disabled on the eUICC.
A ‘Function execution status’ with ‘Expired’ with a status code as defined in
section 5.1.6.4
A ‘Function execution status’ indicating ‘Failed’ with a status code as defined in
section 5.1.6.4 or a specific status code as defined in the table here after
Contains the detailed error returned by the eUICC in case of the Hexadecimal
euiccResponseData 1 O
function execution failed at the eUICC. String
Subject Reason
Subject Reason Description
code code
Indicates that the target Profile can’t be disabled. (for example the Profile
8.1 eUICC 3.8 Refused
is the only Profile in the eUICC)
Indicates that the eUICC, identified by this EID, is unknown to the SM-
8.1.1 EID 3.9 Unknown
SR.
Profile
8.2.1 3.9 Unknown Indicates that the Profile identified by this ICCID is unknown to SM-SR.
ICCID
Profile Indicates that the Profile identified by this ICCID is known to the SM-SR
8.2.1 3.4 Invalid destination
ICCID but installed on another eUICC than the one identified by the function
caller.
Profile Not Allowed Indicates that the function caller is not allowed to perform this function on
8.2.1 1.2
ICCID (Authorisation) the target Profile.
8.2.2 POL1 3.8 Refused The POL1 of the target Profile doesn’t allow this operation.
8.2.3 POL2 3.8 Refused The POL2 of the target Profile doesn’t allow this operation.
Description: This function allows the SM-DP to request deletion of the target ISD-P with the
Profile to the SM-SR in charge of the management of the targeted eUICC; eUICC being
identified by its EID. The target Profile can only be a Profile that can be managed by the SM-
DP authorised by the MNO.
On reception of the function request, the SM-SR shall perform the following minimum set of
verifications:
In case one of these conditions is not satisfied, the SM-SR shall refuse the function request
and return a ‘Function execution status’ indicating ‘Failed’ with the relevant status code (see
table below).
The SM-SR receiving this request shall process it according to “Profile and ISD-P deletion
via SM-DP” procedure described in section 3.7 of this specification.
In case the target Profile is “Enabled”, the SM-SR shall automatically disable it before
executing the deletion. This function is described in section 4.1.1.3 of this specification.
A ‘Function execution status’ with ‘Executed-success’ indicating that the Profile has
been deleted on the eUICC.
Contains the detailed error returned by the eUICC in case the function execution
failed on eUICC. The response data is defined in ES8 depending of the requested
euiccResponseData function. Byte[] 1 O
Subject Reason
Subject Reason Description
code code
Indicates that the eUICC, identified by this EID, is unknown to the function
8.1.1 EID 3.9 Unknown
provider.
Profile Indicates that the Profile identified by this ICCID is unknown to the
8.2.1 3.9 Unknown
ICCID function provider.
Indicates that the Profile identified by this ICCID is known to the function
Profile
8.2.1 3.4 Invalid destination provider but installed on another eUICC than the one identified by the
ICCID
function caller.
Profile Not Allowed Indicates that the function caller is not allowed to perform this function on
8.2.1 1.2
ICCID (Authorisation) the target Profile.
Profile Indicates that the Profile cannot be deleted because it is the last Profile of
8.2.1 3.8 Refused
ICCID the eUICC or the Fall-back Profile.
8.2.2 POL1 3.8 Refused The POL1 of the Profile doesn’t allow this operation.
8.2.3 POL2 3.8 Refused The POL2 of the Profile doesn’t allow this operation.
Related Procedures: -
Description: This function allows the MNO, or the SM-DP authorised by the MNO to update
the Connectivity Parameters store in the ISD-P, identified by its ICCID, and installed on an
eUICC identified by its EID.
The function can update a Profile in “Disabled” or “Enabled” state and shall return an error
for any other Profile state.
A ‘Function execution status’ with ‘Executed-success’ indicating that the update of the
Connectivity Parameters function has been successfully executed by the SM-SR as
requested by the function caller.
A ‘Function execution status’ with ‘Expired’ with a status code as defined in
section 5.1.6.4
A ‘Function execution status’ indicating ‘Failed’ with a status code as defined in
section 5.1.6.4 of a specific status code as defined in the table below.
Contains the detailed error returned by the eUICC in case of update of the Hexadecimal
euiccResponseData 1 O
Connectivity Parameters in the ISD-P on the targeted eUICC. String
Subject Reason
Subject Reason Description
code code
Indicates that the eUICC, identified by this EID, is unknown to the function
8.1.1 EID 3.9 Unknown
provider
Profile Indicates that the Profile identified by this ICCID is unknown to the function
8.2.1 3.9 Unknown
ICCID provider.
Indicates that the Profile identified by this ICCID is known to the function
Profile Invalid
8.2.1 3.4 provider but installed on another eUICC than the one identified by the function
ICCID destination
caller.
Related Procedures: Profile Download and Installation, Profile Enabling via SM-DP, Fall-
back Activation Procedure
Description: This function shall be called to notify that the Profile identified by its ICCID has
been disabled on the eUICC identified by its EID. ICCID may be not enough to identify right
address of recipient, SM-SR should map it internally to MNO notification endpoint.
This notification also conveys the date and time specifying when the operation has done.
What is performed by the MNO receiving this notification is out of scope of this specification.
Identification of the MNO owner of the Profile that has been disabled.
mno-id OID 1 M
See section 5.1.1.1 for type description.
Description: This function shall be called to notify that the Profile identified by its ICCID has
been enabled on the eUICC identified by its EID. ICCID may be not enough to identify right
address of recipient, SM-SR should map it internally to MNO notification endpoint.
This notification also conveys the date and time specifying when the operation has been
done. In case of multiply handlers are served SM-SR should ensure completionTimestamp
to be equal for every message.
What is performed by the MNO receiving this notification is out of scope of this specification.
Identification of the MNO owner of the Profile that has been enabled.
mno-id OID 1 M
See section 5.1.1.1 for type description.
Description: This function shall be called for notifying each SM-DP authorised by the MNO
owning a Profile hosted in the eUICC, identified by its EID, that the SM-SR has changed.
The notification is sent by the new SM-SR to the SM-DP, which shall route this notification to
the MNO..
This notification also conveys the date and time specifying when the operation has been
done.
The relevant part of the eUICC Information Set linked with the MNO owning
the Profile hosted in the eUICC.
eis EIS 1 M
See section 5.1.1.1 for type description.
The list of EIS data fields that shall be included is defined in Annex E.
Description: This function shall be called to notify that the Profile identified by its ICCID has
been deleted on the eUICC identified by its EID. ICCID may be not enough to identify right
address of recipient; SM-SR should map it internally to SM-DP notification endpoint.
This notification also conveys the date and time specifying when the operation has been
done. In case of multiply handlers are served, SM-SR should ensure ‘completionTimestamp’
to be equal for every message.
mno-id Identification of the MNO owner of the Profile that has been deleted. OID 1 M
Description: This function allows retrieving the eUICC Information Set (EIS) of a particular
eUICC from the SM-SR information database based on the EID. The retrieved EIS contains
only the data that is applicable for that particular MNO. The MNO utilises the retrieved EIS,
for instance, to verify the eligibility of the eUICC (for example type, certificate and memory).
Subject Reason
Subject Reason Description
code code
8.1.1 EID 1.1 Unknown Indicates that the EID, is unknown to the function provider
Not Allowed Function requester is not allowed to manage this EIS, identified by
8.6 EIS 1.2
(Authorisation) this EID.
Related Procedures: -
Description: This function allows the MNO to update POL2 of a Profile, identified by its
ICCID, and installed on an eUICC identified by its EID.
The general description of this function is detailed in section 5.4.6 of this specification.
Description: This function enables the caller to update the Subscription Address for a
Profile in the eUICC Information Set (EIS) of a particular eUICC identified by the EID and
ICCID. The function replaces the content of the Subscription Address. For consistency within
the system, it is the responsibility of the caller to ensure that all data is provided. This
function may return:
Subject Reason
Subject Reason Description
code code
Subscription Not Allowed Function caller is not allowed to manage the Subscription
8.2.6 1.2
Address (Authorisation) Address.
Description: This function allows the MNO to retrieve the up to date information for the
MNO’s Profiles. The SM-SR shall only provide information for the Profiles owned by the
requesting MNO. The SM-SR shall use the relevant functions of the ES5 interface to retrieve
the information from the eUICC. The SM-SR shall update its EIS database upon the basis of
this information.
If no list of ICCIDs is provided, it is implied that all the EIS data for the Profiles owned by the
requesting MNO is required.
Output
data Description Type No. MOC
name
For the relevant eUICC Information Set see section 5.1.1.1 for type description. The list of
EIS data fields that shall be included is defined in Annex E.Only data for the requested
Eis EIS 1 M
Profiles is returned within EIS. The Profiles that do not belong to the requestor are not included
in the response. This access control function is realised within the SM-SR, there is no need to
limit the data on the eUICC side.
Subject Reason
Subject Reason Description
code code
Description: This function allows the MNO to request a Profile Enabling to the SM-SR in
charge of the management of the targeted eUICC; eUICC being identified by its EID. The
target Profile is managed by the MNO.
On reception of the function request, the SM-SR shall perform the following minimum set of
verifications:
In case one of these conditions is not satisfied, the SM-SR shall refuse the function request
and return a ‘Function execution status’ indicating ‘Failed’ with the relevant status code (see
table below).
The SM-SR receiving this request shall process it according to “Profile Enabling” procedure
described in the section 3.2 of this specification.
Contains the detailed error returned by the eUICC in case the function execution Hex
euiccResponseData 1 O
failed on eUICC. The response data is defined in ES5 depending of the requested binary
function.
Subject Reason
Subject Reason Description
code code
Indicates that the eUICC, identified by this EID, is unknown to the function
8.1.1 EID 3.9 Unknown
provider.
Profile Indicates that the Profile identified by this ICCID is unknown to the function
8.2.1 3.9 Unknown
ICCID provider.
Indicates that the Profile identified by this ICCID is known to the function
Profile
8.2.1 3.4 Invalid destination provider but installed on another eUICC than the one identified by the
ICCID
function caller.
Profile Not Allowed Indicates that the function caller is not allowed to perform this function on
8.2.1 1.2
ICCID (Authorisation) the target Profile.
8.2.2 POL1 3.8 Refused The POL1 of one the impacted Profiles don’t allow this operation.
8.2.3 POL2 3.8 Refused The POL2 of one the impacted Profiles don’t allow this operation.
Error during execution of the enabling command on the eUICC. In that
8.4 ISD-R 4.2 Execution error case, the output data “euiccResponseData contains the exact response
coming from the eUICC.
Description: This function allows the MNO to request a Profile Disabling to the SM-SR in
charge of the management of the targeted eUICC; eUICC being identified by its EID. The
targeted is owned by the requesting MNO.
The SM-SR receiving this request shall process it according to “Profile disabling” procedure
described in section 3.4 of this specification.
A ‘Function execution status’ with ‘Executed-success’ indicating that the Profile has
been disabled on the eUICC.
A ‘Function execution status’ with ‘Expired’ with a status code as defined in
section 5.1.6.4
A ‘Function execution status’ indicating ‘Failed’
with a status code as defined in section 5.1.6.4 or a specific status code as defined in
the table below
No. MOC
Output data name Description Type
Contains the detailed error returned by the eUICC in case the function execution 1 O
Hex
euiccResponseData failed on eUICC. The response data is defined in ES5 depending of the requested binary
function.
Subject Reason
Subject Reason Description
code code
Indicates that the target Profile can’t be disabled. (for example the Profile is
8.1 UICC 3.8 Refused
the only Profile in the eUICC)
Indicates that the eUICC, identified by this EID, is unknown to the function
8.1.1 EID 3.9 Unknown
provider.
Profile Indicates that the Profile identified by this ICCID is unknown to the function
8.2.1 3.9 Unknown
ICCID provider.
Indicates that the Profile identified by this ICCID is known to the function
Profile
8.2.1 3.4 Invalid destination provider but installed on another eUICC than the one identified by the
ICCID
function caller.
Profile Not Allowed Indicates that the function caller is not allowed to perform this function on
8.2.1 1.2
ICCID (Authorisation) the target Profile.
8.2.2 POL1 3.8 Refused The POL1 of the target Profile doesn’t allow this operation.
8.2.3 POL2 3.8 Refused The POL2 of the target Profile doesn’t allow this operation.
Description: This function allows the MNO to request deletion of the target ISD-P with the
Profile to the SM-SR in charge of the management of the targeted eUICC; eUICC being
identified by its EID. The target Profile can only be a Profile owned by the requesting MNO.
On reception of the function request, the SM-SR shall perform the following minimum set of
verifications:
In case one of these conditions is not satisfied, the SM-SR shall refuse the function request
and return a ‘Function execution status’ indicating ‘Failed’ with the relevant status code (see
table below).
The SM-SR receiving this request shall process it according to “ISD-P Deletion” procedure
described in the section 3.6 of this specification.
In case the target Profile is “Enabled”, the SM-SR shall automatically disable it before
executing the deletion. This function is described in section 4.1.1.3.
A ‘Function execution status’ with ‘Executed-success’ indicating that the Profile has
been deleted on the eUICC.
A ‘Function execution status’ with ‘Expired’ with a status code as defined in
section 5.1.6.4
A ‘Function execution status’ indicating ‘Failed’ with a status code as defined in
section 5.1.6.4 or a specific status code as defined in the table below.
Contains the detailed error returned by the eUICC in case the function execution
euiccResponseData Byte[] 1 O
failed on eUICC
Subject Reason
Subject Reason Description
code code
Indicates that the eUICC, identified by this EID, is unknown to the function
8.1.1 EID 3.9 Unknown
provider.
Profile Indicates that the Profile identified by this ICCID is unknown to the function
8.2.1 3.9 Unknown
ICCID provider.
Indicates that the Profile identified by this ICCID is known to the function
Profile
8.2.1 3.4 Invalid destination provider but installed on another eUICC than the one identified by the
ICCID
function caller.
Profile Not Allowed Indicates that the function caller is not allowed to perform this function on
8.2.1 1.2
ICCID (Authorisation) the target Profile.
Profile Indicates that the Profile cannot be deleted because it is the last Profile of
8.2.1 3.8 Refused
ICCID the eUICC or the Fall-back Profile.
8.2.2 POL1 3.8 Refused The POL1 of the Profile doesn’t allow this operation.
8.2.3 POL2 3.8 Refused The POL2 of the Profile doesn’t allow this operation.
Description: This function allows the Initiator to request to a new SM-SR to prepare for a
change for an eUICC identified by its EID.
The check is used to give the opportunity to the new SM-SR to ensure that any necessary
business agreement is in place.
Subject Reason
Subject Reason Description
Code code
Function
Condition Of Use Not Indicates that function provider is not capable of managing the
1.2 Provide 3
satisfied eUICC identified by this EID,
r
Description: This function allows the initiator to request to the current SM-SR to change for
a specific eUICC identified by its EID.
The SM-SR receiving this request shall process it according to the “SM-SR Change”
procedure described in GSMA Remote Provisioning Architecture for Embedded UICC [1].
A ‘Function execution status’ with ‘Executed-success’ indicating that the function has
been successfully executed by the function provider as requested by the function
caller.
A ‘Function execution status’ indicating ‘Expired’ with the status code as defined in
section 5.1.6.4. A ‘Function execution status’ indicating ‘Failed’ with a status code as
defined in section 5.1.6.4 of a specific status code as defined in the Specific status
code table below.
Subject Reason
Subject Reason Description
Code code
Description: This function shall be called to notify that the Profile identified by its ICCID has
been disabled on the eUICC identified by its EID. ICCID may be not enough to identify right
address of recipient, SM-SR should map it internally to MNO notification endpoint.
This notification also conveys the date and time specifying when the operation has done.
What is performed by the MNO receiving this notification is out of scope of this specification.
Description: This function shall be called to notify that the Profile identified by its ICCID has
been enabled on the eUICC identified by its EID. ICCID may be not enough to identify right
address of recipient, SM-SR should map it internally to MNO notification endpoint.
This notification also conveys the date and time specifying when the operation has been
done. In case of multiply handlers are served SM-SR should ensure completionTimestamp
to be equal for every message.
What is performed by the MNO receiving this notification is out of scope of this specification.
Description: This function shall be called for notifying each MNO owning a Profile hosted in
the eUICC, identified by its EID, that the SM-SR has changed. The notification is sent by the
new SM-SR.
This notification also conveys the date and time specifying when the operation has been
done.
The relevant part of the eUICC Information Set linked with the MNO owning
the Profile hosted in the eUICC.
eis EIS 1 M
See section 5.1.1.1 for type description.
The list of EIS data fields that shall be included is defined in Annex E.
Description: This function shall be called to notify that the Profile identified by its ICCID has
been deleted on the eUICC identified by its EID. ICCID may be not enough to identify right
address of recipient; SM-SR should map it internally to MNO notification endpoint.
This notification also conveys the date and time specifying when the operation has been
done. In case of multiply handlers are served SM-SR should ensure ‘completionTimestamp’
to be equal for every message.
What is performed by the MNO receiving this notification is out of scope of this specification.
Description: This function enables a new SM-SR to request for a new key set to be created
in the ISD-R for the eUICC identified by the EID. The new key set belongs the new SM-SR
and is unknown to the current SM-SR.
The current SM-SR shall map this function onto the second STORE DATA command in the
ES5.establishISDRKeySet, see section 4.1.1.8. The following parameters used within this
command as defined in Table 42 are not provided by the new SM-SR and it is the current
SM-SR’s responsibility to set these parameters as defined below.
A ‘Function execution status’ with ‘Executed-success’ indicating that the function has
been successfully executed by the function provider as requested by the function
caller.
A ‘Function execution status’ with ‘Expired’ with a status code as defined in
section 5.1.6.4
A ‘Function execution status’ indicating ‘Failed’ with a status code as defined in
section 5.1.6.4 of a specific status code as defined in the table below.
initialSequenceCounter The initial value of the Sequence Counter of the keyset Integer 1 O
Enumeration
{ECC-256,
Subject Reason
Subject Reason Description
code code
8.1.1 EID 1.1 Unknown Indicates that the EID, is unknown to the function provider
Error during the creation of the key set at the ISD-R level. In
Execution
8.4 ISD-R 4.2
error
that case, the output data “euiccResponseData contains the
exact response coming from the eUICC.
Description: This function enables to request for the handover management of an eUICC
represented by its eUICC Information Set (EIS).
The EIS contains the complete set of data including information about Profiles, audit trail,
which is applicable for the SM-SR to manage the lifecycle of this eUICC
The function provider shall execute the function accordingly to the procedure detailed in
section 3.8. The handover is only committed at the end of the successfully procedure
execution.
Input data
Description Type No. MOC
name
The eUICC Information Set of the eUICC
EIS 1 M
eis See section 5.1.1.1 for type description. The list of EIS data fields that shall be
included is defined in Annex E.
Subject Reason
Subject Reason Description
code code
Condition Of
Indicates that function provider is not capable of managing the
1.2 Function Provider 3 Use Not
eUICC identified by this EID.
satisfied
Indicates that the preparation step hasn’t been performed for the
8.1.1 EID 1.1 Unknown
eUICC
Error during the creation of the key set at the ISD-R level. In that
8.4 ISD-R 4.2 Execution error case, the output data “euiccResponseData contains the exact
response coming from the eUICC.
eUICC Certificate
Certificate
8.5.2 Authority 6.3 ECASD Certificate expired
Expired
Certificate
Description: This function is used to authenticate the new SM-SR to the eUICC identified by
the EID. The function will return the random challenge generated by the eUICC to be used to
create the signature for the second step in the SM-SR key establishment procedure.
SM-SR Certificate.
The random
randomChallenge Byte[] 1 M
challenge
Subject Reason
Subject Reason Description
code code
8.1.1 EID 1.1 Unknown Indicates that the EID, is unknown to the function provider
SM-SR Certificate
8.5.3 6.3 SM-SR certificate expired
Certificate Expired
Any technology can be used to transport those messages (mail, file, Web Services…) as
soon as it is agreed between the sender and the receiver.
However, for interoperability purpose, Annex B of this specification specifies the particular
binding to the Web Service technology, following the OASIS and W3C WS-* standard.
All along this Annex we can indifferently use either “function caller” or “sender entity” wording
to designate the entity that has issued the function execution request. It is also the case
regarding “function provider” and “receiver entity” to designate the entity that executes the
function.
rps: http://namespaces.gsma.org/esim-messaging/1
The “1” at the end of the URI indicates the major version (for example 1) of this specification.
The XML schema defined in this specification refers to the following namespaces:
The attribute @MessageVersion in the instance document indicates the version of the
schema used to generate the message. This attribute makes reference to the
<xs:schema>@version attribute that indicates the version of the schema. This information
may be used by the receiving entity to determine the schema to use for validation of the
incoming message.
Attribute/Element Mapping/Description
This element has no particular mapping with any function input data specified in section 0.
<rps:SenderName> Provides the name of the sender. It represents the human user behind the system of the
<rps:SenderEntity>.
This specification doesn’t mandate anything regarding its usage by the receiver entity.
This element has no particular mapping with any function input data specified in section 0.
<rps:ReceiverEntity> Provides identification of the receiver entity.
Only the <rps:ReceiverEntity>/<rps:EntityID> shall be set. The
<rps:ReceiverEntity>/<rps:EntityName> shall not be set.
This element has no particular mapping with any function input data specified in section 0.
<rps:ResponseEndpoint> Allow the message sender to provide an URI where the response to this message, if any, shall be
returned. This is optional; if missing the receiver entity shall consider the originating point of the
message as the response endpoint.
This element has no particular mapping with any function input data specified in section 0.
This identifier may be used to provide end-to-end logging management between the different web
<rps:ContextId> services.
This is optional. If present, this parameter shall be included if the function provider entity generates
a new request to another function provider entity.
This element has no particular mapping with any function input data specified in section 0.
This information allows the sender entity to correlate several messages within a single transaction.
<rps:TransactionId> It is the sender entity responsibility to ensure uniqueness of this information.
This is optional. If present, the receiver entity shall provide the same information in the transactionId
of the function execution response message, if any.
This element has no particular mapping with any function input data specified in section 0.
This element (of type xs:anyURI) conveys the value of the message identifier. The value is
generated by the sender entity and must be UNIQUE. To make the MessageID unique between
<rps:MessageId> different senders it must be prefixed with the domain portion of the sender. Then the suffix part of
the message id is freely chosen by the sender, it could a simple integer value, a date; nothing is
mandated except the uniqueness.
For example: “http://MySenderEntityId/1234”
This element has no particular mapping with any function input data specified in section 0.
Indicates the type the message, meaning the identification of the function execution request or
function execution response.
The Message type for a function execution request shall include the ‘Request’ qualifier at the end;
<rps:MessageType> example: “ES3-GetEISRequest”
The Message type for a function execution response shall include the ‘Response’ qualifier at the
end; example: “ES3-GetEISResponse”.
The Message type for a notification function shall include the ‘Notification’ qualifier at the end;
example: “ES3-HandleProfileDisabledNotification”
This element has no particular mapping with any function input data specified in section 0.
<rps: MessageDate>
Timestamp of the message.
This element (of type xs:anyURI) conveys the value of the message identifier of the initial message
<rps:RelatesTo>
request. This element shall be present only in case of response.
The <rps:EntityType> type is for representing a message entity; it is used for example to
represent a sending entity and a receiver entity in the <rps:RPSHeader> element.
Attribute/Element Mapping/Description
<rps:EntityName> The explicit name of the entity. This is optional and provided for information.
Each element under the <rps:RPSBody> matches either a function execution request, a
function execution response or a notification.
The <rps:BasicRequestType> acts as a base type that each Request shall extend.
Attribute/Element Mapping/Description
This element is mapped to the “Function Call Identifier” data of the function input header.
<rps:FunctionCallIdentifier>
Refer section 5.1.4 for description of this data.
This element is mapped to the “Validity period” data of the function input header. Refer
<rps:ValidityPeriod>
section 5.1.4 for description of this data.
A.3.2 Void
The <rps:BaseResponseType> acts as a base type that each Response shall extend.
Attribute/Element Mapping/Description
This element is mapped to the “Processing start” data of the function output header. Refer
<rps:ProcessingStart>
section 5.1.5 for description of this data.
This element is mapped to the “Processing end” data of the function output header. Refer
<rps:ProcessingEnd>
section 5.1.5 for description of this data.
This element is mapped to the “Acceptable validity Period” data of the function output
<rps:AcceptableValidityPeriod>
header. Refer section 5.1.5 for description of this data.
This element is mapped to the “Function Execution Status” data of the function output
<rps:FunctionExecutionStatus>
header. Refer section 5.1.5 for description of this data.
Attribute/Element Mapping/Description
<rps:Status> This element is mapped to the “Status” data of the function output header. Refer section 5.1.5
for description of this data.
This element is mapped to the “Status code data” data of the function output header. Refer
<rps:StatusCodeData>
section 5.1.5 for description of this data.
Attribute/Element Mapping/Description
<rps:Subject> This element is mapped to the “Subject” data of the function output header. Refer section 5.1.5
for description of this data.
<rps:Reason> This element is mapped to the “Reason” data of the function output header. Refer section 5.1.5
for description of this data.
This element is mapped to the “Subject identifier” data of the function output header. Refer
<rps:SubjectIdentifier>
section 5.1.5 for description of this data.
<rps:Message> This element is mapped to the “Message” data of the function output header. Refer section 5.1.5
for description of this data.
A.3.4.1 AID
The AID (Application IDentifier) type defined in section 5.1.1.1 shall be mapped to the
<rps:AIDType>. The type is defined as a hexadecimal string representation of 5 to 16 bytes.
A.3.4.2 Datetime
The Datetime type defined in section 5.1.1.1 shall be mapped to the simple built-in XML time
<xs:datetime>.
A.3.4.3 EID
The EID (eUICC IDentifier) type defined in section 5.1.1.1 shall be mapped to the
<rps:EIDType>.
A.3.4.4 ICCID
The ICCID (Integrated Circuit Card IDentifier) type defined in section 5.1.1.1 shall be
mapped to the <rps:ICCIDType>. The type is defined as a string representation (up to 20
digits), non-swapped as per ITU E.118 representation. Example: 893301000000000011
A.3.4.5 MSISDN
The MSIDN (Mobile Station ISDN Number) type defined in section 5.1.1.1 shall be mapped
to the <rps:MSISDNType>. The type is defined as a string representation of up to 15
decimal digits as defined in ITU E.164, including Country code, National Destination Code
(optional) and Subscriber Number. Example: 380561234567
A.3.4.6 IMSI
The IMSI (International Mobile Subscriber Identity) type defined in section 5.1.1.1 shall be
mapped to the <rps:IMSIType>. The type is defined as a string representation of up to 15
decimal digits including MCC (3 digits) and MNC (2 or 3 digits), as defined in ITU E.212.
Example: 242011234567890
A.3.4.7 OID
The OID (Object Identifier) type defined in section 5.1.1.1 shall be mapped to the
<rps:ObjectIdentifierType>. The type is defined as a string representation of an OID, i.e. of
integers separated with dots (for example: '1.2', '3.4.5').
A.3.4.8 TAR
The TAR (Toolkit Application reference) type defined in section 5.1.1.1 shall be mapped to
the <rps:TARType>. The type is defined as a hexadecimal string representation of exactly 3
bytes. Example: 363443.
A.3.4.9 Version
The Version type defined in section 5.1.1.1 shall be mapped to the <rps: ThreeDigitVersion>.
The type is defined as a string representation of exactly 3 integers separated by a '.'.
Example: 1.15.9
A.3.5.1 EIS
The EIS type defined in section 5.1.1.3.13 shall be mapped to the <rps: EISType>. This type
contains the whole information defined for EIS, but depending on the function where it is
used, it may be filled with only a partial content.
All information requiring to be signed by the EUM at registration time is regrouped under the
element <rps:EumSignedInfo>. The signature is provided within the <ds:Signature> element
(see section A.3.5.2 of this Annex).
The <rps:EumSignedInfo> shall contain the definition of the ECASD security domain
including the certificate value.
Attribute/Element Mapping/Description
<rps:EumSignedInfo> This element regroups the information signed by the EUM. See section A.3.5.2 of this
Annex for description of this element.
This element contains the signature of the EUM. It maps the “eumCertificateId”,
<rps:EumSignature> “signatureAlgorithm” and “signature” data of the EIS described in section 5.1.1.3.13.
This element maps the “remainingMemory” data of the EIS type. Refer
<rps:RemainingMemory>
section 5.1.1.3.13 for description of this data type.
This element maps the “availableMemoryforProfiles” data of the EIS type. Refer
<rps:AvailableMemoryForProfiles>
section 5.1.1.3.13 for description of this data type.
<rps:LastAuditDate> This element maps the “lastAuditDate” data of the EIS type. Refer section 5.1.1.3.13
for description of this data type.
<rps:SmSr-Id> This element maps the “smsr-id” data of the EIS type. Refer section 5.1.1.3.13 for
description of this data type.
This element maps the “profiles” data of the EIS type. The <rps:EISType> may contains
several <rps:Profile> elements. Refer section 5.1.1.3.13 for description of this data
<rps:ProfileInfo> type.
See section A.3.5.4 of this Annex for description of the <rps:ProfileInfo> element.
This element maps the “ISD-R” data of the EIS type. Refer section 5.1.1.3.13 for
description of this data type.
<rps:Isd-r>
The <rps:Isd-r> is of type <rps:SecurityDomainType>. Refer section A.3.5.5 of this
Annex for description of this type.
This element maps the “audit trail” data of the EIS type. Refer section 5.1.1.3.13 for
description of this data type. This element can be missing, when <rps:EIS> is used in the
<rps:AuditTrail> context of the ES1.registerEIS function. After this step, the EIS shall content at least one
record.
Refer section A.3.5.6 of this Annex for description of the <rps:AuditTrail> element.
This element is not mapped to any data of the EIS type. It provides a simple extensibility
mechanism that can be used to provide additional information about the eUICC without
<rps:AdditionalProperties> breaking the XML validation process. See hereunder for definition of the
<rps:AdditionalProperties>.
This element is optional.
Attribute/Element Mapping/Description
The key of the property. The key shall be unique within the property list. The key shall not be empty, max
<rps:key>
key length is not fixed to match any type of application.
<rps:value> Contains a simple string value. No constraint is set on the value, could either be empty.
Attribute/Element Mapping/Description
This element maps the “eid” data of the EIS type. Refer section 5.1.1.3.13 for description of this
<rps:Eid> data type.
This element maps the “eum-id” data of the EIS type. Refer section 5.1.1.3.13 for description of
<rps:Eum-Id> this data type.
<rps:ProductionDate> This element maps the “productionDate” data of the EIS type. Refer section 5.1.1.3.13 for
description of this data type.
<rps:PlatformType> This element maps the “platformType” data of the EIS. Refer section 5.1.1.3.13 for description of
this data.
This element maps the “platformVersion” data of the EIS type. Refer section 5.1.1.3.13 for
<rps:PlatformVersion> description of this data type.
This element maps the “isd-p-loadfile-aid” data of the EIS type. Refer section 5.1.1.3.13 for
<rps:Isd-p-loadfile-aid> description of this data type.
This element maps the “isd-p-module-aid” data of the EIS type. Refer section 5.1.1.3.13 for
<rps:Isd-p-module-aid> description of this data type.
The <rps:AID> is described in section A.3.4.1 of this Annex.
This element maps the “ECASD” data of the EIS type. Refer section 5.1.1.3.13 for description of
<rps:Ecasd> this data type.
This element maps the “eUICC-Capabilities” data of the EIS type. Refer section 5.1.1.3.13 for
description of this data type.
<rps:EuiccCapabilities>
Refer section Error! Reference source not found. of this Annex for description of the
<rps: EuiccCapabilities>.
Example of <ds:Signature>:
<EumSignature xmlns:ds="http://www.w3.org/2000/09/xmldsig#">
<ds:SignedInfo>
<ds:CanonicalizationMethod Algorithm=http://www.w3.org/2001/10/xml-exc-c14n#/>
<ds:SignatureMethod Algorithm=http://www.w3.org/2001/04/xmldsig-more#rsa-sha256/>
<ds:Reference>
<ds:DigestMethod Algorithm=http://www.w3.org/2001/04/xmlenc#sha256/>
<ds:DigestValue>dHLkPm5pcyBub3QgYSBzaWduYXR1cmGB</ds:DigestValue>
</ds:Reference>
</ds:SignedInfo>
<ds:SignatureValue>dHLkPm5pcyBub3QgYSBzaWduYXR1cmGB</ds:SignatureValue>
<ds:KeyInfo>
<ds:X509Data>
<ds:X509SubjectName>CN=gsma, O=GSMA, C=UK</ds:X509SubjectName>
</ds:X509Data>
</ds:KeyInfo>
</ds:Signature>
Attribute/Element Mapping/Description
This element maps the “iccid” data of the PROFILE INFO type. Refer section 5.1.1.3.4 for
<rps:Iccid> description of this data type.
This element maps the “isd-p-aid” data of the PROFILE INFO type. See section 5.1.1.3.4 for
<rps:Isd-p-aid> description of this data type.
This element maps the “mno-id” data of the PROFILE INFO type. See section 5.1.1.3.4 for
<rps:Mno-id> description of this data type.
This element maps the “fallbackAttribute” data of the PROFILE INFO type. See
<rps:FallbackAttribute>
section 5.1.1.3.4 for description of this data type.
This element maps the “SubscriptionAddress” data of PROFILE INFO type. See
<rps:SubscriptionAddress> section 5.1.1.3.4 for description of this data type.
The <rps:SubscriptionAddressType> is described in section A.3.5.8 of this Annex.
This element maps the “state” data of the PROFILE INFO type. See section 5.1.1.3.4 for
description of this data type.
<rps:State>
The <rps:ProfileStateType> is an enumeration with possible values “Created”, “Disabled” or
“Enabled”.
This element maps the “smdp-id” data of the PROFILE INFO type. See section 5.1.1.3.4 for
<rps:Smdp-id> description of this data type.
<rps:ProfileType> This element maps the “profileType” data of the PROFILE INFO type. See section 5.1.1.3.4 for
description of this data type.
This element maps the “allocatedMemory” data of the PROFILE INFO type. See
<rps:AllocatedMemory>
section 5.1.1.3.4 for description of this data type.
<rps:FreeMemory> This element maps the “FreeMemory” data of the PROFILE INFO type. See section 5.1.1.3.4
for description of this data type.
This element maps the “pol2” data of the PROFILE INFO type. See section 5.1.1.3.4 for
<rps:Pol2> description of this data type.
The <rps:Pol2Type> is described in section 0 of this Annex.
Attribute/Element Mapping/Description
This element maps the “aid” data of the SECURITY-DOMAIN type. See section 5.1.1.3.9 for
<rps:Aid> description of this data type.
This element maps the “tars” data of the SECURITY-DOMAIN type. See section 5.1.1.3.9 for
<rps:Tar> description of this data type. A Security Domain may have several tars.
<rps:Sin> This element maps the “sin” data of the SECURITY-DOMAIN type. See section 5.1.1.3.9 for
description of this data type.
<rps:Sdin> This element maps the “sidn” data of the SECURITY-DOMAIN type. See section 5.1.1.3.9 for
description of this data type.
This element maps the “role” data of the SECURITY-DOMAIN type. See section 5.1.1.3.9 for
<rps:Role> description of this data type.
The <rps:SDRoleType> is an enumeration with possible values “ISD-R” or “ECASD”.
This element maps the “key sets” data of the SECURITY-DOMAIN type. See section 5.1.1.3.9 for
<rps:Keyset> description of this data type. A Security Domain may have up to 127 key sets.
The <rps:Keyset> element is described hereunder.
The <rps:Keyset> element contains the description of a key set and maps the KEYSET type
defined in section 5.1.1.3.8.
Attribute/Element Mapping/Description
<rps:Version> This element maps the “version” data of KEYSET type. See section 5.1.1.3.8 for description of this
data type.
This element maps the “type” data of KEYSET type. See section 5.1.1.3.8 for description of this
data type.
<rps:Type>
The <rps:KesetUsageType> is an enumeration with possible values “SCP03”, “SCP80”, “SCP81”,
“TokenGeneration”, “ReceiptVerification”, “CA”.
This element maps the “cntr” data of KEYSET type. See section 5.1.1.3.8 for description of this
<rps:Cntr> data type.
This element maps the “keys” data of KEY type. See section 5.1.1.3.8 for description of this data
<rps:Key> type. A key set may have up to 128 keys or certificates.
The <rps:KeyType> element is described hereunder in this section.
This element maps the “certificates” data of CERTIFICATE type. See section 5.1.1.3.8 for
<rps:Certificate> description of this data type. A key set may have up to 128 keys or certificates.
The <rps:GPCertificateType> is described hereunder in this section.
The <rps:KeyType> contains the description of a key and maps the KEY type defined in
section 5.1.1.3.6.
Attribute/Element Mapping/Description
@kcv This attribute maps the “kcv” data of KEY type. See section 5.1.1.3.6 for description of this data
type.
<rps:Index> This element maps the “index” data of KEY type. See section 5.1.1.3.6 for description of this data
type.
This element maps the “keyComponents” data of KEY type. See section 5.1.1.3.6 for description of
<rps:keyComponents> this data type. A key may have several components.
The <rps:KeyComponent> element is described hereunder in this section.
The <rps:KeyComponent> element contains the description of a key component and maps
the KEY-COMPONENT type defined in section 5.1.1.3.5.
Attribute/Element Mapping/Description
@type This attribute maps the “type” data of KEY-COMPONENT type. See section 5.1.1.3.5 for
description of this data type.
@value This element maps the “value” data of KEY- COMPONENT type. See section 5.1.1.3.5 for
description of this data type.
The <rps:GPCertificateType> contains the description of a key and maps the CERTIFICATE
type. defined in section 5.1.1.3.7.
Attribute/Element Mapping/Description
<rps:Index> This element maps the “index” data of CERTIFICATE type. See section 5.1.1.3.7 for description of
this data type.
<rps:CaId> This element maps the “ca-id” data of CERTIFICATE type. See section 5.1.1.3.7 for description of
this data type.
<rps:Value> This element maps the “value” data of CERTIFICATE type. See section 5.1.1.3.7 for description of
this data type.
Attribute/Element Mapping/Description
This element maps the “eid” data of the AUDIT-TRAIL-RECORD type. See
<rps:Eid> section 5.1.1.3.11 for description of this data type.
This element maps the “SMSRId” data of the AUDIT-TRAIL-RECORD type. See
<rps:Smsr-id> section 5.1.1.3.11 for description of this data type.
This element maps the “operationDate” data of the AUDIT-TRAIL-RECORD type. See
<rps:OperationDate>
section 5.1.1.3.11 for description of this data type.
This element maps the “operationType” data of the AUDIT-TRAIL-RECORD type. See
section 5.1.1.3.11 for description of this data type. The operation type is coded on two
bytes represented as a hexadecimal string, with possible following values:
‘0001’: Notification: eUICC declaration – First network attachment
‘0002’: Notification: Profile change succeeded
‘0003’: Notification: Profile change failed and Roll-back
‘0004’: to ‘00FF’: RFU for other Notification type
‘0005’ Notification: Profile change after Fall-back
‘0100’: CreateISDP
<rps:OperationType> ‘0200’: EnableProfile
‘0300’: DisableProfile
‘0400’: DeleteProfile
‘0500’: eUICCCapabilityAudit
‘0600’: MasterDelete
‘0700’: SetFallbackAttribute
‘0800’: EstablishISDRkeyset
‘0900’:FinaliseISDRhandover
‘0A00’ to ‘FF00’ RFU for other commands type
This element maps the “requesterId” data of the AUDIT-TRAIL-RECORD type. See
<rps:RequesterId> section 5.1.1.3.11 for description of this data type.
This element maps the “status” data of the AUDIT-TRAIL-RECORD type. See
<rps:OperationExecutionStatus> section 5.1.1.3.11 for description of this data type.
The <rps:ExecutionStatusType> is described in section A.3.3 of this Annex.
This element maps the “isd-p-aid” data of the AUDIT-TRAIL-RECORD type. See
<rps:Isd-p-aid> section 5.1.1.3.11 for description of this data type.
This element maps the “iccid” data of the AUDIT-TRAIL-RECORD type. See
<rps:Iccid > section 5.1.1.3.11 for description of this data type.
This element maps the “IMEI” data of the AUDIT-TRAIL-RECORD type. See
<rps:Imei> section 5.1.1.3.11 for description of this data type.
The value is the hexadecimal value as received from the eUICC.
This element maps the “MEID” data of the AUDIT-TRAIL-RECORD type. See
<rps:Meid> section 5.1.1.3.11 for description of this data type.
The value is the hexadecimal value as received from the eUICC.
Attribute/Element Mapping/Description
Attribute/Element Mapping/Description
This element maps the “Rules” data of POL2 type. See section 5.1.1.3.3 for description of this data
<rps:Rule> type. A POL2 may have several <rps:Rule>.
The <rps:POL2RuleType> is defined hereunder in this section.
Attribute/Element Mapping/Description
This element maps the “subject” data of POL2-RULE type. See section 5.1.1.3.2 for description of
<rps:Subject> this data type.
The <rps:POL2RuleSubjectType> is defined as an enumeration with possible value “PROFILE”.
This element maps the “action” data of POL2-RULE type. See section 5.1.1.3.2 for description of
this data type.
<rps:Action>
The <rps:POL2RuleActionType> is defined as an enumeration with possible values “ENABLE”,
“DISABLE” or “DELETE”.
This element maps the “qualification” data of POL2-RULE type. See section 5.1.1.3.2 for
description of this data type.
<rps:Qualification>
The <rps:POL2RuleQualificationType> is defined as an enumeration with possible values “Not-
Allowed”, “Auto-Delete”.
Attribute/Element Mapping/Description
This element maps the “imsi” data of SUBSCRIPTION-ADDRESS type. See section 5.1.1.3.1 for
<rps:Imsi> description of this data type.
This element maps the “msisdn” data of SUBSCRIPTION-ADDRESS type. See section 5.1.1.3.1
<rps:Msisdn> for description of this data type.
The output data of the “ES1.RegisterEIS” function defined in section 5.2.1 shall be mapped
to the <rps:ES1-RegisterEISResponse> element described in the following figure:
The output data of the “ES2.GetEIS” function defined in section 5.3.1 shall be mapped to the
<rps:ES2-GetEISResponse> element described in the following figure:
In case of function execution success or success with warning, the returned <rps:Eis> shall
be filled with EIS as described in Annex E.
The output data of the “ES2.DownloadProfile” function defined in section 5.3.2 shall be
mapped to the <rps:DownloadProfileResponse> element described in the following figure:
The response data may not be guaranteed to be provided, irrespective of the result of the
function execution.
The output data of the “ES2.UpdatePolicyRules” function defined in section 5.3.3 shall be
mapped to the <rps:ES2.UpdatePolicyRulesResponse> element described in the following
figure:
In case of function execution success or success with warning, the returned function may not
return any eUICC response in the <rps:EuiccResponseData> element.
In case of function execution failure or expiration the eUICC response may be provided.
The output data of the “ES2.EnableProfile” function defined in section 5.3.5 shall be
mapped to the <rps:EnableProfileResponse> element described in the following figure:
The output data of the “ES2.DisableProfile” function defined in section 5.3.6 shall be
mapped to the <rps:DisableProfileResponse> element described in the following figure:
The output data of the “ES2.DeleteProfile” function defined in section 5.3.7 shall be mapped
to the <rps:DeleteProfileResponse> element described in the following figure:
The output data of the “ES3.GetEIS” function defined in section 5.4.1 shall be mapped to the
<rps:ES3-GetEISResponse> element described in the following figure:
In case of function execution success or success with warning, the returned <rps:Eis> shall
be filled with only:
The output data of the “ES3.AuditEIS” function defined in section 5.4.2 shall be mapped to
the <rps:AuditEISResponse> element described in the following figure:
In case of function execution success or success with warning, the returned <rps:Eis> shall
be filled accordingly to what is described in section A.3.5.1 of this Annex.
The output data of the “ES3.CreateISDP” function defined in section 5.4.3 shall be mapped
to the <rps:ES3-CreateISDPResponse> element described in the following figure:
In case of function execution success or success with warning, the returned function shall
return the ISD-P-AID value in the <rps:Isd-p-aid> element and the eUICC response in the
<rps:EuiccResponseData> element.
The output data of the “ES3.SendData” function defined in section 5.4.4 shall be mapped to
the <rps:ES3-SendDataResponse> element described in the following figure:
The output data of the “ES3.UpdatePolicyRules” function defined in section 5.4.6 shall be
mapped to the <rps:ES3.UpdatePolicyRulesResponse> element described in the following
figure:
The output data of the “ES3.EnableProfile” function defined in section 5.4.8 shall be
mapped to the <rps:EnableProfileResponse> element described in the following figure:
The response data may not be guaranteed to be provided, irrespective of the result of the
function execution. If provided, the response data is in the <rps:euiccResponseData>
element.
The output data of the “ES3.DisableProfile” function defined in section 5.4.9 shall be
mapped to the <rps:DisableProfileResponse> element described in the following figure:
The response data may not be guaranteed to be provided, irrespective of the result of the
function execution. If provided, the response data is in the <rps:euiccResponseData>
element.
The output data of the “ES3.DeleteISDP” function defined in section 5.4.10 shall be mapped
to the <rps:DeleteISDPResponse> element described in the following figure:
The response data may not be guaranteed to be provided, irrespective of the result of the
function execution. If provided, the response data is in the <rps:euiccResponseData>
element.
The output data of the “ES4.GetEIS” function defined in section 5.5.1 shall be mapped to the
<rps:ES4-GetEISResponse> element described in the following figure:
In case of function execution success or success with warning, the returned <rps:Eis> shall
be filled with EIS as described in Annex E.
For <rps:Profile> element, only Profiles relevant to requesting MNO should be listed.
The output data of the “ES4.UpdatePolicyRules” function defined in section 5.5.2 shall be
mapped to the <rps:ES4.UpdatePolicyRulesResponse> element described in the following
figure:
The output data of the “ES4.AuditEIS” function defined in section 5.5.4 shall be mapped to
the <rps:ES4-AuditEISResponse> element described in the following figure:
In case of function execution success or success with warning, the returned <rps:Eis> shall
be filled accordingly to what is described in Annex E.
The output data of the “ES4.EnableProfile” function defined in section 5.5.5 shall be
mapped to the <rps:ES4.EnableProfileResponse> element described in the following figure:
The response data may not be guaranteed to be provided, irrespective of the result of the
function execution. If provided, the response data is in the <rps:euiccResponseData>
element.
The output data of the “ES4.DisableProfile” function defined in section 5.5.6 shall be
mapped to the <rps:DisableProfileResponse> element described in the following figure:
The response data may not be guaranteed to be provided, irrespective of the result of the
function execution. If provided, the response data is in the <rps:euiccResponseData>
element.
The output data of the “ES4.DeleteProfile” function defined in section 5.5.7 shall be mapped
to the <rps:DeleteProfileResponse> element described in the following figure:
The response data may not be guaranteed to be provided, irrespective of the result of the
function execution. If provided, the response data is in the <rps:euiccResponseData>
element.
The output data of the “ES4.PrepareSMSRChange” function defined in section 5.5.8 shall
be mapped to the <rps:ES4-PrepareSMSRResponse> element described in the following
figure:
The output data of the “ES4.SMSRChange” function defined in section 5.5.9 shall be
mapped to the <rps:ES4-SMSRResponse> element described in the following figure:
The output data of the “ES7.CreateAdditionalKeySet” function defined in section 5.6.1 shall
be mapped to the <rps:ES7-CreateAdditionalKeySetEUICCResponse> element described in
the following figure:
The output data of the “ES7.HandoverEUICC” function defined in section 5.6.2 shall be
mapped to the <rps:ES7-HandoverEUICCResponse> element described in the following
figure:
The input data of the “ES7.AuthenticateSMSR” function defined in section 5.6.3 shall be
mapped to the <rps:ES7-AuthenticateSMSRRequest> element described in the following
figure:
The output data of the “ES7.AuthenticateSMSR” function defined in section 5.6.3 shall be
mapped to the <rps:ES7-AuthenticateSMSRResponse> element described in the following
figure:
Web Services technology, following the OASIS and W3C WS-* standard, is the SOA
environment recommended for the deployment of the off-card entities interfaces specified in
this document. This technology provides interoperability and loose coupling between the
interface provider and the interface consumer, also named respectively as "message
receiver" and "message sender", “or “function provider” and “function requester”.
However this specification does not prevent from using another type of technology if it is
suitable for a specific deployment. For sure, it implies that both message sender and
message receiver uses the same technology and security around matches the level of
expectation expressed in this document.
Nevertheless, in case Web Services is used, this section is normative and implementation
shall comply with the requirements provided in this section.
Web Services related to the same eUICC shall be serialised by the Function requester. For
example to avoid key establishment to happen before ISD-P is created. Procedures
described in section 3 shall be strictly followed regarding the sequence call.
If several Web Service calls are received by the Function provider for the same eUICC, then
the Function provider could either:
Return the following exception: 'Function for the same eUICC is already in process'.
Or accept the new function execution request, and queue it to be executed after the
already accepted function execution requests for this eUICC. This can only be
applicable to asynchronous request (see B.2.3.3).
This specification mandates usage of SOAP v1.2 as the minimal version and specified
in [40].
The binding of the messages defined in Annex A to SOAP shall follow the rules defined in
this section.
SOAP Header
The information contained in the RPSHeader of the message shall be transferred
into the SOAP header. See also B.2.2.1
SOAP Body
Only the element contained in the RPSBody structure shall be sent into the SOAP
Body. It means that:
The RPSMessage envelope shall not be sent.
The full RPSHeader structure shall not be sent.
The RPSBody envelope shall not be sent
The SOAP body shall contain the rps:MessageVersion attribute filled with the
value of the <rps:RPSMessage>/<rps:MessageVersion> attribute.
As a consequence one RPS message corresponds to one SOAP message, and it is
impossible to send several RPS messages in a single SOAP message.
Note that all information of the RPS message is bind to the SOAP message, so no
information is lost during the binding.
<rps:RPSMessage> <soap:Envelop>
<rps:RPSHeader> <soap:Header >
<rps:…/>
… …
<rps:…/>
</rps:RPSHeader> </soap:Header>
<rps:RPSBody> <soap:Body>
<rps:…> <rps:…>
</rps:…> </rps:…>
</rps:RPSBody> </soap:Body>
</rps:RPSMessage> </soap:Envelop>
/wsa:From
This OPTIONAL element (of type wsa:EndpointReferenceType) provides the value for
the [source endpoint] property.
In the context of this specification this element is MANDATORY except in the synchronous
response and defines the function requester. It shall be filled with:
The sender URI. This value is not mapped from any value of the RPS Header, but
it should be representative of the sender entity.
A mandatory query parameter “EntityId” containing the
<rps.SenderEntity>/<rps:EntityId> value
An optional query parameter “EntityName” containing the
<rps.SenderEntity>/<rps:EntityName> value
An optional query parameter “UserName” containing the <rps.SenderName>
Example:
<rsp:SenderEntity>
< rsp:EntityId>1.3.6.1.4.1.11111</rsp:EntityId><!--example
value -->
<rsp:EntityName>ACompany</rsp:EntityName>
</rsp:SenderEntity>
<rsp:SenderName>aSenderAccountId</rsp:SenderName>
Would be mapped into:
<wsa:From">
<wsa:Address>http://ACompany.com/RPS?EntityId=1.3.6.1.4.1.11111?Entit
yName = ACompany? UserName= aSenderAccountId</wsa:Address>
</wsa:From>
/wsa:To
This REQUIRED element (of type xs:anyURI) provides the value for the [destination]
property.
In the context of this specification this element is MANDATORY and defines the function
provider. It shall be filled with:
The URL of the web service endpoint to which the message is sent. This value is
not mapped from any value of the RPS Header, but it should be representative of
the receiving entity.
<rps:ReceiverEntity>
<rps:EntityId>1.3.6.1.4.1.22222</rps:EntityId><!-- example
value -->
</rps:ReceiverEntity>
Would be mapped into:
<wsa:To>http://ACompany.com/SMDP/ES2Services?EntityId=1.3.6.1.4.1.222
22</wsa:To>
/wsa:ReplyTo
This OPTIONAL element (of type wsa:EndpointReferenceType) provides the value for
the [reply endpoint] property. If this element is NOT present, then the value of the [address]
property of the [reply endpoint] EPR is "http://www.w3.org/2005/08/addressing/anonymous".
In the context of this specification this element is OPTIONAL. This element shall be present
only when:
<rps:ResponseEndpoint>http://ACompagny.com/SMDP/ES3Services</rps:Resp
onseEndpoint>
<rps:ReceiverEntity>
<rps:EntityId>1.3.6.1.4.1.33333</rps:EntityId><!-- example
value -->
</rps:ReceiverEntity>
<wsa:ReplyTo>
<wsa:Address>http://ACompany.com/SMDP/ES3Services?EntityId=1.3.6.1.4.1.3333
3</wsa:Address> </wsa:ReplyTo>
/wsa:MessageID
This OPTIONAL element (whose content is of type xs:anyURI) conveys the [message id]
property.
In the context of this specification this element is MANDATORY whatever the MEP. This
element shall be filled with:
<rps:MessageId>//MySenderDomain/123</rps:MessageId><rps:TransactionId
>MyTansactionID1</rps:TransactionId>
<rps:ContextId>MyContextID1</rps:ContextId><rps:MessageDate>2013-04-
18T09:45:00Z</rps:MessageDate>
Would be mapped into:
<wsa:MessageID>//MySenderDomain/123?TransactionId=MyTansactionID1?Con
textId=MyContextID1?MessageDate=2013-04-18T09:45:00Z</wsa:MessageID>
/wsa:Action
This REQUIRED element (whose content is of type xs:anyURI) conveys the value of the
[action] property.
In the context of this specification this element is MANDATORY, and the format of this
element shall be:
Where:
For the ES2 ‘GetEIS’ part of the ‘Profile Management’ function group, the relevant
/wsa:Action shall be (assumed to be called as a Synchronous Request-Response
MEP):
For the request:
<wsa:Action>http://gsma.com/ES2/ProfileManagement/ES2-
GetEISRequest</wsa:Action>
For the response:
<wsa:Action>http://gsma.com/ES2/ProfileManagement/ES2-
GetEISResponse</wsa:Action>
For the ES3 ‘EnableProfile’ part of the ‘Platform Management’ function group, the
relevant /wsa:Action shall be (assumed to be called as a Asynchronous Request-
Response with callback MEP):
For the ES3 ‘EnableProfile’ part of the ‘Platform Management’ function group, the
relevant /wsa:Action shall be (assumed to be called as a Asynchronous with Polling
MEP):
For the request:
<wsa:Action>http://gsma.com/ES3/PlatformManagement/ES3-
EnableProfile</wsa:Action>
For the response:
<wsa:Action>http://gsma.com/ES3/PlatformManagement/ES3-
EnableProfile</wsa:Action>
/wsa:FaultTo
This OPTIONAL element (of type wsa:EndpointReferenceType) provides the value for the
[fault endpoint] property.
In the context of this specification this element SHALL NOT be used. Any fault shall be sent
to (in the preferred order):
/wsa:RelatesTo
This OPTIONAL (repeating) element information item contributes one abstract [relationship]
property value, in the form of an (IRI, IRI) pair. The content of this element (of type
xs:anyURI) conveys the [message id] of the related message.
Example:
<rps:RelatesTo>//MySenderDomain/123</rps:Relates>
Would be mapped into:
<wsa:RelatesTo>//MySenderDomain/123</wsa:RelatesTo>
All the following elements are described in further detail in WS-MakeConnection [43], only
the elements that are used throughout this document are detailed here.
To indicate to the Function provider that the Function requester is not addressable and will
use Asynchronous with polling MEP (see B.2.3.3), the /wsa:ReplyTo header element shall
indicate one of the two anonymous URL:
By using one of the two above anonymous /wsa:ReplyTo URL constructs, the Function
provider knows that ‘Asynchronous with Polling’ mode is requested and shall answer with
HTTP 202 (ACCEPT), see B.2.3.3.
To get a Function execution response, The Function provider shall send a new SOAP
message with the /wsmc:MakeConnection element in the body; this new message
establishes a contextualised back-channel for the transmission of the message response
according to matching criteria (defined below).
In the context of this specification, the SOAP message allowing getting a function execution
response message shall contain:
In the Header:
B.2.2 Security
To secure the messages being sent between Function requester and Function provider, one
of the two following mechanisms shall be used:
11. Relying on mutual authenticated transport level security (Transport Layer Security,
TLS)
2. Relying on transport level security (TLS) with only server side authentication and WS-
Security standards
This specification mandates usage of TLS v 1.2 defined in RFC 5246 [15] to allow
appropriate algorithm and key length as defined in section 2.4.1.
Function requester and Function provider OIDs shall be registered and respective
values have been communicated to each party
Function requester and Function provider URL shall have been communicated to
each party
Function requester and Function provider shall agree on the MEP for response
handling of asynchronous function: Asynchronous Request-Response with callback
or Asynchronous with polling.
Function requester and Function provider shall agree on the type of security
mechanism used and respective credential:
WS-Security
If UsernameToken Profile is used, the Username and Password shall be setup at
receiving entities.
If X509 Certificate Token Profile is used, the receiving entity shall trust the
sending entity issued certificate.
Transport Level Security
Function requester and Function provider party trust must have been established
on a X509 certificate chain basis.
NOTE: Receiving entity and sending entity could either be the Function requester of
the Function provider.
B.2.2.2 Identification/Authentication/Authorisation
Authentication of the sending party of a SOAP message shall rely on either the Transport
layer security (using TLS certificate of the sending party) or the WS-Security [44]. In this
case the SOAP message shall include specific WS-Security elements containing a security
token, UserNameToken or X509Token as agreed during secure channel set-up (see 2.3.1).
Message receiver shall be able to process Web Service Security tokens as specified in the
OASIS specification [44], specifically:
B.2.2.3 Integrity
The integrity of the message shall exclusively rely on the transport level security (TLS).
B.2.2.4 Confidentiality
The confidentiality of the message shall exclusively rely on the transport level security (TLS).
(1) The SOAP header of the message sent in a HTTP POST from Function requester to
Function provider shall contain:
/wsa:From (REQUIRED)
/wsa:To (REQUIRED)
/wsa:MessageID (REQUIRED)
/wsa:Action (REQUIRED)
(2) The response to the message is on the HTTP(s) return channel with code 200 (OK) and
the SOAP header shall contain:
/wsa:From (OPTIONAL)
/wsa:To (REQUIRED)
/wsa:MessageID (REQUIRED)
/wsa:Action (REQUIRED)
(1) The SOAP header of the message sent in a HTTP POST from Function requester to
Function provider shall contain:
/wsa:From (REQUIRED)
/wsa:To (REQUIRED)
/wsa:ReplyTo (OPTIONAL)
/wsa:MessageID (REQUIRED)
/wsa:Action (REQUIRED)
(2) The Function requester shall be able to handle 202 (ACCEPT) HTTP response
codes.
NOTE: In case the response is 200 (OK) steps (3) and (4) will be skipped if it is not
a new session.
(3) The response to the message is sent in a HTTP POST from Function provider to
Function requester, and the SOAP header shall contain:
/wsa:From (REQUIRED)
/wsa:To (REQUIRED)
/wsa:MessageID (REQUIRED)
/wsa:Action (REQUIRED)
(1) The SOAP header of the message sent in a HTTP POST from Function requester to
Function provider shall contain:
/wsa:From (REQUIRED)
/wsa:To (REQUIRED)
/wsa:MessageID (REQUIRED)
/wsa:Action (REQUIRED)
(2) Function provider shall reply with a HTTP 202 (ACCEPT). (3 or 5) Function provider
makes a WS-MakeConnection call as defined in Annex B-Section 2.1.2 with a header
containing:
<wsa:Action>http://docs.oasis-open.org/ws-
rx/wsmc/200702/MakeConnection<wsa:Action>
And a body containing:
<wsmc:MakeConnection ...>
<wsmc:Address>AnonymousURL (same value as /wsa:ReplyTo
above)</wsmc:Address>
</wsmc:MakeConnection>
(4 or 6) The response to the message is sent in a HTTP response from Function provider to
Function requester, and the SOAP header shall contain:
/wsa:From (REQUIRED)
/wsa:To (REQUIRED)
/wsa:MessageID (REQUIRED)
/wsa:Action (REQUIRED)
(1) The SOAP header of the message sent in a HTTP POST from Function requester to
Function provider shall contain:
/wsa:From (REQUIRED)
/wsa:To (REQUIRED)
/wsa:MessageID (REQUIRED)
/wsa:Action (REQUIRED)
(2) The response to the message is on the HTTP return channel with code 202 (ACCEPT)
and with an empty body.
<ResponseEndpoint>http://ACompany.com/RPS/MyEndPoint</ResponseEndpoint>
<TransactionId>MyTransID1</TransactionId>
<MessageId>//MySenderDomain/123</MessageId>
<MessageType>ES4-EnableProfileRequest</MessageType>
<MessageDate>2013-04-18T09:30:47Z</MessageDate>
</RPSHeader>
<RPSBody>
<ES4-EnableProfileRequest>
<FunctionCallIdentifier>callId:1</FunctionCallIdentifier>
<ValidityPeriod>3600</ValidityPeriod>
<Eid>89001012012341234012345678901224</Eid>
<ICCID>8933010000000000001</ICCID>
</ES4-EnableProfileRequest>
</RPSBody>
</RPSMessage>
<wsa:Address>http://ACompany.com/RPS?EntityId=1.3.6.1.4.1.111111?EntityName
=ACompany?UserName=aSenderAccountID</wsa:Address>
</wsa:From>
<wsa:To>http://AnotherCompany.com?EntityId=1.3.6.1.4.1.222222</wsa:To>
<wsa:MessageID>//MySenderDomain/123?TransactionId=MyTransID1?MessageDate=20
13-04-18T09:30:47Z</wsa:MessageID>
<wsa:Action>http://gsma.com/ES4/ProfileManagement/ES4-
EnableProfile</wsa:Action>
<wsa:ReplyTo>
<wsa:Address>http://ACompany.com/RPS/MyEndPoint</wsa:Address>
</wsa:ReplyTo>
</s:Header>
<s:Body rps:MessageVersion="1.0.0">
<rps:ES4-EnableProfileRequest>
<rps:FunctionCallIdentifier>callID:1</rps:FunctionCallIdentifier>
<rps:ValidityPeriod>3600</rps:ValidityPeriod>
<rps:Eid>89001012012341234012345678901224</rps:Eid>
<rps:ICCID>8933010000000000001</rps:ICCID>
</rps:ES4-EnableProfileRequest>
</s:Body>
</s:Envelope>
MessageVersion="1.0.0">
<RPSHeader>
<SenderEntity>
<EntityId>1.3.6.1.4.1.222222</EntityId><!-- Sample OID -->
</SenderEntity>
<SenderName>AnotherSenderAccountId</SenderName>
<ReceiverEntity>
<EntityId>1.3.6.1.4.1.111111</EntityId><!-- Sample OID -->
</ReceiverEntity>
<TransactionId>MyTransID1</TransactionId>
<MessageId>//MyProviderDomain/99</MessageId>
<MessageType>ES4-EnableProfileResponse</MessageType>
<RelatesTo>//MySenderDomain/123</RelatesTo>
<MessageDate>2013-04-18T09:45:00Z</MessageDate>
</RPSHeader>
<RPSBody>
<ES4-EnableProfileResponse>
<FunctionExecutionStatus>
<Status>EXECUTED_SUCCESS</Status>
</FunctionExecutionStatus>
</ES4-EnableProfileResponse>
</RPSBody>
</RPSMessage>
In the context described in the example of the previous section 2.2.1, the function execution
response is bound to the following SOAP message:
<wsa:Address>http://AnotherCompany.com/RPS?EntityId=1.3.6.1.4.1.222222?User
Name=AnotherSenderAccountId</wsa:Address>
</wsa:From>
<wsa:To>http://AnotherCompany.com?EntityId=1.3.6.1.4.1.111111</wsa:To>
<wsa:MessageID>//MyProviderDomain/99?TransactionId=MyTransID1?MessageDate=2
013-04-18T09:45:00Z</wsa:MessageID>
<wsa:Action>http://gsma.com/ES4/PlatformManagement/ES4-
EnableProfile</wsa:Action>
<wsa:RelatesTo>//MySenderDomain/123</wsa:RelatesTo>
</s:Header>
<s:Body rps:MessageVersion="1.0.0">
<rps:ES4-EnableProfileResponse>
<rps:FunctionExecutionStatus>
<rps:Status>EXECUTED_SUCCESS</rps:Status>
</rps:FunctionExecutionStatus>
</rps:ES4-EnableProfileResponse>
</s:Body>
</s:Envelope>
B.3.1 ES1
Function name Binding Information
http://gsma.com/ES1/eUICCManagement/ES1-RegisterEISRequest
RegisterEIS /wsa:Action Request
/wsa:Action http://gsma.com/ES1/eUICCManagement/ES1-RegisterEISResponse
Response
B.3.2 ES2
Function name Binding Information
/wsa:Action http://gsma.com/ES2/DataPreparation/ES2-GetEISRequest
GetEIS
Request
/wsa:Action http://gsma.com/ES2/DataPreparation/ES2-GetEISResponse
Response
MEP Asynchronous Request-Response with CallBack
/wsa:Action http://gsma.com/ES2/ProfileManagement/ES2-DownloadProfile
DownloadProfile
Request
http://gsma.com/ES2/ProfileManagementCallback/ES2-
/wsa:Action
DownloadProfile
Response
MEP Synchronous Request-Response
/wsa:Action http://gsma.com/ES2/ProfileManagement/ES2-UpdatePolicyRules
UpdatePolicyRules
Request
/wsa:Action http://gsma.com/ES2/ProfileManagement/ES2-UpdatePolicyRules
Response
UpdateSubscriptionAddress MEP Synchronous Request-Response
http://gsma.com/ES2/ProfileManagement/ES2-
/wsa:Action
UpdateSubscriptionAddressRequest
Request
http://gsma.com/ES2/ProfileManagement/ES2-
/wsa:Action
UpdateSubscriptionAddressResponse
Response
MEP Asynchronous Request-Response with CallBack
/wsa:Action http://gsma.com/ES2/PlatformManagement/ES2-EnableProfile
EnableProfile
Request
/wsa:Action http://gsma.com/ES2/PlatformManagementCallback/ES2-EnableProfile
Response
MEP Asynchronous Request-Response with CallBack
/wsa:Action http://gsma.com/ES2/PlatformManagement/ES2-DisableProfile
DisableProfile
Request
/wsa:Action http://gsma.com/ES2/PlatformManagementCallback/ES2-DisableProfile
Response
MEP Asynchronous Request-Response with CallBack
/wsa:Action http://gsma.com/ES2/PlatformManagement/ES2-DeleteProfile
DeleteProfile
Request
/wsa:Action http://gsma.com/ES2/PlatformManagementCallback/ES2-DeleteProfile
Response
MEP Notification (One-Way)
http://gsma.com/ES2/PlatformManagement/ES2-
/wsa:Action
HandleProfileDisabledNotification HandleProfileDisabledNotification
Request
/wsa:Action (none)
Response
MEP Notification (One-Way)
http://gsma.com/ES2/PlatformManagement/ES2-
/wsa:Action
HandleProfileEnabledNotification HandleProfileEnabledNotification
Request
/wsa:Action (none)
Response
MEP Notification (One-Way)
HandleSMSRChangeNotification http://gsma.com/ES2/PlatformManagement/ES2-
/wsa:Action
HandleSMSRChangeNotification
Request
/wsa:Action (none)
Response
MEP Notification (One-Way)
http://gsma.com/ES2/PlatformManagement/ES2-
/wsa:Action
HandleProfileDeletedNotification HandleProfileDeletedNotification
Request
/wsa:Action (none)
Response
B.3.3 ES3
Function name Binding Information
/wsa:Action
http://gsma.com/ES3/ProfileManagement/ES3-GetEISRequest
GetEIS Request
/wsa:Action
http://gsma.com/ES3/ProfileManagement/ES3-GetEISResponse
Response
/wsa:Action
http://gsma.com/ES3/ProfileManagement/ES3-AuditEIS
AuditEIS Request
/wsa:Action
http://gsma.com/ES3/ProfileManagementCallBack/ES3-AuditEIS
Response
/wsa:Action
http://gsma.com/ES3/ProfileManagement/ES3-CreateISDP
CreateISDP Request
/wsa:Action
http://gsma.com/ES3/ProfileManagemenCallBack/ES3-CreateISDP
Response
/wsa:Action
http://gsma.com/ES3/ProfileManagement/ES3-SendData
SendData Request
/wsa:Action
http://gsma.com/ES3/ProfileManagementCallBack/ES3-SendData
Response
/wsa:Action http://gsma.com/ES3/ProfileManagement/ES3-
ProfileDownloadCompleted Request ProfileDownloadedCompletedRequest
/wsa:Action http://gsma.com/ES3/ProfileManagement/ES3-
Response ProfileDownloadedCompletedResponse
/wsa:Action
http://gsma.com/ES3/ProfileManagement/ES3-UpdatePolicyRules
UpdatePolicyRules Request
/wsa:Action
http://gsma.com/ES3/ProfileManagement/ES3-UpdatePolicyRules
Response
UpdateSubscriptionAddress
/wsa:Action http://gsma.com/ES3/ProfileManagement/ES3-
Request UpdateSubscriptionAddressRequest
/wsa:Action http://gsma.com/ES3/ProfileManagement/ES3-
Response UpdateSubscriptionAddressResponse
/wsa:Action
http://gsma.com/ES3/PlatformManagement/ES3-EnableProfile
EnableProfile Request
/wsa:Action
http://gsma.com/ES3/PlatformManagementCallBack/ES3-EnableProfile
Response
/wsa:Action
http://gsma.com/ES3/PlatformManagement/ES3-DisableProfile
DisableProfile Request
/wsa:Action
http://gsma.com/ES3/PlatformManagementCallBack/ES3-DisableProfile
Response
/wsa:Action
http://gsma.com/ES3/PlatformManagement/ES3-DeleteISDP
DeleteISDP Request
/wsa:Action
http://gsma.com/ES3/PlatformManagementCallBack/ES3-DeleteISDP
Response
/wsa:Action http://gsma.com/ES3/PlatformManagement/ES3-
UpdateConnictivitParameters Request UpdateConnectivityParameters
/wsa:Action http://gsma.com/ES3/PlatformManagementCallBack/ES3-
Response UpdateConnectivityParameters
/wsa:Action http://gsma.com/ES3/PlatformManagement/ES3-
HandleProfileDisabledNotification Request HandleProfileDisabledNotification
/wsa:Action
(none)
Response
/wsa:Action http://gsma.com/ES3/PlatformManagement/ES3-
HandleProfileEnabledNotification Request HandleProfileEnabledNotification
/wsa:Action
(none)
Response
/wsa:Action http://gsma.com/ES3/PlatformManagement/ES3-
HandleSMSRChangeNotification Request HandleSMSRChangeNotification
/wsa:Action
(none)
Response
/wsa:Action http://gsma.com/ES3/PlatformManagement/ES3-
Request HandleProfileDeletedNotification
/wsa:Action
(none)
Response
B.3.4 ES4
Function name Binding Information
/wsa:Action
http://gsma.com/ES4/ProfileManagement/ES4-GetEISRequest
GetEIS Request
/wsa:Action
http://gsma.com/ES4/ProfileManagement/ES4-GetEISResponse
Response
/wsa:Action
http://gsma.com/ES4/ProfileManagement/ES4-UpdatePolicyRules
UpdatePolicyRules Request
/wsa:Action
http://gsma.com/ES4/ProfileManagement/ES4-UpdatePolicyRules
Response
/wsa:Action http://gsma.com/ES4/ProfileManagement/ES4-
UpdateSubscriptionAddress Request UpdateSubscriptionAddressRequest
/wsa:Action http://gsma.com/ES4/ProfileManagement/ES4-
Response UpdateSubscriptionAddressResponse
/wsa:Action
http://gsma.com/ES4/ProfileManagement/ES4-AuditEIS
AuditEIS Request
/wsa:Action
http://gsma.com/ES4/ProfileManagementCallBack/ES4-AuditEIS
Response
/wsa:Action
http://gsma.com/ES4/PlatformManagement/ES4-EnableProfile
EnableProfile Request
/wsa:Action
http://gsma.com/ES4/PlatformManagementCallBack/ES4-EnableProfile
Response
DisableProfile /wsa:Action
http://gsma.com/ES4/PlatformManagement/ES4-DisableProfile
Request
/wsa:Action http://gsma.com/ES4/PlatformManagementCallBack/ES4-
Response DisableProfile
/wsa:Action
http://gsma.com/ES4/PlatformManagement/ES4-DeleteProfile
DeleteProfile Request
/wsa:Action
http://gsma.com/ES4/PlatformManagementCallBack/ES4-DeleteProfile
Response
/wsa:Action
http://gsma.com/ES4/eUICCManagement/ES4-PrepareSMSRChange
PrepareSMSRChange Request
/wsa:Action http://gsma.com/ES4/eUICCManagementCallBack/ES4-
Response PrepareSMSRChange
/wsa:Action
http://gsma.com/ES4/eUICCManagement/ES4-SMSRChange
SMSRChange Request
/wsa:Action
http://gsma.com/ES4/eUICCManagementCallBack/ES4-SMSRChange
Response
/wsa:Action http://gsma.com/ES4/PlatformManagement/ES4-
HandleProfileDisabledNotification Request HandleProfileDisabledNotification
/wsa:Action
(none)
Response
/wsa:Action http://gsma.com/ES4/PlatformManagement/ES4-
HandleProfileEnabledNotification Request HandleProfileEnabledNotification
/wsa:Action
(none)
Response
/wsa:Action http://gsma.com/ES4/eUICCManagement/ES4-
HandleSMSRChangeNotification Request HandleSMSRChangeNotification
/wsa:Action
(none)
Response
/wsa:Action http://gsma.com/ES4/PlatformManagement/ES4-
Request HandleProfileDeletedNotification
HandleProfileDeletedNotification
/wsa:Action
(none)
Response
B.3.5 ES7
Function name Binding Information
/wsa:Action
http://gsma.com/ES7/eUICCManagement/ES7-CreateAdditionalKeySet
CreateAdditionalKeySet Request
/wsa:Action http://gsma.com/ES7/eUICCManagementCallBack/ES7-
Response CreateAdditionalKeySet
/wsa:Action
http://gsma.com/ES7/eUICCManagement/ES7-HandoverEUICC
HandoverEUICC Request
/wsa:Action
http://gsma.com/ES7/eUICCManagementCallBack/ES7-HandoverEUICC
Response
/wsa:Action
http://gsma.com/ES7/eUICCManagement/ES7-AuthenticateSMSR
AuthenticateSMSR Request
/wsa:Action
http://gsma.com/ES7/eUICCManagementCallBack/ES7-AuthenticateSMSR
Response
WSDL files are provided within the SGP.02 Remote Provisioning Architecture for Embedded
UICC Technical Specification v3.1 WSDL ZIP package.
ES1_SMSR.wsdl
ES2_MNO.wsdl
ES2_SMDP.wsdl
ES3_SMDP.wsdl
ES3_SMSR.wsdl
ES4_MNO.wsdl
ES4_SMSR.wsdl
ES7_SMSR_Provider.wsdl
ES7_SMSR_Requester.wsdl
These WDSL files reference XML schemafiles (.xsd), which are also provided within
the SGP.02 Remote Provisioning Architecture for Embedded UICC Technical
Specification v3.1 WSDL ZIP package
1 DAP Verification Application is capable of verifying a DAP; Security Domain privilege shall also be set.
5 Card Reset Application has the privilege to modify historical bytes on one or more card interfaces.
6 CVM Management Application has the privilege to manage a shared CVM of a CVM Application.
7 Mandated DAP Application is capable of and requires the verification of a DAP for all load operations:
Verification Security Domain privilege and DAP Verification privilege shall also be set.
9 Authorized Application is capable of Card Content Management; Security Domain privilege shall
Management also be set.
10 Token Verification Application is capable of verifying a token for Delegated Card Content Management.
13 Global Registry Application may access any entry in the GlobalPlatform Registry.
14 Final Application The only Application accessible in card Life Cycle State CARD_LOCKED and
TERMINATED.
16 Receipt Generation Application is capable of generating a receipt for Delegated Card Content
Management.
17 Ciphered Load File The Security Domain requires that the Load File being associated to it is to be loaded
19 Contactless Self- Application is capable of activating itself on the contactless interface without a prior
Activation request to the Application with the Contactless Activation privilege.
The following rules apply for an eUICC with at least one Profile installed.
GlobalPlatform Card Specification [6] states: “This privilege distinguishes a Security Domain
from a 'normal' Application.”
GlobalPlatform Card Specification [6] states: “An application provider may require that their
Application code to be loaded on the card shall be checked for integrity and authenticity. The
DAP Verification privilege provides this service on behalf of an Application provider.”
Delegated Management:
GlobalPlatform Card Specification [6] states: “The privilege allows an Application Provider to
manage Card Content with authorisation.” A “Security Domain having the Token Verification
privilege controls such authorisation.”
Card Lock:
GlobalPlatform Card Specification [6] states: “This privilege allows an Application to set the
card life cycle state to CARD_LOCKED.”
On the eUICC, the Card Lock privilege is not applicable and shall not be assigned to any
security domain/Application. The equivalent mechanism of disabling a Profile shall be used.
Card Terminate:
GlobalPlatform Card Specification [6] states: “This privilege allows an Application to set the
card life cycle state to TERMINATED.”
On the eUICC, the Card Terminate privilege is not applicable and shall not be assigned to
any security domain/Application. The equivalent mechanism of deleting a Profile shall be
used.
Card Reset:
GlobalPlatform Card Specification [6] states: “An Application installed or made selectable
with the Card Reset privilege and no Implicit Selection parameter is registered in the
GlobalPlatform Registry as the implicitly selectable Application on the Basic Logical Channel
for all card I/O interfaces supported by the card if no other Application (other than the Issuer
Security Domain) is already registered as implicitly selectable on the Basic Logical Channel
of any card I/O interface”.
This privilege is relevant only when the Profile is enabled. Therefore, several Applications
may have this privilege on the eUICC, but this privilege shall be unique within a Profile.
If the Application inside a Profile with the Card Reset privilege is deleted the privilege is
reassigned to the corresponding MNO-SD.
CVM Management:
GlobalPlatform Card Specification [6] states: “The CVM Application, if present on a card,
provides a mechanism for a Cardholder Verification Method (CVM), including velocity
checking, that may be used by all Applications on the card”.
If an Application in a Profile has this privilege, it shall be relevant only when the Profile is
enabled. In that case, several Applications may have this privilege on the card, but this
privilege shall be unique within a Profile.
GlobalPlatform Card Specification [6] states: “A Controlling Authority may require that all
Application code to be loaded onto the card shall be checked for integrity and authenticity.
The Mandated DAP Verification privilege of the Controlling Authority's Security Domain
detailed in this Specification provides this service on behalf of the Controlling Authority”.
If an Application in a Profile has this privilege, it shall be relevant only when the Profile is
enabled. In that case, several Applications may have this privilege on the card, but this
privilege shall be unique within a Profile.
The DAP verification is mandated only when loading an Application inside the Profile.
Trusted Path:
GlobalPlatform Card Specification [6] states: "The 'Trusted Path' privilege qualifies an
Application as a Receiving Entity. Each Application present on the card playing the Role of a
Receiving Entity shall: Enforce the Issuer's security rules for inter-application
communication; Ensure that incoming messages are properly provided unaltered to the
Trusted Framework; Ensure that any response messages are properly returned unaltered to
the off-card entity”.
Authorised Management:
GlobalPlatform Card Specification [6] states: “Having a Security Domain with this privilege
allows a Security Domain provider to perform Card Content management without
authorisation (i.e. a token) in the case where the off-card entity is authenticated as the owner
(Security Domain Provider) of the Security Domain”.
Token Verification:
GlobalPlatform Card Specification [6] states: “This privilege allows a Security Domain
Provider, to authorize any Card Content management operation”.
Global Delete:
GlobalPlatform Card Specification [6] states: “This privilege provides the capability to remove
any Executable Load File or Application from the card even if the Executable Load File or
Application does not belong to this Security Domain”.
For MNO-SD and Applications inside a Profile, this privilege shall only allow deletion of
Applications in the corresponding Profile.
Global Lock:
GlobalPlatform Card Specification [6] states: “This privilege provides the right to initiate the
locking and unlocking of any Application on the card, independent of its Security Domain
Association and hierarchy. It also provides the capability to restrict the Card Content
Management functionality of OPEN”.
For MNO-SD and Applications inside a Profile, this privilege shall only allow locking of
Applications in the corresponding Profile.
Global Registry:
GlobalPlatform Card Specification [6] states: “The search is limited to the Executable Load
Files, Applications and Security Domains that are directly or indirectly associated with the
eUICC entity receiving the command. When the eUICC entity receiving the command has
the Global Registry privilege, the search applies to all Executable Load Files, Applications
and Security Domains registered in the GlobalPlatform Registry”.
For ISD-P and Applications inside a Profile, this privilege shall only allow looking for
Applications in the corresponding Profile.
Final Application:
GlobalPlatform Card Specification [6] states: “If a Security Domain has the Final Application
privilege only the GET DATA command shall be processed, all other commands defined in
this specification shall be disabled and shall return an error”.
On the eUICC, the Final Application privilege is not applicable and shall not be assigned to
any security domain/Application.
Global Service:
GlobalPlatform Card Specification [6] states: “One or more Global Services Applications may
be present on the card to provide services to other Applications on the card.
The MNO-SD or Applications inside a Profile with the Global Service privilege shall offer
service only when the Profile is enabled. Therefore, it is possible to have several
Applications registered on the same service in the same eUICC.
Receipt Generation:
GlobalPlatform Card Specification [6] states: “This privilege allows a Security Domain
Provider, typically the Card Issuer, to provide a confirmation for the performed card content
management. A Security Domain with Receipt Generation privilege requires the knowledge
of keys and algorithms used for Receipts generation”.
GlobalPlatform Card Specification [6] states: “This privilege allows a Security Domain
Provider to require that the Load File Data Block being associated to it shall be ciphered”.
Contactless Activation:
GlobalPlatform Card Specification [6] states: “The Contactless Activation privilege identifies
the CRS Application. This Privilege allows:
If an Application in a Profile has this privilege, it shall be relevant only when the Profile is
enabled. In that case, several Applications may have this privilege on the card, but this
privilege shall be unique within a Profile.
Contactless Self-Activation:
If an Application in a Profile has this privilege, it shall be relevant only when the Profile is
enabled.
Privilege Number Privilege ISD-R ISD-P MNO-SD Applications inside a Profile ECASD
0 Security Domain √ √ √ √
1 DAP Verification
2 Delegated Management
3 Card Lock
4 Card Terminate
5 Card Reset
8 Trusted Path √ √ √
9 Authorized Management √* √
14 Final Application
15 Global Service √
18 Contactless Activation
19 Contactless Self-Activation
A tick (√) denotes the presence of the indicated privilege and its assignment to the Security
Domain or Application.
A blank cell denotes that the assignment of the privilege is managed by the owner of the
Application (according to GlobalPlatform Card Specification [6]) of the Security Domain.
* Authorized Management privilege is only set when ISD-P is in CREATED state to allow
Profile Download and Installation.
** These privileges are mandatory for cards compliant to GlobalPlatform Card Specification
UICC Configuration [7].
The value of IMEI shall be directly copied from Terminal Response of the Provide Local
Information command (see ETSI TS 102 223 [3] and ETSI TS 124 008[20]).
Column ‘EUM Signed’: indicates if the data is part of the signature computed by the
EUM at the initial registration time.
ES1.RegisterEIS:
A ‘X’ indicates that the data shall to be provided
An empty cell indicates that the data shall not be provided
ES3.GetEIS, ES3.AuditEIS, ES4.GetEIS, ES4.AuditEIS, ES2.
HandleSMSRChangeNotification, ES3. HandleSMSRChangeNotification, ES4.
HandleSMSRChangeNotification , ,ES7.HandoverEUICC:
A ‘X’ indicates that the data may be provided
An empty cell indicates that the data shall not be provided ES2.HandleSMSRChangeNotification
ES3.HandleSMSRChangeNotification
ES4.HandleSMSRChangeNotification
ES7.HandoverEUICC
ES1.RegisterEIS
ES3.AuditEIS
ES4.AuditEIS
EUM Signed
ES2.GetEIS
ES3.GetEIS
ES4.GetEIS
Data name
eid X X X X X X X
eum-id X X X X X X
productionDate X X X X X X
platformType X X X X X X
platformVersion X X X X X X
remainingMemory X X X X X
Availablememoryforprofiles X X X X X
lastAuditDate X X X
smsr-id X X X X X
isd-p-loadfile-aid X X X X X
isd-p-module-aid X X X X X
iccid X X X X
isd-p-aid X X X X
mno-id X X X X
fallbackAttribute X X X
subscriptionAddress X X X
msisdn X X X
imsi X X X
state X X X
smdp-id X X
ProfileType X X X X
allocatedMemory X X X
freeMemory X X X
pol2 X X X
rules X X X
subject X X X
action X X X
qualification X X X
eUICC-Capabilities X X X X X X
CAT-TP-Support X X X X X X
CAT-TP-Version X X X X X X
HTTP-Support X X X X X X
HTTP-Version X X X X X X
secure-packet-version X X X X X X
Remote-provisioning-version X X X X X X
audit trail X
eumCertificateId X X X X X X
signatureAlgorithm X X X X X X
NOTE 1: The initial EIS comes with the information of the Profile(s) loaded and
installed by the EUM during the manufacturing.
NOTE 2: The initial EIS comes with the definition of the two Security Domains ISD-R
and ECASD.
NOTE 3: The EIS shall only contain the Profile owned by the requesting MNO
NOTE 4: The EIS shall contain all Security Domains definition except the current Key
set on ISD-R used by the current SM-SR.
NOTE 5: The EIS is signed using the private key of the EUM (see Figure 8).
“For a DES key, the key check value is computed by encrypting 8 bytes, each with value
'00', with the key to be checked and retaining the 3 highest-order bytes of the encrypted
result.”
“For a AES key, the key check value is computed by encrypting 16 bytes, each with value
'01', with the key to be checked and retaining the 3 highest-order bytes of the encrypted
result.”
“A key check value shall be computed as the three most significant bytes of the SHA-1
digest of the PSK TLS Key”.
Functional
Device
Requirement
Requirements
No.
At least one of the network access technologies defined by 3GPP in the non-exhaustive following
list:
o GERAN,
o UTRAN
o E-UTRAN.
UDP over IP [32] (subject to the right support of access network technology)
TCP over IP [33] (subject to the right support of access network technology)
SMS management.
SMS-PP MO as defined in [3] and SMS-PP MO as defined [33] or [29] BIP as defined in DEV4
DEV4 For Profile and Platform Management the Device shall support:
BIP (subject to the support of the right network access technology) as defined in [3] including
support of commands:
o CLOSE CHANNEL
o RECEIVE DATA
o SEND DATA
DEV5 The Device shall contain a unique IMEI (International Mobile Equipment Identity) value compliant with the
format defined in ETSI TS 123 003 [31].
The value of IMEI shall be directly copied from TERMINAL RESPONSE of the Provide Local Information
command (see ETSI TS 102 223 [3] and ETSI TS 124 008[20]).
DEV6 The Device shall support, as a minimum, the following set of commands (in addition to BIP
commands) as defined in ETSI TS 102 223 [3] and 3GPP TS 31.111 [27]. Basic SAT commands
(TERMINAL PROFILE, FETCH, TERMINAL RESPONSE)
PROVIDE LOCAL INFORMATION (location information, IMEI, NMR, date and time, access
technology, at least)
POLL INTERVAL, POLLING OFF, TIMER MANAGEMENT [at least one timer], ENVELOPE
(TIMER EXPIRATION)
SET UP EVENT LIST and ENVELOPE (EVENT DOWNLOAD – location status, call connected, call
disconnected, Access Technology Changed, Network Rejection)
DEV7 The Device shall comply with the GSMA-EICTA document “Security Principles Related to Handset Theft” [30]
DEV8 The Device may retrieve the EID defined in section 2.2.2 of this specification from the eUICC and shall
support the following commands as described in [35]:
DEV9 The Device shall support from the [35] the following commands for all generic purposes:
The private enterprise numbers may be found under the Internet Assigned Numbers
Authority: http://www.iana.org/assignments/enterprise-numbers/enterprise-numbers
EUM Identifier
Uniqueness Registration Entity
Identifier
1.3.6.1.4.1
eUICC Identifier
ISD-P AID within the eUICC SM-SR within a range Defined in GSMA ESIM Technical Specification
MNO-SD AID Within the Profile ETSI TS 101 220 (ISD AID)
MNO-SD TAR Within the Profile ETSI TS 101 220 (ISD TAR)
SM-SR Identifier
Uniqueness Registration Entity
Identifier
SM-DP Identifier
Uniqueness Registration Entity
Identifier
MNO Identifier
ISO
MNO OID within the ecosystem
1.3.6.1.4.1
MCC+MNC (IMSI) Global ITU-T for MCC and National Regulators for MNC
14ESIMWI406_08r1,
14ESIMWI406_09r3,
14ESIMWI406_10r1,
14ESIMWI406_11r1,
14ESIMWI406_12r1,
14ESIMWI406_13r1,
14ESIMWI406_16r1,
14ESIMWI406_21r1,
14ESIMWI406_22r1,
14ESIMWI406_23r1,
14ESIMWI406_24r1,
14ESIMWI406_25r1,
14ESIMWI406_27r1,
14ESIMWI406_28r1,
14ESIMWI409_02,
14ESIMWI409_03,
14ESIMWI409_04r1,
14ESIMWI409_06,
14ESIMWI409_07r1,
14ESIMWI409_09,
14ESIMWI409_10,
14ESIMWI409_11r1,
14ESIMWI409_12,
14ESIMWI409_14r1,
14ESIMWI409_16r1,
14ESIMWI409_17r1,
14ESIMWI409_18,
14ESIMWI409_19r1,
14ESIMWI409_21r1,
14ESIMWI409_25r1,
14ESIMWI409_26r1,
14ESIMWI409_27,
14ESIMWI409_28,
14ESIMWI409_29,
14ESIMWI409_32,
14ESIMWI409_33r1,
14ESIMWI409_38r1,
14ESIMWI409_39,
14ESIMWI409_40,
14ESIMWI409_44r1,
14ESIMWI409_46,
14ESIMWI410_04r1,
14ESIMWI411_02r1,
14ESIMWI411_03r1,
14ESIMWI411_04r2,
14ESIMWI411_05r2,
14ESIMWI411_11r2,
14ESIMWI411_13r6,
14ESIMWI411_14r1,
14ESIMWI411_15,
14ESIMWI411_16,
14ESIMWI411_25,
14ESIMWI411_26r4,
14ESIMWI411_27,
14ESIMWI411_30r1,
14ESIMWI411_31,
14ESIMWI411_32,
14ESIMWI411_34,
14ESIMWI411_37r1.
15ESIMWI412_03r1,
15ESIMWI413_01,
15ESIMWI413_02,
15ESIMWI413_03r1,
15ESIMWI413_04,
15ESIMWI413_05r1,
15ESIMWI413_06,
15ESIMWI413_07,
15ESIMWI414_02r3,
GSMA Embedded
15ESIMWI414_03r2, Alexis Michel,
SIM Leadership
V3.1 12/05/16 15ESIMWI414_04r1, Oberthur
Team and PSMC
15ESIMWI414_05r3, Technologies
15ESIMWI414_06r1,
15ESIMWI414_07r2,
15ESIMWI414_14r1,
15ESIMWI418_001r1,
16ESIMWI415_02r1,
16ESIMWI415_07r1,
16ESIMWI417_01r1,
16ESIMWI417_03r2,
15ESIMWI419_001.
It is our intention to provide a quality product for your use. If you find any errors or omissions,
please contact us with your comments. You may notify us at prd@gsma.com