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.
🏠 eUICC.tech > SGP.23-1 eUICC Testing > SGP.23-1 Overview: Testing the eUICC Itself
💡 Why this matters: SGP.23 tests the entire eSIM ecosystem as an integrated system: but before any of that integration testing can happen, the eUICC chip itself must be proven compliant. SGP.23-1 is the 797-page test bible dedicated exclusively to the eUICC: the embedded chip at the heart of every eSIM device. If your eUICC can’t pass these tests, nothing downstream works.
Key takeaways:
- SGP.23-1 is the eUICC-only companion to SGP.23, developed after SGP.23 was split into three documents (SGP.23-1, -2, -3) in 2018
- The only Implementation Under Test (IUT) is the eUICC: all other components (SM-DP+, SM-DS, LPA, MNO) are simulated
- Two testing scopes: interface compliance testing (Section 4) and system behaviour testing (Section 5)
- Tests target SGP.22 V3.1 (the M2M/IoT RSP specification), covering ES6, ES8+, ES10a, ES10b, and ES10c interfaces
- An Optional Features Table with 30+ mnemonic options lets eUICC vendors declare supported capabilities, driving conditional test applicability
- SGP.23-1 feeds into the SAS-UP (SAS for UICC Production) certification path, with the SAS accreditation number verified in test cases
SGP.23-1 v3.1.3 (797 pages, 27 January 2025) is the GSMA’s test specification for the eUICC component in isolation. Unlike the parent SGP.23 specification which tests all four IUT types together, SGP.23-1 zooms in on a single question: does this eUICC chip correctly implement every interface and behaviour defined in the RSP Technical Specification?
The original SGP.23 (v1.0, June 2017) was a single 913-page document covering all four IUT types: eUICC, LPAd/Device, SM-DP+, and SM-DS. By 2018, the GSMA recognised that the eUICC’s testing requirements were so extensive they warranted their own dedicated specification. SGP.23 was split into three documents:
This split allowed the eUICC testing to evolve independently, targeting SGP.22 V3.1 (the M2M/IoT profile) rather than the consumer-focused SGP.22 V2.x series. SGP.23-1 now stands at v3.1.3 with multiple MEP (Multiple Enabled Profiles) test additions.
(Note: SGP.33 is a separate family created later for IoT-specific testing: see SGP.33-3 articles.)
SGP.23-1 tests the eUICC across every interface defined for consumer/M2M Remote SIM Provisioning:
| Interface | Between | What’s Tested |
|---|---|---|
| ES6 | Operator → eUICC | OTA management: UpdateMetadata for Operator services via SCP80/SCP81 |
| ES8+ | SM-DP+ → eUICC | Secure end-to-end channel: InitialiseSecureChannel, ConfigureISDP, StoreMetadata, ReplaceSessionKeys, LoadProfileElements |
| ES10a | LDSd → eUICC | Profile discovery: GetEuiccConfiguredAddresses, SetDefaultDpAddress |
| ES10b | LPDd → eUICC | Profile download pipeline: PrepareDownload, LoadBoundProfilePackage, GetEUICCChallenge, GetEUICCInfo, notification management, AuthenticateServer, CancelSession, LoadCRL, GetRAT, LoadRPMPackage |
| ES10c | LUId → eUICC | Local profile management: GetProfilesInfo, EnableProfile, DisableProfile, DeleteProfile, eUICCMemoryReset, GetEID, SetNickname |
All commands are wrapped in STORE DATA APDUs and sent in a dedicated logical channel to the ISD-R (Issuer Security Domain - Root).
One of SGP.23-1’s most important innovations is its granular Optional Features Table (Table 4). Unlike simple “supports/doesn’t support” declarations, the table defines 30+ mnemonic options that drive conditional test applicability:
| Mnemonic | Feature |
|---|---|
O_E_NIST |
NIST P-256 curve for signing/verification |
O_E_BRP |
BrainpoolP256r1 curve |
O_E_FRP |
FRP256V1 (French national curve) |
O_E_SM2 |
SM2 (Chinese national algorithm) |
O_E_LPAe |
eUICC-resident LPA support |
O_E_LPA_PROXY |
LPA Proxy support |
O_E_REUSE_OTPK |
One-time key pair reuse for retry |
O_E_2_PIR |
Two Profile Installation Results |
O_E_RPM |
Remote Profile Management |
O_E_ENTERPRISE |
Enterprise Profiles |
O_E_INTEGRATED |
Integrated eUICC (SoC-embedded) |
O_E_MEP |
Multiple Enabled Profiles |
O_E_DEVICE_CHANGE |
Device Change and Profile Recovery |
O_E_OS_UPDATE |
OS Update capability |
Each test case in the Applicability Table (Table 5) maps to conditional expressions: M (mandatory), N/A (not applicable), or Ci (conditional on specific option combinations). This ensures vendors are only tested against features they actually claim to support.
The parent SGP.23 specification (v1.16) is a system-level test specification. Key differences:
SGP.23-1 sits in a broader certification ecosystem:
sasAcreditationNumber is correctly embedded in EUICCInfo2 and returned in GetEUICCInfo responses: linking the tested chip back to its accredited factory.Based on GSMA SGP.23-1 v3.1.3 (27 January 2025) : RSP Test Specification for the eUICC, Sections 1–3
| Section Index | Next: eUICC Test Architecture: Readers, Scripts, and GSMA Tools → |
| Section Index | Next: eUICC Test Architecture: Readers, Scripts, and GSMA Tools → |