USAT

Universal Subscriber Identity Module Application Toolkit

Services
Introduced in R99
A standardized execution environment and API within a UICC/USIM that allows operator-provisioned applications (applets) to run securely. It enables value-added services like SIM-based menus, OTA configuration, and secure transaction authentication directly from the SIM card.

Description

The Universal Subscriber Identity Module Application Toolkit (USAT) is a comprehensive framework, standardized by 3GPP and ETSI, that turns a traditional SIM card into a secure, programmable platform capable of hosting and executing applications. It is essentially the application layer that runs on top of the underlying UICC (Universal Integrated Circuit Card) hardware and USIM (Universal Subscriber Identity Module) logical structure. USAT defines a set of commands, procedures, and an execution environment that allows applets—small applications written in Java Card or Native code—to interact with the mobile device (the Terminal Equipment or ME) and, through it, with the mobile network and external services. The architecture is based on a proactive model: the USAT application on the UICC can send "Proactive Commands" to the ME. These commands instruct the ME to perform actions such as displaying text menus, playing tones, setting up calls, sending Short Message Service (SMS) messages, or providing location information. The ME executes the command and sends a "Terminal Response" back to the UICC with the result. This interaction is managed through the ETSI-defined "AT" command interface. Key components include the USAT Interpreter for processing commands, the File System for storing applets and data, and the Security Domain for managing cryptographic keys and secure channel protocols like OTA (Over-The-Air) for remote application management. USAT enables services like SIM Toolkit (STK) menus for banking or info services, OTA provisioning of device settings (e.g., internet access points), and is the foundation for more advanced secure elements used in mobile financial services (e.g., NFC payments via SIM). It provides a trusted, tamper-resistant environment isolated from the phone's main operating system, which is crucial for security-sensitive operations.

Purpose & Motivation

USAT was developed to unlock the potential of the SIM card beyond its original purpose of subscriber authentication and storage of network parameters. In the early days of GSM, the SIM was a relatively static component. USAT, evolving from the earlier SIM Application Toolkit (SAT), was created to provide a standardized, vendor-independent platform for mobile network operators to deploy and manage value-added services directly from the secure SIM card. This solved several problems: it gave operators control over service delivery independent of handset manufacturers, provided a ubiquitous secure execution environment across all compliant phones, and enabled services that required a high level of trust, such as mobile banking. Before USAT, introducing new features often required handset firmware updates or proprietary solutions, which were slow and fragmented. USAT established a universal ecosystem where operators could write an application once and deploy it OTA to millions of subscribers' SIMs, knowing it would work on any compliant device. This motivated the creation of a wide range of services, from simple info menus to complex payment and identity applications, establishing the SIM as a key platform for mobile commerce and secure services in the 2G/3G/4G eras, a role that continues to evolve with embedded SIM (eSIM) and IoT applications.

Key Features

  • Defines a proactive command model for UICC-to-ME interaction
  • Provides a secure execution environment for Java Card applets
  • Enables Over-The-Air (OTA) provisioning and management of applications
  • Supports SIM Toolkit (STK) menus for user-interactive services
  • Includes APIs for telephony functions (call control, SMS), user interface, and device information
  • Offers a tamper-resistant secure element for cryptographic and payment operations

Evolution Across Releases

R99 Initial

Formally introduced as USAT in 3GPP Release 99, consolidating and extending the earlier GSM SIM Application Toolkit (SAT) for the 3G UMTS era. It established the core proactive command set, the architecture for application execution on the UICC/USIM, and laid the groundwork for secure service provisioning in 3G networks.

Defining Specifications

SpecificationTitle
TS 21.905 3GPP TS 21.905
TS 22.038 3GPP TS 22.038
TS 22.112 3GPP TS 22.112
TS 22.121 3GPP TS 22.121
TS 23.127 3GPP TS 23.127
TS 24.229 3GPP TS 24.229
TS 27.007 3GPP TS 27.007
TS 31.102 3GPP TR 31.102
TS 31.111 3GPP TR 31.111
TS 31.112 3GPP TR 31.112
TS 31.113 3GPP TR 31.113
TS 31.114 3GPP TR 31.114
TS 31.117 3GPP TR 31.117
TS 31.901 3GPP TR 31.901
TS 32.102 3GPP TR 32.102