LibeSIM

比嘉 叶

2026/10/10 01:00

eSIMのQRコードとは?Activation CodeとSM-DSの仕組みを詳しく解説

eSIMのQRコードとは?Activation CodeとSM-DSの仕組みを詳しく解説

無料ウェビナーのご案内

SIM・eSIMの基本を、動画でも学んでみませんか?

本ウェビナーでは、SIMカードとeSIMの違い、eUICC・プロファイル・SM-DP+の関係、プロファイルを遠隔で書き込む仕組みなどを、図を交えて約15分で解説します。

記事とあわせて全体像を整理したい方や、業務でeSIMを扱い始めた方におすすめです。学び直しや社内での情報共有にもご活用ください。

今すぐ申し込む(無料)

こんにちは、コモン・クリエーションでIoT・SIMエンジニアリングサービスでプロジェクトマネジメントを担当している比嘉です。 本記事では、eSIM の開通時に読み取る QR コードの正体である Activation Code と、QR コードを使わずにプロファイルを見つけるための SM-DS ディスカバリの仕組みを解説します。

はじめに

Consumer eSIM は、エンドユーザー自身の操作でプロファイルをダウンロードする「プル型」の設計です。このとき端末側の LPA(Local Profile Assistant。端末内のプロファイル管理ソフトウェア)は、最初に「どの SM-DP+ に、どの注文を取りに行けばよいか」を知る必要があります。GSMA の仕様 SGP.22 は、その手段として Activation Code・Default SM-DP+・SM-DS の 3 つを定義しています。

本稿では、以下の項目について SGP.22 v3.1 に基づいて整理します。

  • LPA が SM-DP+ を見つける 3 つの方法

  • Activation Code(QR コード)の構造と MatchingID

  • Default SM-DP+ の仕組みと用途

  • SM-DS(Root SM-DS)によるイベント登録・取得の流れ

Consumer RSP の全体像(SM-DP+/SM-DS/LPA の役割分担)は、SGP.21/SGP.22とは?Consumer eSIMのアーキテクチャで解説しています。本稿はその続きにあたります。


1. まず全体像から — 「プロファイルの受け取り方」をざっくり理解する

プロファイルのダウンロードを、荷物の受け取りにたとえてみます。MNO に eSIM を申し込むと、プロファイルという「荷物」が SM-DP+ という「窓口」に預けられます。端末(LPA)がこの荷物を受け取る方法は 3 つあります。

方式

たとえ

仕組み

Activation Code

窓口の住所と引換番号が書かれた引換券

QR コードや文字列で SM-DP+ のアドレスと注文の識別子を端末に渡す

Default SM-DP+

いつも決まった窓口に取りに行く

eUICC にあらかじめ書き込まれた SM-DP+ アドレスへ端末が自動で接続する

SM-DS

「あなた宛の荷物があります」という掲示板

SM-DP+ が SM-DS に「この eUICC 宛のイベントがある」と登録し、端末が掲示板を見に行く

Activation Code は、ユーザーが QR コードを読み取るという一手間が必要な代わりに、どの事業者のプロファイルでも受け取れる汎用的な方法です。Default SM-DP+ は、販売時点で契約先が決まっている端末(キャリアモデルなど)に向きます。SM-DS は、ユーザーが住所を知らなくても「あなた宛の荷物」の存在を端末が自動で発見できる仕組みで、QR コード読み取りすら不要な体験を実現します。

厳密には、この 3 方式は「LPA が最初に接続すべき RSP サーバーのアドレスと、注文を特定する識別子をどう入手するか」の違いであり、その後のダウンロード手順(相互認証と BPP の転送)は共通です。ダウンロード手順自体はeSIMプロファイルダウンロードフロー詳解で扱います。


2. Activation Codeの構造

2-1. フィールド構成(SGP.22 §4.1)

Activation Code(AC)は、$ 区切りの文字列として SGP.22 §4.1 Table 8 で定義されています。最大長は 255 文字です。

AC_Format $ SM-DP+アドレス $ AC_Token [$ SM-DP+ OID] [$ CC必須フラグ] [$ ...]

