|
TECHNICAL SPECIFICATION
Digital cellular telecommunications system (Phase 2+) (GSM);
Universal Mobile Telecommunications System (UMTS);
LTE;
5G;
(U)SIM Application Programming Interface (API);
(U)SIM API for Java™ Card
(3GPP TS 31.130 version 14.2.1 Release 14)
---------------------- Page: 1 ----------------------
3GPP TS 31.130 version 14.2.1 Release 14 1 ETSI TS 131 130 V14.2.1 (2020-04)
Reference
RTS/TSGC-0631130ve21
Keywords
5G,GSM,LTE,UMTS
ETSI
650 Route des Lucioles
F-06921 Sophia Antipolis Cedex - FRANCE
Tel.: +33 4 92 94 42 00 Fax: +33 4 93 65 47 16
Siret N° 348 623 562 00017 - NAF 742 C
Association à but non lucratif enregistrée à la
Sous-Préfecture de Grasse (06) N° 7803/88
Important notice
The present document can be downloaded from:
The present document may be made available in electronic versions and/or in print. The content of any electronic and/or
print versions of the present document shall not be modified without the prior written authorization of ETSI. In case of any
existing or perceived difference in contents between such versions and/or in print, the prevailing version of an ETSI
deliverable is the one made publicly available in PDF format at www.etsi.org/deliver.
Users of the present document should be aware that the document may be subject to revision or change of status.
Information on the current status of this and other ETSI documents is available at
If you find errors in the present document, please send your comment to one of the following services:
Copyright Notification
No part may be reproduced or utilized in any form or by any means, electronic or mechanical, including photocopying
and microfilm except as authorized by written permission of ETSI.
The content of the PDF version shall not be modified without the written authorization of ETSI.
The copyright and the foregoing restriction extend to reproduction in all media.
© ETSI 2020.
All rights reserved.
DECT™, PLUGTESTS™, UMTS™ and the ETSI logo are trademarks of ETSI registered for the benefit of its Members.
3GPP™ and LTE™ are trademarks of ETSI registered for the benefit of its Members and
of the 3GPP Organizational Partners.
oneM2M™ logo is a trademark of ETSI registered for the benefit of its Members and
of the oneM2M Partners.
GSM and the GSM logo are trademarks registered and owned by the GSM Association.
ETSI
---------------------- Page: 2 ----------------------
3GPP TS 31.130 version 14.2.1 Release 14 2 ETSI TS 131 130 V14.2.1 (2020-04)
Intellectual Property Rights
Essential patents
IPRs essential or potentially essential to normative deliverables may have been declared to ETSI. The information
pertaining to these essential IPRs, if any, is publicly available for ETSI members and non-members, and can be found
in ETSI SR 000 314: "Intellectual Property Rights (IPRs); Essential, or potentially Essential, IPRs notified to ETSI in
respect of ETSI standards", which is available from the ETSI Secretariat. Latest updates are available on the ETSI Web
server (https://ipr.etsi.org/).
Pursuant to the ETSI IPR Policy, no investigation, including IPR searches, has been carried out by ETSI. No guarantee
can be given as to the existence of other IPRs not referenced in ETSI SR 000 314 (or the updates on the ETSI Web
server) which are, or may be, or may become, essential to the present document.
Trademarks
The present document may include trademarks and/or tradenames which are asserted and/or registered by their owners.
ETSI claims no ownership of these except for any which are indicated as being the property of ETSI, and conveys no
right to use or reproduce any trademark and/or tradename. Mention of those trademarks in the present document does
not constitute an endorsement by ETSI of products, services or organizations associated with those trademarks.
Legal Notice
This Technical Specification (TS) has been produced by ETSI 3rd Generation Partnership Project (3GPP).
The present document may refer to technical specifications or reports using their 3GPP identities. These shall be
interpreted as being references to the corresponding ETSI deliverables.
The cross reference between 3GPP and ETSI identities can be found under .
Modal verbs terminology
In the present document "shall", "shall not", "should", "should not", "may", "need not", "will", "will not", "can" and
"cannot" are to be interpreted as described in clause 3.2 of the ETSI Drafting Rules (Verbal forms for the expression of
provisions).
"must" and "must not" are NOT allowed in ETSI deliverables except when used in direct citation.
ETSI
---------------------- Page: 3 ----------------------
3GPP TS 31.130 version 14.2.1 Release 14 3 ETSI TS 131 130 V14.2.1 (2020-04)
Contents
Intellectual Property Rights . 2
Legal Notice . 2
Modal verbs terminology . 2
Foreword . 4
1 Scope . 6
2 References . 6
3 Definitions and abbreviations . 7
3.1 Definitions . 7
3.2 Abbreviations . 7
4 Description . 7
4.0 Overview . 7
4.1 (U)SIM Java Card™ Architecture . 8
5 File Access API . 8
6 (U)SAT Framework . 8
6.0 Overview . 8
6.1 Applet triggering . 9
6.1.1 Exception Handling . 9
6.2 Definition of Events . 9
6.3 Registration . 13
6.4 Proactive command handling . 13
6.5 Envelope response handling . 14
6.6 System Handler management . 14
6.7 (U)SAT Framework behaviour . 15
7 UICC toolkit applet . 15
8 Geo Location API . 15
Annex A (normative): Java Card™ (U)SIM API . 16
Annex B (normative): Java Card™ (U)SIM API identifiers . 17
Annex C (normative): (U)SIM API package version management . 18
Annex D (normative): USIM API jar files . 19
Annex E (informative): Change History . 20
History . 22
ETSI
---------------------- Page: 4 ----------------------
3GPP TS 31.130 version 14.2.1 Release 14 4 ETSI TS 131 130 V14.2.1 (2020-04)
Foreword
This Technical Specification has been produced by the 3rd Generation Partnership Project (3GPP).
The contents of the present document are subject to continuing work within the TSG and may change following formal
TSG approval. Should the TSG modify the contents of the present document, it will be re-released by the TSG with an
identifying change of release date and an increase in version number as follows:
Version x.y.z
where:
x the first digit:
1 presented to TSG for information;
2 presented to TSG for approval;
3 or greater indicates TSG approved document under change control.
y the second digit is incremented for all changes of substance, i.e. technical enhancements, corrections,
updates, etc.
z the third digit is incremented when editorial only changes have been incorporated in the document.
In the present document, modal verbs have the following meanings:
shall indicates a mandatory requirement to do something
shall not indicates an interdiction (prohibition) to do something
The constructions "shall" and "shall not" are confined to the context of normative provisions, and do not appear in
Technical Reports.
The constructions "must" and "must not" are not used as substitutes for "shall" and "shall not". Their use is avoided
insofar as possible, and they are not used in a normative context except in a direct citation from an external, referenced,
non-3GPP document, or so as to maintain continuity of style when extending or modifying the provisions of such a
referenced document.
should indicates a recommendation to do something
should not indicates a recommendation not to do something
may indicates permission to do something
need not indicates permission not to do something
The construction "may not" is ambiguous and is not used in normative elements. The unambiguous constructions
"might not" or "shall not" are used instead, depending upon the meaning intended.
can indicates that something is possible
cannot indicates that something is impossible
The constructions "can" and "cannot" are not substitutes for "may" and "need not".
will indicates that something is certain or expected to happen as a result of action taken by an agency
the behaviour of which is outside the scope of the present document
will not indicates that something is certain or expected not to happen as a result of action taken by an
agency the behaviour of which is outside the scope of the present document
might indicates a likelihood that something will happen as a result of action taken by some agency the
behaviour of which is outside the scope of the present document
ETSI
---------------------- Page: 5 ----------------------
3GPP TS 31.130 version 14.2.1 Release 14 5 ETSI TS 131 130 V14.2.1 (2020-04)
might not indicates a likelihood that something will not happen as a result of action taken by some agency
the behaviour of which is outside the scope of the present document
In addition:
is (or any other verb in the indicative mood) indicates a statement of fact
is not (or any other negative verb in the indicative mood) indicates a statement of fact
The constructions "is" and "is not" do not indicate requirements.
ETSI
---------------------- Page: 6 ----------------------
3GPP TS 31.130 version 14.2.1 Release 14 6 ETSI TS 131 130 V14.2.1 (2020-04)
1 Scope
The present document defines the (U)SIM Application Programming Interface extending the "UICC API for Java
Card™" [2].
This API allows to develop a (U)SAT application running together with a (U)SIM application and using GSM/3G
network features.
The present document includes information applicable to network operators, service providers, server – (U)SIM – and
database manufacturers.
2 References
The following documents contain provisions which, through reference in this text, constitute provisions of the present
document.
- References are either specific (identified by date of publication, edition number, version number, etc.) or
non-specific.
- For a specific reference, subsequent revisions do not apply.
- For a non-specific reference, the latest version applies. In the case of a reference to a 3GPP document (including
a GSM document), a non-specific reference implicitly refers to the latest version of that document in the same
Release as the present document.
[1] ETSI TS 101 220: "Integrated Circuit Cards (ICC); ETSI numbering system for
telecommunication; Application providers (AID)".
[2] ETSI TS 102 241 V13.0.0: "UICC API for Java Card™"
[3] 3GPP TS 31.102: "Characteristics of the USIM Application".
[4] 3GPP TS 51.011 Release 4: "Specification of the Subscriber Identity Module- Mobile Equipment
(SIM – ME) interface".
[5] 3GPP TS 23.041: "Technical realization of Cell Broadcast Service (CBS)".
[6] 3GPP TS 31.101: "UICC-terminal interface; Physical and logical characteristics".
[7] 3GPP TS 31.111: "USIM Application Toolkit (USAT)".
[8] 3GPP TS 51.014 Release 4: "Specification of the SIM Application Toolkit for the Subscriber
Identity Module – Mobile Equipment (SIM – ME) interface".
[9] 3GPP TS 31.115: "Secured packet structure for the (U)SIM Toolkit applications".
[10] 3GPP TS 23.040: "Technical realization of the Short Message Service (SMS)".
[11] ORACLE "Application Programming Interface, Java Card™ Platform, 3.0.1 Classic Edition".
[12] ORACLE "Runtime Environment Specification, Java Card™ Platform, 3.0.1 Classic Edition".
[13] ORACLE "Virtual Machine Specification Java Card™ Platform, 3.0.1 Classic Edition".
Note: ORACLE Java Card™ Specifications can be downloaded at
http://docs.oracle.com/javame/javacard/javacard.html
[14] 3GPP TS 23.032: "Universal Geographical Area Description (GAD)".
[15] IEC 61162-1: "Maritime navigation and radio communication equipment and systems – Digital
interfaces".
ETSI
---------------------- Page: 7 ----------------------
3GPP TS 31.130 version 14.2.1 Release 14 7 ETSI TS 131 130 V14.2.1 (2020-04)
3 Definitions and abbreviations
3.1 Definitions
For the purposes of the present document, the terms and definitions defined in ETSI TS 102 241 [2] apply.
(U)SAT Framework : (U)SAT extension of the CAT Runtime Environment.
3.2 Abbreviations
For the purposes of the present document, the abbreviations defined in ETSI TS 102 241 [2] apply.
4 Description
4.0 Overview
This API is an extension to the ETSI TS 102 241 [2] "UICC API for Java Card™" and requires the implementation of
this specification.
The classes and interfaces described in this specification inherit functionality from the classes and interfaces specified
in the "UICC API for Java Card™".
The (U)SAT Framework described in this specification is an extension of the CAT Runtime Environment defined in
ETSI TS 102 241 [2].
ETSI
---------------------- Page: 8 ----------------------
3GPP TS 31.130 version 14.2.1 Release 14 8 ETSI TS 131 130 V14.2.1 (2020-04)
4.1 (U)SIM Java Card™ Architecture
The overall architecture of the (U)SIM API is based on the "UICC API for Java Card™" defined in
ETSI TS 102 241 [2].
UICC File 102 221 based Other Toolkit Applet
System Applications Applications (e.g. Toolkit
(e.g. SIM not based on service,
Server
Applet or 102 221 Remote
USIM Applet) Management
Applications,
ADF File Browser
System Server Applications)
TM
Java Card uicc.access uicc.toolkit uicc.system
Packages package package package
TM
(U)SAT Framework USATEnvelopeHandler
Java Card Runtime Environment
CAT Runtime Environment
Toolkit Toolkit Triggering
Handlers Registry Entity
Items that are defined in this specification
Figure 1: (U)SIM Java Card™ Architecture
5 File Access API
The (U)SIM file access API consists of the package uicc.usim.access. This package defines additional constants to
those defined in the uicc.access package from ETSI TS 102 241 [2]. The access to the file system, defined in
TS 51.011 [4] and TS 31.102 [3], is the one specified in ETSI TS 102 241 [2] via the UICC FileView Interface. When
selecting a cyclic file the current record number is defined, this applies also to files located under DF .
GSM
6 (U)SAT Framework
6.0 Overview
The (U)SIM toolkit API consists of the uicc.usim.toolkit package for toolkit features defined in TS 31.111 [7] and
TS 51.014 [8], and is based on the uicc.toolkit package defined in ETSI TS 102 241 [2].
ETSI
---------------------- Page: 9 ----------------------
3GPP TS 31.130 version 14.2.1 Release 14 9 ETSI TS 131 130 V14.2.1 (2020-04)
6.1 Applet triggering
See ETSI TS 102 241 [2].
6.1.1 Exception Handling
The following clause describes the handling of exceptions by the (U)SAT Framework in addition to the behaviour
defined in ETSI TS 102 241 [2] for the CAT Runtime Environment.
If an Applet triggered by EVENT_FORMATTED_SMS_PP_ENV event throws an ISOException with the reason code
(0x6FXX), it shall be sent to the terminal.
Other Exceptions shall not be propagated to the terminal.
6.2 Definition of Events
The following events can trigger a Toolkit Applet in addition to the events defined in ETSI TS 102 241 [2], all short
values are reserved in ETSI TS 102 241 [2]:
Table 1: (U)SAT event list
Event Name Reserved short
value
EVENT_FORMATTED_SMS_PP_ENV 2
EVENT_FORMATTED_SMS_PP_UPD 3
EVENT_UNFORMATTED_SMS_PP_ENV 4
EVENT_UNFORMATTED_SMS_PP_UPD 5
EVENT_UNFORMATTED_SMS_CB 6
EVENT_MO_SHORT_MESSAGE_CONTROL_BY_NAA 10
EVENT_FORMATTED_SMS_CB 24
EVENT_EVENT_DOWNLOAD_IWLAN_ACCESS_STATUS 30
EVENT_EVENT_DOWNLOAD_NETWORK_REJECTION 31
EVENT_EVENT_DOWNLOAD_CSG_CELL_SELECTION 33
EVENT_EVENT_DOWNLOAD_DATA_CONNECTION_STATUS_CHANGE 37
EVENT_FORMATTED_USSD 121
EVENT_UNFORMATTED_USSD 122
EVENT_EVENT_DOWNLOAD_IMS_REGISTRATION 119
EVENT_EVENT_DOWNLOAD_INCOMING_IMS_DATA 120
EVENT_FORMATTED_SMS_PP_ENV, EVENT_UNFORMATTED_SMS_PP_ENV,
EVENT_FORMATTED_SMS_PP_UPD, EVENT_UNFORMATTED_SMS_PP_UPD
There are two ways for a card to receive a Short Message Point to Point: via an ENVELOPE(SMS-PP DOWNLOAD)
APDU as defined in TS 31.111 [7] and TS 51.014 [8] or an UPDATE RECORD EF APDU as defined in
SMS
TS 31.102 [3] and TS 51.011 [4]. The EF can be either located under the DF or under any ADF as defined in
SMS Telecom
TS 31.102 [3] and TS 51.011 [4].
The received Short Message may be:
- formatted according to TS 31.115 [9] or an other protocol to identify explicitly the toolkit applet for which the
message is sent;
- unformatted (e.g. a toolkit applet specific protocol ) then the (U)SAT Framework will pass this data to all
registered toolkit applets.
When the Short Message is received as Concatenated Short Messages as defined in TS 23.040 [10], it is the
responsibility of the (U)SAT Framework to link single Short Messages together to re – assemble the original message
before any further processing. The original Short Message shall be placed in one SMS TPDU TLV (with TP-UDL field
coded on one octet) included in the USATEnvelopeHandler. The concatenation control headers used to re-assemble the
short messages in the correct order shall not be present in the SMS TPDU. The TP-elements of the SMS TPDU and the
Address (TS – Service-Centre-Address) shall correspond to the ones in the last received Short Message (independently
of the Sequence number of Information-Element-Data).
ETSI
---------------------- Page: 10 ----------------------
3GPP TS 31.130 version 14.2.1 Release 14 10 ETSI TS 131 130 V14.2.1 (2020-04)
The minimum requirement for the (U)SAT Framework is to process a concatenated short message with the following
properties:
- the Information Element Identifier is equal to the 8-bit reference number.
- it contains uncompressed 8 bit data or uncompressed UCS2 data.
EVENT_FORMATTED_SMS_PP_ENV
Upon reception of a TS 31.115 [9] formatted Short Message Point to Point (Single or Concatenated) via an
ENVELOPE, the (U)SAT Framework shall:
- verify the security of the Short Message as per TS 31.115 [9];
- trigger the toolkit applet registered with the corresponding TAR;
- take the optional Application Data posted by the triggered toolkit applet if present;
- secure and send the response packet using SMS-DELIVER-REPORT or SMS-SUBMIT.
When the toolkit applet is triggered, data shall be provided deciphered.
EVENT_UNFORMATTED_SMS_PP_ENV
Upon reception of an unformatted Short Message Point to Point (Single or Concatenated) via an ENVELOPE, the
(U)SAT Framework shall trigger all the Toolkit Applets registered to this event.
NOTE: As a consequence of the EnvelopeResponseHandler availability rules specified in clause 6.6, only the
first triggered toolkit applet is guaranteed to be able to send back a response.
EVENT_FORMATTED_SMS_PP_UPD
...