eSIM RSP Knowledge Base

Comprehensive technical knowledge base covering 12 GSMA eSIM specifications. 84+ articles on Remote SIM Provisioning — SGP.02, SGP.22, SGP.32, SGP.41, SGP.29, SGP.23, SGP.25, SGP.26 and more.


Project maintained by AlexsCodingAgent Hosted on GitHub Pages — Theme by mattgraham

Key eUICC Test Cases: ISD-R, ECASD, and Profile Lifecycle

🏠 eUICC.tech > SGP.23-1 eUICC Testing > Key eUICC Test Cases: ISD-R, ECASD, and Profile Lifecycle

💡 Why this matters: Before any profile can be downloaded, before any carrier switch can happen, the eUICC must correctly handle the fundamental lifecycle of its secure domains and profiles. SGP.23-1’s 27 interface test groups and 8 behaviour test groups verify every state transition: from the first ATR byte through ISD-R selection, secure channel establishment, profile installation, enablement, and deletion. These are the tests that catch the bugs which would otherwise surface as “inexplicable” field failures.

Key takeaways:

  • ISD-R selection is tested across 9 sequences covering nominal cases, enabled/disabled profiles, LPAe support, and MEP configurations (A1, A2, B)
  • ES8+ secure channel testing covers InitialiseSecureChannel (5 error sequences), ConfigureISDP, StoreMetadata (11+ sequences), and LoadProfileElements (12 sequences)
  • ES10b profile download pipeline tests span PrepareDownload (curve-specific + error), LoadBoundProfilePackage, GetEUICCChallenge, and AuthenticateServer
  • ES10c local profile management tests GetProfilesInfo, EnableProfile, DisableProfile, DeleteProfile, and eUICCMemoryReset : the most heavily tested interface with hundreds of pages
  • Behavior testing covers retry mechanisms (Confirmation Code, one-time key reuse), forbidden PPRs, file structure validation, and notification handling
  • MEP (Multiple Enabled Profiles) adds extensive test sequences for multi-profile management across LSI multiplexing

SGP.23-1’s test cases are organised into two major chapters: Section 4 (Interface Compliance Testing, pages 37–595) and Section 5 (Procedure - Behaviour Testing, pages 595–611). Together they cover 27 interface-level test groups and 8 behaviour-level test groups, each containing multiple test sequences.


ISD-R Selection and ATR Testing

The very first thing tested is whether the eUICC powers up correctly and allows the LPA to select its ISD-R:

TC_eUICC_ATR_And_ISDR_Selection covers 9 test sequences:

# Scenario Key Verification
1 Nominal: ATR + Select ISD-R ATR contains tBi with b2=1; FCP Template present; ISD-R selection returns proprietary data with #R_ISDR_SELECTION
2 With Enabled Profile Same ISD-R selection but response includes #R_ISDR_SELECTION_EN_PROF : different proprietary data when a profile is enabled
3 LPAe Supported ISD-R selection response includes #R_ISDR_SELECTION_LPAE : the eUICC advertises its LPAe capability
4 MEP-A1 LSI Support present in ATR; MEP_MODE = '01'; configures 2 LSIs with IDs “010203”
5 MEP-A2 Similar to A1 but with MEP_MODE = '10'
6 MEP-B MEP_MODE = '11'; configures for MEP-B with possible auto-deselection behaviour
7-9 Additional MEP variants Various LSI multiplexing and auto-deselection configurations

The test verifies that the eUICC correctly advertises its capabilities through the ATR historical bytes and ISD-R selection response: the first trust boundary between the device and the eUICC.


ES8+ Secure Channel: Profile Delivery

The ES8+ interface is the secure tunnel through which profiles arrive from the SM-DP+. Four test case groups verify it:

InitialiseSecureChannel (4.2.3)

Five error sequences ensure the eUICC rejects malformed channel initiation:

ConfigureISDP (4.2.4)

Mandatory test case verifying that the eUICC correctly processes ISD-P configuration commands: allocating memory, setting up the security domain, and preparing for profile content.

StoreMetadata (4.2.5)

The most sequence-heavy ES8+ test group with 11+ test sequences covering:

LoadProfileElements (4.2.7)

Delivers the actual profile content. 12 test sequences cover:


ES10b: The Profile Download Pipeline

The ES10b interface is where the LPA orchestrates profile downloads. Key test groups:

PrepareDownload (4.2.10)

Four test case groups: three curve-specific (NIST, BRP, FRP) and one for error handling. Each verifies:

GetEUICCChallenge / GetEUICCInfo (4.2.12–13)

LoadBoundProfilePackage (4.2.11)

The critical delivery function. Curve-specific tests (NIST, BRP, FRP) plus error cases verify:

Notification Management (4.2.14–16)

Three test groups covering the notification lifecycle:

RPM Package Loading (4.2.28)

LoadRPMPackage (conditional on O_E_RPM) tests the Remote Profile Management capability: updating profile metadata, policy rules, or content on an already-installed profile without full re-download.


ES10c: Local Profile Management

The ES10c interface is where the user-facing profile operations happen. This is SGP.23-1’s most heavily tested interface:

GetProfilesInfo (4.2.20)

Returns information about all installed profiles. Test sequences verify:

EnableProfile (4.2.21)

The most complex test case group: spanning ~117 pages (from page 238 to 355). It covers:

DisableProfile (4.2.22)

Spans ~106 pages, covering:

DeleteProfile (4.2.23)

Covers permanent ISD-P removal:

eUICCMemoryReset (4.2.24)

Factory-resets the entire eUICC: all profiles and ISD-Ps deleted. Tests verify:


Behavior Testing: End-to-End eUICC Behaviour

Section 5 verifies functional behaviour beyond individual interface calls:

Retry Mechanism (5.2.1)

Tests the eUICC’s ability to handle failed downloads gracefully:

Forbidden PPRs (5.2.2)

Verifies that the eUICC refuses operations that violate Profile Policy Rules: the enforcement mechanism that prevents users (or malware) from performing disallowed profile operations.

eUICC File Structure (5.2.4)

Validates the eUICC’s internal file system: that EF_UST, EF_DIR, EF_ICCID, and EF_ARR are correctly structured and accessible through standard UICC file selection commands.

Delete/Enable/Disable Process Behaviour (5.2.5–7)

Beyond interface compliance, these behaviour tests verify the full process lifecycle:


📋 Summary


← Previous: eUICC Test Architecture: Readers, Scripts, and GSMA Tools · 🏠 Home Next: eUICC Security Testing: Certificates, Keys, and Channels

Based on GSMA SGP.23-1 v3.1.3 (27 January 2025) : RSP Test Specification for the eUICC, Sections 4.2, 5.2


← Previous: eUICC Test Architecture: Readers, Scripts, and GSMA Tools Section Index Next: eUICC Security Testing: Certificates, Keys, and Channels