例: 1$SMDP.EXAMPLE.COM$04386-AGYFT-A74Y8-3F815

フィールド

必須/任意

内容

AC_Format

必須

現行フォーマットでは 1 固定。1 以外は無効として扱う

SM-DP+ Address

必須

SM-DP+ の FQDN(例: SMDP.EXAMPLE.COM)

AC_Token

必須

MatchingID(後述)。ゼロ長も可

SM-DP+ OID

任意

SM-DP+ 証明書(CERT.DPauth)の OID。なりすまし検知に使う

Confirmation Code Required Flag

任意

1 なら Confirmation Code(確認コード)の入力が必要

CI Public Key indicator

任意

v3.0 で追加。使用する eSIM CA ルート公開鍵の指定

Delete Notification for Device Change

任意

v3.0 で追加。Device Change 時の削除通知を運ぶ(この場合のみ 255 文字を超えてよい)

QR コードとして提供するときは、この文字列の先頭に LPA: を付けます。iPhone や Android が eSIM の QR コードを認識できるのは、この LPA:1$... という決まったプレフィックスがあるためです。

2-2. MatchingID(SGP.22 §4.1.1)

AC_Token の実体は MatchingID(オペレーターと SM-DP+ の間で発番される注文識別子)です。SGP.21 で言う「Activation Code Token」と同じものを指します。

  • MNO がダウンロード注文(ES2+.DownloadOrder)を出す過程で生成される

  • 大文字英数字(0-9、A-Z)と - のみで構成される。QR コードの英数字モードで小さく符号化するための制約である

  • SM-DP+ は既知の MatchingID を含むリクエストしか処理しない。つまり MatchingID は「引換券の番号」であると同時に、SM-DP+ を無差別なリクエストから守る役割も持つ

「Activation Code = SM-DP+ の住所 + 引換券(MatchingID)」

QR コードは単なる URL ではなく、この 2 つの情報を LPA に渡すための入れ物です。


3. Default SM-DP+ — コードを読まずに決まった窓口へ

Default SM-DP+ は、eUICC にあらかじめ設定された SM-DP+ アドレスです。LPA は「ES10a.GetEuiccConfiguredAddresses」ファンクションで eUICC からこのアドレスを読み出し、QR コードなしで SM-DP+ に接続します。

この方式では MatchingID を持たないため、ダウンロード要求の MatchingID は「なし(missing)」として送られます。SM-DP+ 側は、認証で得た EID を手がかりに、その eUICC 用に準備された注文を引き当てます。つまり「引換券なしで窓口に行き、身分証(EID)で荷物を特定してもらう」方式です。

キャリアが端末と回線をセットで販売するケースや、出荷時に接続先が決まっている IoT デバイスに適しています。ただし接続先が 1 つに固定されるため、複数事業者のプロファイルを自由に受け取る用途には向きません。


4. SM-DSディスカバリ — 「あなた宛のイベントがあります」

4-1. Root SM-DSとAlternative SM-DS

SM-DS(Subscription Manager - Discovery Server。プロファイルの所在を端末に知らせるディスカバリサーバー)は、SM-DP+ からの「この eUICC 宛にダウンロードすべきものがある」という Event Record(EID・EventID・接続先アドレスの組)を預かり、問い合わせてきた LPA に返します。

SM-DS には 2 つの階層があります。

  • Root SM-DS: GSMA が運営するディスカバリサーバー。eUICC は Root SM-DS のアドレスを出荷時から保持しており(v3 では複数の Root SM-DS アドレスを設定可能)、LPA は必ずここへ問い合わせできる

  • Alternative SM-DS: 事業者などが運営する任意のディスカバリサーバー。自身への登録を Root SM-DS へ転送(カスケード)できる

