Tech-invite3GPPspaceIETFspace
21222324252627282931323334353637384‑5x

Content for  TS 31.131  Word version:  18.0.0

Top   Top   None   None   Next
1…   4…

 

1  Scopep. 7

A Subscriber Identity Module Application Programming Interface (SIM API) has been defined in TS 42.019 as a technology-independent API by which toolkit applications and (U)SIMs co-operate. That specification is independent of the programming language technology used to create the application, the platform used to host the application and the runtime environment used to execute the application.
The present document includes information applicable to (U)SIM toolkit application developers creating applications using the C programming language ISO/IEC 9899 [7]. The present document describes an interface between toolkit applications written in the C programming language and the (U)SIM in order to realize the co-operation set forth in TS 42.019. In particular, the API described herein provides the service of assembling proactive commands and disassembling the responses to these commands for the application programmer.
Software tools, integrated software development environments and software management systems that may be used to create application programs are explicitly out of scope of the present document.
Up

2  Referencesp. 7

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]
TR 21.905: "Vocabulary for 3GPP Specifications".
[2]
TS 31.111: "USIM Application Toolkit (USAT)".
[3]
TS 23.048: "Security Mechanisms for the (U)SIM application toolkit; Stage 2".
[4]
TS 42.019: "Subscriber Identity Module Application Programming Interface (SIM API); Stage 1".
[5]
ISO 639 (1988): "Code for the representation of names of languages".
[6]
TS 23.038: "Alphabets and language specific information".
[7]
ISO/IEC 9899: "Programming Languages - C".
[8]
GSM TS 11.14: "Specification of the SIM Application Toolkit for the Subscriber Identity Module - Mobile Equipment (SIM - ME) interface".
[9]
Tool Interface Standard (TIS) Executable and Linking Format Specification Version 1.2.
[10]
SYSTEM V Application Binary Interface, Edition 4.1.
[11]
TS 51.011: "Specification of the Subscriber Identity Module - Mobile Equipment (SIM ME) interface".
[12]  Void.
[13]
TS 31.115: "Secured packet structure for (U)SIM Toolkit applications".
[14]
TS 31.116: "Remote APDU Structure for (U)SIM Toolkit applications".
[15]
TS 31.102: "Characteristics of the USIM Application".
[16]
TS 31.101: "UICC-Terminal Interface, Physical and Logical Characteristics".
Up

3  Definitions and abbreviationsp. 8

3.1  Definitionsp. 8

For the purposes of the present document, the following terms and definitions apply:
application:
computer program that defines and implements a useful domain-specific functionality
The term may apply to the functionality itself, to the representation of the functionality in a programming language, or to the realization of the functionality as executable code.
application executable:
representation of an application as collection of executable codes
application program:
representation of an application in a programming language such as assembly language, C, Java, WML or XHTML
Application Programming Interface (API):
collection of entry points and data structures that an application program can access when translated into an application executable
byte code:
processor-independent representation of a basic computer operation such as "increment by one" that is executed by computer program called a byte code interpreter
data structure:
memory address that can be accessed by an application executable in order to read or write data
entry point:
memory address that can be branched to by an application executable in order to access functionality defined by an application-programming interface. Depending on the software technology, an entry point is also called a subroutine, a function or a method.
executable code:
generic term for either byte code or native code
framework:
defines a set of Application Programming Interface (API) functions for developing applications and for providing system services to those applications
loadfile:
representation of an application executable that is transmitted from the terminal to the smart card operating system. A loadfile typically includes information about the application executable in addition to the application executable itself.
native code:
processor-dependent representation of a basic computer operation such as "increment by one" that is executed by the hardware circuitry of a computer's central processing unit
toolkit application:
uses the commands described in TS 31.111 and TS 11.14 [8]
Up

3.2  Abbreviationsp. 8

For the purpose of the present document, the following abbreviations apply:
APDU
Application Protocol Data Unit
API
Application Programming Interface
CAT
Card Application Toolkit
CS
Circuit Switched
DCS
Digital Cellular System
DF
Dedicated File
DTMF
Dual Tone Multiple Frequency
EF
Elementary File
ELF
Executable and Linkable Format
FID
File Identifier
GSM
Global System for Mobile communications
ME
Mobile Equipment
NAA
Network Access Application (SIM or USIM)
OTA
Over The Air
SIM
Subscriber Identity Module
SMS
Short Message Service
STK
SIM ToolKit
SW
Status Word
TAR
Toolkit Application Reference
TLV
Tag, Length, Value
TPDU
Transport Protocol Data Unit
UICC
(not an acronym)
URL
Uniform Resource Locator
USIM
Universal Subscriber Identity Module
USSD
Unstructured Supplementary Services Data
Up

Up   Top   ToC