GSM协会非机密官方文件 TS.38 - SIM工具包设备要求 - 用户体验增强
1 引言
1.1 概述
本文件旨在改善SIM工具包(SIM Toolkit)的用户体验,这是Mobile Connect计划中的需求。不同团体和移动网络运营商(MNOs)经常提出这一需求,因此本文件的目标是通用地描述这些用户体验升级,而不一定与Mobile Connect直接相关。
Mobile Connect的某些实现基于SIM卡中嵌入的SIM小程序(applet)。在这种实现中,与最终用户的交互,无论是显示还是收集用户信息,都是基于ETSI TS 102 223标准中定义的SIM工具包(STK)功能。虽然ETSI技术规范详细描述了STK命令和事件,但并未详细描述设备在处理这些用户交互时的预期行为,导致不同设备上的用户体验略有不同。此外,一些显示的信息无法修改。
现有的用户体验和设备间的不一致性通常对MNOs基于SIM的认证解决方案产生负面影响。在安全性和用户体验之间进行了权衡,选择了其他安全性较低但用户体验更好的解决方案。
本文件的目的是描述对当前SIM工具包用户体验的一些增强。这些增强将对Mobile Connect框架有益,但也可以被任何使用SIM工具包用户界面的其他应用程序使用。
1.2 范围
本文件为SIM应用程序使用的STK主动命令提供了设备要求。
1.3 改进建议
- 添加配置,在数字输入时短暂显示数字,而不是立即变成星号。
- 能够以明文或星号形式显示PIN码。
- 查看密码功能。
- 配置背景和字体颜色(黑底白字或白底黑字或其他颜色)。
- 更改字体类型和大小。
- 在屏幕上显示带坐标的图片。
- 显示图标。
- 生物识别传感器。SIM工具包与操作系统生物识别模块通信。
- 配置键盘上可见的按钮(无符号、*、#等)。
2 要求
2.1 使用的STK主动命令
为了提供丰富的用户体验,需要支持以下STK主动命令:
- 显示文本(DISPLAY TEXT)
- 获取输入(GET INPUT)
- 发送短消息(SEND SHORT MESSAGE)
- 选择项目(SELECT ITEM)
- 发送USSD消息(SEND USSD)
2.2 使用的STK事件
通常SIM小程序是通过ETSI TS 102 225标准定义的“安全数据包命令”(例如二进制短信03.48)触发的,这得益于EVENT_FORMATTED_SMS_PP_ENV STK事件。
2.3 设备行为和用户体验
本节描述了不同SIM工具包命令的设备行为。
2.4 DISPLAY TEXT命令
设备应符合ETSI TS 102 223标准中DISPLAY TEXT主动命令的参数和文本格式要求。
设备必须处理以下三种文本编码:
- 数据编码方案00 → GSM默认字母表7位打包
- 数据编码方案04 → GSM默认字母表8位
- 数据编码方案08 → 16位UCS2字母表
在设备上按下主页或返回按钮不应使弹出窗口消失。弹出窗口应保持在顶部,并且只能通过“确定/取消”退出。
2.4.1 按钮处理
在接收到DISPLAY TEXT SIM工具包主动命令时,设备必须在其屏幕上显示包含的文本以及“确定”和“取消”两个选项。除了文本和确定/取消按钮外,大多数设备还提供了使用其他按钮(虚拟、触摸或物理)进行不同操作的可能性。下表描述了预期的设备行为以及TERMINAL RESPONSE中关联的返回码。
理想情况下,能够像GET INPUT命令一样显示窗口标题(Text 1)。如果提供了标题(Text 1),则应在display text命令中显示。如果没有提供标题,则不显示标题。
在text 2内容中显示的URL应自动检测为超链接。点击链接时,应触发默认手机浏览器打开URL。
设备必须将用户操作的结果返回给小程序,在TERMINAL RESPONSE中。
返回码和设备行为必须遵循以下详细原则:
用户操作 | MobileConnect结果 | STK结果 | 返回码(十六进制) | 设备行为 |
---|---|---|---|---|
确定按下 | 验证 | 命令成功执行 | 00 | 窗口关闭 |
取消按下 | 取消 | 用户主动终止主动UICC会话 | 10 | 窗口关闭 |
主页按钮按下(如果存在) | 取消 | 用户主动终止主动UICC会话 | 10 | 窗口关闭 |
返回按钮按下(如果存在) | 取消 | 用户请求在主动UICC会话中后退 | 11 | 窗口关闭 |
多任务按钮按下(如果存在) | 无 | 无 | 无 | 用户可以使用多任务按钮重新激活窗口(如果用户在超时前未采取任何操作,则设备必须关闭STK通道,并在TERMINAL RESPONSE中返回返回码12) |
用户点击显示窗口外(如果可能) | 无 | 无 | 无 | 无操作(窗口仍然显示) |
无用户操作(超时) | 取消 | 用户未响应 | 12 | 超时后窗口关闭 |
请注意,上表中某些按钮可能因设备的操作系统、制造商等因素而未实现。
2.4.2 超时处理
DISPLAY TEXT STK命令可能包含ETSI TS 102 223标准中定义的“Duration”标签中的一个值。持续时间参数应该是可配置的,并且将被编码在2个字节中。第一个字节指示使用的时长单位,第二个字节包含时间间隔。
-
时间单位编码如下:
- 00 -> 分钟
- 01 -> 秒
- 02 -> 十分之一秒
- 时间间隔包含1到255之间的值。
如果在DISPLAY TEXT命令期间,用户没有对其设备上的DISPLAY TEXT窗口采取任何相关行动,当达到持续时间计时器的值时,窗口必须关闭。在这种情况下,设备应在TERMINAL RESPONSE中返回状态码12。
2.4.3 立即响应参数
某些DISPLAY TEXT命令可能包含“立即响应”标签发送到设备。在这种情况下,移动设备必须直接向SIM卡发送包含“命令执行成功”信息的TERMINAL RESPONSE。设备必须继续在设备上显示窗口,直到超时到达或用户选择“确定”按钮。
如果DISPLAY TEXT STK主动命令中存在“立即响应”参数,设备只需显示“确定”按钮。