4-2. イベント登録から取得までの流れ(SGP.22 §3.6)

  1. MNO が SM-DP+ にダウンロード注文を出す

  2. SM-DP+ は「ES12.RegisterEvent」で、対象 eUICC の EID・EventID・自身のアドレスを SM-DS に登録する

  3. LPA は eUICC から Root SM-DS のアドレスを読み出す

  4. LPA と SM-DS が ES11 インターフェース上で相互認証する。SM-DS は認証で得た EID に紐づく Event Record を検索する

  5. SM-DS が Event Record を LPA に返す

  6. LPA は Event Record 中のアドレス(SM-DP+)へ接続する。このとき EventID を MatchingID として使う

  7. ダウンロード完了後、SM-DP+ は「ES12.DeleteEvent」でイベントを削除する

SM-DS が預かるのは「EID 宛のイベントがどこにあるか」だけで、プロファイルの中身は一切通りません。個人情報を持たない薄い掲示板として設計されている点が、SM-DS の重要な特徴です。

4-3. カスケード登録

Alternative SM-DS を使う場合、SM-DP+ は Alternative SM-DS に登録し、Alternative SM-DS がさらに Root SM-DS へ登録を転送できます(SGP.22 §3.6.1.2)。このとき Root SM-DS 側の Event Record には「Alternative SM-DS のアドレス」が入るため、LPA は Root SM-DS → Alternative SM-DS → SM-DP+ と 2 段でたどることになります。削除も同様に、EventID1(Alternative 側)と EventID2(Root 側)を使ってカスケードで行われます。


5. 3方式の使い分けとMatchingIDの関係

3 方式の違いは、最終的に「LPA がどこへ接続し、MatchingID に何を入れるか」に集約されます(SGP.22 §3.1.3)。

観点

Activation Code

Default SM-DP+

SM-DS

アドレスの入手元

QR コード/手入力

eUICC 内の設定

SM-DS の Event Record

MatchingID の値

AC_Token

なし(missing)

EventID

ユーザー操作

コード読み取りが必要

不要

不要

主な用途

汎用(MVNO・トラベル eSIM 等)

キャリアモデル端末、IoT

QR レス開通、機種変更

どの方式でも、その後の相互認証・ダウンロード手順は共通です。方式の選択は技術的な優劣ではなく、「誰が・いつ・どうやって開通させたいか」という商流の設計で決まります。


まとめ

  • LPA が SM-DP+ を見つける方法は、Activation Code・Default SM-DP+・SM-DS の 3 つ(SGP.22)

  • Activation Code は 1$アドレス$MatchingID$... という $ 区切りの文字列で、QR コード化時は LPA: を先頭に付ける

  • MatchingID は MNO と SM-DP+ の間の注文識別子であり、SM-DP+ を不正リクエストから守る役割も持つ

  • Default SM-DP+ は eUICC 内の固定アドレスに接続する方式で、MatchingID なしで EID から注文を引き当てる

  • SM-DS は EID 宛の Event Record を預かる「掲示板」で、GSMA 運営の Root SM-DS と任意の Alternative SM-DS の 2 階層がある

  • 3 方式の違いは「アドレスと MatchingID の入手方法」であり、その後のダウンロード手順は共通

QR コードの読み取りも、機種変更時の自動開通も、根は同じ「アドレスと引換券をどう LPA に渡すか」という問題です。この視点を押さえると、Consumer RSP の各手順がつながって見えてきます。


参考規格

  • GSMA SGP.21 v2.7 — RSP Architecture

  • GSMA SGP.22 v3.1 — RSP Technical Specification(§3.1.3 ダウンロード開始、§3.6 SM-DS 手順、§4.1 Activation Code)

  • ISO/IEC 18004 — QR Code bar code symbology specification

おわりに

弊社では「LibeSIM」として、SM-DP+やMVNO回線、eIM(eSIM IoT Remote Manager)、eUICC、IPA/LPAのご提供を行っております。 ご興味がございましたら、デモやPoC等行っておりますので、ぜひお問い合わせください。

https://common-creation.com/service/libesim

比嘉 叶

コモン・クリエーション株式会社

シニアマネージャー

eSIM Tech Partner「LibeSIM」のサービス開発と、SIMアプレット・SGP.32関連の受託開発のプロジェクトマネジメントを担当。ソフトウェア開発会社で約10年間、システムの開発とプロジェクトマネジメントに従事し、要件定義から開発・インフラ構築・顧客折衝までを一貫して手がける。