ES5 (SM-SR-eUICC) 接口上的 OTA 通信笔记
## ES5 (SM-SR-eUICC) 接口上的 OTA 通信笔记
ES5 接口用于 SM-SR 与 eUICC 之间的通信,主要用于平台管理命令,例如配置文件启用/禁用、POL1 更新等。
### 2.4.1 通用 OTA 要求
- **通信协议:**
- eUICC 必须支持 SMS,并支持 CAT_TP 或 HTTPS 或两者。
- SM-SR 必须支持 SMS、HTTPS 和 CAT_TP。
- 在 HTTPS 情况下,SM-SR 和 eUICC 可支持 DNS 解析以解析 SM-SR 的 IP 地址。
- SM-SR 可根据 eUICC 和设备功能以及要执行的平台或配置文件管理操作选择最合适的协议。
- **安全通道:**
- ES5 功能通过 SM-SR 与 ISD-R 之间建立的安全通道进行寻址。
- eUICC 必须支持 SCP80,并可支持 SCP81。
- **SCP80:** ISD-R 在发行前由 EUM 使用至少一个密钥集进行个性化,密钥版本号在“01”到“0F”之间。
- **SCP81:** ISD-R 使用至少一个密钥集进行个性化,密钥版本号在“40”到“4F”之间。
- **远程管理协议 (RAM):**
- eUICC 必须支持 ETSI TS 102 226 [5] 中定义的 RAM 和 RFM,特别是扩展远程应用程序数据格式和脚本链接。
### 2.4.3 短信 (SMS)
短信协议可用于以下情况:
- **HTTPS 会话触发:**
- SM-SR 使用特殊短信触发 eUICC 打开 HTTPS 会话。
- 短信应符合 GlobalPlatform Card Specification Amendment B [8] 中描述的格式,并包含必要的 TAR 信息。
- SM-SR 可以选择是否为此特殊短信请求 PoR,并相应地设置短信的 SPI2 字节。
- **CAT_TP 会话触发:**
- SM-SR 使用特殊短信触发 eUICC 打开 CAT_TP 会话。
- 短信应符合 ETSI TS 102 226 [5] 中描述的格式,并使用“请求 BIP 通道打开”和“请求 CAT_TP 链接建立”参数。
- **命令传输:**
- 当发送到 eUICC 的命令可以放入几条短信时,使用短信可以更有效地处理。
- **安全要求:**
- 除 3.15.1 节描述的通知外,短信 (MO 或 MT) 应使用 AES CMAC 模式的 64 位 CC,使用 AES 的 CBC 模式进行加密,并且计数器值较高 (SPI1='16')。
- PoR 应使用 AES CMAC 模式的 64 位 CC,使用 AES 的 CBC 模式进行加密,并使用 SMS-SUBMIT 模式发送。
- 所有这些安全要求也适用于 CAT_TP 会话期间交换的 SCP80 安全数据包。
#### 2.4.3.1 用于 HTTPS 会话触发的短信
- SM-SR 使用特殊短信触发 eUICC 打开 HTTPS 会话。
- 短信应符合 GlobalPlatform Card Specification Amendment B [8] 中“触发管理会话参数”部分的描述。
#### 2.4.3.2 用于 CAT_TP 会话触发的短信
- SM-SR 使用特殊短信触发 eUICC 打开 CAT_TP 会话。
- 短信应符合 ETSI TS 102 226 [5] 中描述的格式,并使用“请求 BIP 通道打开”和“请求 CAT_TP 链接建立”参数。
#### 2.4.3.3 短信中的命令格式
- 在短信中的安全脚本中发送到 eUICC 的命令应格式化为 ETSI TS 102 226 [5] 中定义的扩展远程命令结构。
- eUICC 应提供扩展远程响应结构作为答案。
### 2.4.4 超文本传输协议 (HTTPS)
#### 2.4.4.1 PSK-TLS
- **密码套件:**
- eUICC 必须支持 TLS 协议 v1.2 [15],并至少宣传以下预共享密钥密码套件之一:
- TLS_PSK_WITH_AES_128_GCM_SHA256
- TLS_PSK_WITH_AES_128_CBC_SHA256
- 预共享密钥的熵至少为 128 位。
- ISD-R 应配置为仅支持 TLS 1.2。
- SM-SR 应选择与上述两个密码套件相同或更高安全级别的密码套件。
- **PSK-ID 值:**
- PSK-ID 格式包含 PSK-ID 格式标识符、EID、安全域 AID、密钥标识符和密钥版本。
- PSK-ID 示例:
```
8001028110010203040506070809010203040506074F10000102030405060708090A0BOC 0D0E0F820101830140
```
- **TLS 会话管理限制:**
- 不支持 TLS 会话恢复 (RFC 4507 或 RFC 5077) 也不支持多个并行 TLS 会话。
#### 2.4.4.2 ISD-R 的 HTTP POST 请求
- ISD-R 使用 POST 请求获取远程 APDU 字符串并传输响应字符串。
- POST 请求必须严格遵循 GlobalPlatform Card Specification Amendment B [8] 中定义的格式。
- HTTP POST 标头字段 X-Admin-From 应填充 GlobalPlatform Card Specification Amendment B [8] 中标准化的“代理 ID”信息。
- eUICC 应使用分块模式 [Transfer-Encoding: chunked CRLF] 进行 POST 请求消息。
#### 2.4.4.3 SM-SR 的 HTTP POST 响应
- SM-SR 使用 POST 响应将远程 APDU 格式字符串传输到 ISD-R,并可能提供下一个 URI,该 URI 必须用于请求以下管理命令。
- POST 响应必须严格遵循 GlobalPlatform Card Specification Amendment B [8] 中定义的格式。
#### 2.4.4.4 HTTP 消息中的命令格式
- 在 HTTP 消息中的安全脚本中发送到 eUICC 的命令应格式化为具有不定长度编码的扩展远程命令结构。
- eUICC 将提供具有不定长度编码的扩展远程响应结构作为答案。
#### 2.4.4.5 HTTPS 会话触发的顺序
- 除非为特定过程另有说明,否则 eUICC 的 HTTPS 会话始终由 SM-SR 通过发送 MT-SMS 触发。
- 序列图描述了 HTTPS 会话触发的基本交换。
### 2.4.5 DNS 解析
- DNS 解析是一个可选功能,只有在以下情况下才会触发:
- eUICC 包含配置为向服务器发起 DNS 查询的 DNS 解析器客户端。
- SM-SR 依赖于 DNS 解析器服务器,该服务器能够提供与客户端查询发送的域名相关联的 IP 地址。
- eUICC 确定它必须解析 SM-SR 服务器的 IP 地址。
#### 2.4.5.1 确定是否需要 DNS 解析的标准
- eUICC 被请求打开 HTTPS 会话,并且 eUICC 支持 DNS 解析,并且 ISD-R 在其管理会话触发参数中没有配置 IP 地址,并且 ISD-R 具有 FQDN 和 DNS 服务器的 IP 地址,并且 ISD-R 尚未解析 FQDN 到 IP 地址,或者已解析但有理由认为解析值已过时。
#### 2.4.5.2 DNS 协议功能
- SM-SR 和 eUICC 的 DNS 解析器必须符合 RFC 1035 和 RFC 3596,定义域名系统及其协议,支持查询类型 A (IPv4) 和 AAAA (IPv6),使用 UDP 协议,仅支持递归模式,并发送简短的响应。
#### 2.4.5.3 DNS 解析的过程流程
- 序列图描述了 DNS 解析的基本交换。
### 总结
该部分详细描述了 ES5 接口上的 OTA 通信,包括通信协议、安全通道、短信和 HTTPS 的使用以及 DNS 解析等内容。 了解这些信息对于 eUICC 远程配置和管理至关重要。