概要
eSIM(embedded SIM)は、従来の着脱可能なSIMカードと異なり、デバイスの基板に直接実装(はんだ付け)され、ソフトウェアで通信事業者のプロファイルを書き換えられるSIMです。正式名称はeUICC(embedded Universal Integrated Circuit Card)といい、GSMA(GSMA SGP.02/SGP.11/SGP.22/SGP.32)によって標準化されています。
eSIMの最大の特長はリモートプロビジョニングです。製品を工場出荷した後でも、ネットワーク経由でキャリアのプロファイル(IMSI・認証キー等)を書き込み・変更できます。これにより、グローバル展開する機器での現地キャリアへの自動切り替え、フィールド設置後のキャリア変更、不良プロファイルのリセット等がOTAで可能になります。
IoT機器では「M2M eSIM(SGP.02)」と「Consumer eSIM(SGP.22)」「IoT eSIM(SGP.32)」という規格が主に使われ、用途ごとに管理方法が異なります。
歴史・背景
eSIMの概念は2010年代初頭から検討が始まり、GSMAが2013年にM2M向けeSIM仕様(SGP.01/02)を公開しました。これは主に車載・産業機器を想定したものでした。
2016年にはAppleがApple Watch Series 3でコンシューマ向けeSIM(SGP.22)を初めて採用し、2018年のiPhone XS/XR以降、eSIM搭載スマートフォンが一般化しました。
IoT分野では2022年にGSMAがSGP.32(IoT向けeSIM管理仕様)を公開し、リソース制約の大きいIoT機器向けのeSIM管理を効率化する規格として業界標準化が進んでいます。日本では2020年以降、主要キャリアがeSIM対応サービスを開始しました。
技術仕様
eSIM規格の種類
| 規格 | 正式名 | 対象 | プロファイル管理者 |
|---|---|---|---|
| SGP.01/02 | M2M eSIM | 車載・産業IoT | SM-SR(外部サーバー)が管理 |
| SGP.11 | M2M Architecture | M2M eSIM全体アーキテクチャ | - |
| SGP.22 | Consumer eSIM | スマートフォン・ウェアラブル | エンドユーザーが自分で操作 |
| SGP.32 | IoT eSIM | リソース制約IoT機器 | SM-DP+サーバーが自動管理 |
eSIMのメモリ構造
eUICC(eSIM)の論理構造:
┌──────────────────────────────────────┐
│ eUICC OS(JavaCard OS + GlobalPlatform)│
├──────────────────────────────────────┤
│ ISD-R(発行者セキュリティドメインルート)│
│ → eSIM全体の管理・制御 │
├──────────────────────────────────────┤
│ eUICC製造者の証明書・鍵(EUM) │
├──────────────────────────────────────┤
│ プロファイル1(キャリアA) │
│ ├─ ISD-P(プロファイルSドメイン) │
│ ├─ IMSI / Ki / OPc │
│ ├─ ネットワークアクセスアプリ │
│ └─ STKアプレット等 │
├──────────────────────────────────────┤
│ プロファイル2(キャリアB)(待機中) │
│ └─ ... │
└──────────────────────────────────────┘
通常のeUICC(IoT向け)のメモリ容量:
- NVM: 512KB〜数MB(プロファイル格納用)
- 格納可能プロファイル数: 2〜8個(メモリ次第)
SGP.02(M2M eSIM)のアーキテクチャ
M2M eSIMのリモートプロビジョニング構成:
キャリア(MNO)側:
SM-DP(Subscription Manager Data Preparation)
→ プロファイル生成・暗号化
管理サーバー側:
SM-SR(Subscription Manager Secure Routing)
→ eUICCとの通信経路を管理
→ プロファイルのインストール・有効化・削除を制御
デバイス側:
eUICC(eSIMチップ)
→ SM-SRと暗号化チャンネルで通信
→ プロファイルの安全な保管・実行
SGP.32(IoT eSIM)の簡略化
SGP.32では、リソース制約の大きいIoT機器向けにプロトコルを簡略化:
SGP.22との違い:
SGP.22(Consumer):
デバイス → LPA(Local Profile Assistant)→ SM-DP+
LPAはOS上のアプリとして動作
SGP.32(IoT):
デバイス → eIM(eSIM IoT Manager)→ SM-DP+
デバイス側にLPAを持たなくてよい
最小限のTLSクライアント実装で対応可能
→ メモリが少ないMCUベースのIoT機器でeSIMを活用可能
動作原理
プロファイルのダウンロード・有効化フロー(SGP.32)
1. デバイス製造・出荷時:
- Bootstrap profile(仮プロファイル)をeSIMに書き込み
- 最小限の通信でSM-DP+に接続できる状態
2. フィールドでの初回起動:
- Bootstrapプロファイルで最低限のセルラー通信確立
- eIM(eSIM IoT Manager)サーバーに接続
3. プロファイルダウンロード:
eIM → SM-DP+ : プロファイル要求
SM-DP+ : 暗号化プロファイルを生成
eIM → デバイス: プロファイルダウンロード指示
デバイス → SM-DP+: プロファイルを暗号化チャンネルで受信
eUICC内 : プロファイルを安全にインストール
4. プロファイル有効化:
eIM → デバイス: Enable Profile指示
デバイス → eUICC: プロファイル切り替え
デバイス : 新プロファイル(本番キャリア)で再接続
プロファイル切り替えの実装例
// eUICC操作用ATコマンド(SGP.32対応モジュールの例)
// u-blox SARA-R510S等の場合
void esim_switch_profile(const char *iccid) {
char cmd[128];
// 現在のプロファイル一覧を取得
at_cmd("AT+CSIM=?", NULL, 1000);
// プロファイルのENABLE(ICCID指定)
snprintf(cmd, sizeof(cmd),
"AT+CRSM=242,28484,0,0,0,\"%s\"\r\n", iccid);
at_cmd(cmd, "OK", 10000);
// 切り替え後にモデムリセット
at_cmd("AT+CFUN=1,1\r\n", "OK", 5000);
// 再接続待機
wait_network_registration(60000);
}
// eIMへのプロビジョニング要求
void esim_request_provisioning(void) {
// OTA経由でeIMサーバーへ接続してプロファイル要求
// (実装はモジュールのeSIM管理ライブラリによって異なる)
at_cmd("AT+CRSM=192,..\"PROVISION\"\r\n", "OK", 30000);
}
用途・ユースケース
グローバル展開IoT機器
国際展開する機器では、各国キャリアのSIMを個別に調達・挿入するコストが大きな負担でした。eSIMを使えば1種類のデバイスを全世界に出荷し、現地で自動的に適切なキャリアプロファイルをダウンロードできます:
- 輸送用コンテナ追跡デバイス(世界中を移動)
- グローバルに販売するウェアラブル機器
- 多国間で使用する業務用タブレット
車載機器(コネクテッドカー)
自動車は10〜20年の長期使用が想定されます。その間にキャリアの統廃合・ネットワーク世代交代が起きても、eSIMなら車をディーラーに持ち込まずにOTAでプロファイル更新できます:
- テレマティクス(車両データ収集)
- 緊急通報システム(eCall:EU義務化)
- コネクテッドカーサービス(地図更新・OTA)
スマートメーター・インフラ
20〜30年の長期稼働が求められるメーターインフラでは、eSIMによるキャリア柔軟性が価値を持ちます:
- 電力・ガス・水道のスマートメーター
- 設置場所によるキャリア品質の差異をOTAで最適化
ウェアラブル・ヘルスケア
SIMスロットが設けられない小型機器でも、基板直付けeSIMなら搭載可能:
- スマートウォッチ(Apple Watch, Galaxy Watch等)
- 子ども向け見守り端末
- 高齢者向け緊急通報ウェアラブル
実装・開発のポイント
eSIM対応モジュール選定
| モジュール | メーカー | 規格 | 特徴 |
|---|---|---|---|
| SARA-R510S | u-blox | LTE-M + SGP.32 | IoT eSIM対応 |
| EG21-G | Quectel | LTE Cat-1 + eUICC | M2M eSIM |
| EXS62-W | Telit | NB-IoT + eSIM | 小型・省電力 |
| nRF9161 | Nordic | LTE-M/NB-IoT + eSIM | SiP、低消費 |
Bootstrap SIMとの組み合わせ
フィールド設置前の物流管理を考慮したeSIM設計:
推奨フロー:
製造時: Bootstrap profile書き込み
└─ 通信コスト最小(LTE-M/NB-IoT対応)
└─ 複数国・複数キャリアで使えるMVNO Profile
出荷・物流中: SIM無効化(コスト削減)
フィールド設置・初回電源ON:
└─ Bootstrap profileで最小限通信
└─ eIMサーバーへ接続
└─ 本番キャリアプロファイルを自動DL・有効化
└─ Bootstrap profileは削除or無効化
運用中:
└─ キャリア変更はOTAで対応(工事不要)
└─ プロファイル更新・ポリシー変更も遠隔
セキュリティ考慮事項
eUICC本体のセキュリティ:
- GSMA SAS(Security Accreditation Scheme)認定取得が重要
- EUM(eUICC Manufacturer)証明書チェーン
- GlobalPlatform Secure Channel Protocol(SCP03)使用
OTA通信のセキュリティ:
- TLS 1.2以上(証明書ピニングを推奨)
- プロファイルはAES-128以上で暗号化
- SM-DP+へのアクセスはデバイス証明書で認証
不正プロビジョニング防止:
- Activation Codeの一回限り使用(使用後無効化)
- QRコード・スキャン等のシンプルなプロビジョニングフロー
他技術との比較
eSIM vs 物理SIM(IoT観点)
| 比較項目 | 物理SIM(MFF2) | eSIM(eUICC) |
|---|---|---|
| チップ単価 | 安い | やや高い(eUICC分の追加コスト) |
| プロファイル変更 | 基板交換または工場作業が必要 | OTAで遠隔変更可能 |
| マルチキャリア | 物理的にSIM交換 | プロファイル切り替えで対応 |
| 設計自由度 | SIMスロット配置が必要 | スロット不要でコンパクト設計 |
| 初期開発コスト | 低い | eIM連携等の開発コストが必要 |
| グローバル展開 | 各国SIM調達が必要 | 1モデルで全世界対応可能 |
物理SIM(MFF2)は単純・安価・枯れた技術である一方、eSIMはOTA管理・グローバル対応・長期使用での柔軟性が優れます。デバイスの展開規模・グローバル展開の有無・ライフサイクルの長さによって最適な選択が変わります。
eSIMとソフトSIM(iSIM)
さらに進化した形態として、SIMの機能をSoC(System on Chip)に統合した「iSIM(integrated SIM)」が登場しています(例: Qualcomm Snapdragon X65の内蔵SIM機能)。iSIMはeSIMよりさらに小型・低コストですが、チップの選定自由度が下がるトレードオフがあります。