自学内容网 自学内容网

Application independent protocol

14.3 应用程序选择程序
14.3.1 使用EFDIR文件的应用程序选择
使用EFDIR文件的应用程序选择是终端读取EFDIR文件内容,并向用户展示应用程序列表的过程,用户可以选择一个或多个应用程序进行激活。
终端执行读取EFDIR的操作,并向用户展示它支持的应用程序列表,用户可以选择激活。如果只找到一个支持的应用程序,这个应用程序可能会被隐式选择。

14.3.2 直接应用程序选择
可以通过执行带有要选择的应用程序的AID的SELECT过程,直接选择应用程序,而不必读取EFDIR文件的内容。

14.4 通用应用程序相关程序
14.4.1 应用程序会话激活
终端使用所选应用程序的AID作为参数执行SELECT功能。
如果SELECT功能成功结束,则执行所选应用程序的初始化程序。如果初始化程序成功结束,则UICC进入操作状态。如果初始化程序未能成功结束,UICC将保持在应用程序管理状态,并向用户指示无法激活所选应用程序。
14.4.2 UICC应用程序查询
当UICC未处于非活动状态时,可以随时读取UICC中驻留的应用程序列表。
请求:终端执行读取程序,使用EFDIR。
14.4.3 UICC应用程序会话终止
可以在UICC未处于非活动状态的任何时候终止应用程序会话。
14.5 其他程序
14.5.1 UICC激活
在UICC激活后,终端请求首选语言(EFPL)。终端应执行电源协商程序。如果终端支持CAT,它应执行CAT初始化程序。然后终端根据第14.3节执行应用程序选择程序。

14.5.2 UICC存在检测
如果UICC上的应用程序需要确保在卡会话期间UICC未被移除,则应遵循以下程序。终端在UICC-终端接口的非活动期间频繁发送STATUS命令。STATUS命令应在UICC-终端接口的非活动期间内发出。非活动期间和存在检测发生的条件由卡会话期间激活的应用程序指定。在这种情况下,非活动期间定义为上次通信或上次发出STATUS命令结束时开始。如果没有收到对此STATUS命令的响应数据,终端应在工作等待时间(T = 0)或块等待时间(T = 1)到期后,根据卡会话期间激活的应用程序指定的条件采取适当行动。如果对STATUS命令的无错误响应中指示的DF与之前响应的DF不同,或者被之前的命令访问,则终端应根据卡会话期间激活的应用程序指定的条件采取适当行动。此程序应与用于检测UICC移除的机械或其他设备一起使用。
在支持LSEs的UICC情况下,应对每个需要存在检测的LSE执行此程序。

14.5.3 UICC首选语言请求
请求:终端执行EFPL的读取程序。
更新:终端执行EFPL的更新程序。

14.5.4 UICC逻辑通道
UICC可以提供同时运行多个可选择应用程序的可能性。这是通过逻辑通道机制实现的。在给定的逻辑通道中,一次只能运行一个可选择应用程序。
14.5.5 功耗协商
终端应尝试选择并读取UICC最大功耗文件(EFUMPC)。
如果文件存在,UICC知道从12版及以后版本的最大功耗值。否则,它只知道12版之前的值。
如果UICC支持TERMINAL CAPABILITY命令(这是12版及以后版本的强制性要求),终端应发送一个TERMINAL CAPABILITY命令,指示终端在UICC所知范围内的最大可用电源供应。

14.5.6 UICC暂停
当长时间不需要访问UICC时,终端可以使用UICC暂停功能来暂停UICC,以减少总体功耗。当UICC暂停时,终端按照4.5.2节指定的序列停用UICC的接触点。
只有当UICC在UICC最大功耗文件(EFUMPC)中指示支持此功能时,才能使用此程序。
终端应保持暂停前的逻辑状态,并且它应为之前已注册的任何事件恢复UICC:这包括使用SET UP EVENT LIST或TIMER MANAGEMENT主动命令注册的事件,如ETSI TS 102 223 [4]中指定的。
当终端需要恢复UICC时,它首先执行6节描述的初始通信建立程序。终端可以可选地检查EFICCID的内容是否与之前暂停UICC时使用的值匹配。终端发送SUSPEND UICC命令,P1 = '01'和之前暂停时收到的恢复令牌。恢复操作不会影响作为初始通信建立程序的一部分协商的参数。

14.6 CAT相关程序
14.6.0 CAT相关程序的范围
更高层次的程序以及命令的内容和编码在ETSI TS 102 223 [4]中给出。关于通过终端-UICC接口传输命令和响应的程序在本条款中给出。
支持CAT的UICC或终端应遵守本条款给出的要求。

14.6.1 CAT初始化程序
支持CAT的终端应发送TERMINAL PROFILE C-APDU。支持CAT的UICC应返回响应状态字(SW1 SW2)'90 00'或'91 XX'。如果返回任何其他值,终端应假定不支持CAT。在主动命令待处理的情况下,终端随后应以默认值开始主动轮询程序。

14.6.2 主动轮询
在空闲模式下,终端应在与UICC协商的间隔内(参见ETSI TS 102 223 [4])向UICC发送STATUS命令。在通话期间应用UICC存在检测。主动轮询的默认值与存在检测程序相同。
如果UICC支持LSEs,终端应在每个成功初始化CAT的LSI上执行主动轮询,并在每个特定LSI上协商的间隔内进行。

14.6.3 支持命令
支持CAT的终端应支持命令TERMINAL PROFILE、ENVELOPE、FETCH和TERMINAL RESPONSE。

14.6.4 支持响应代码
支持CAT的终端应支持响应状态字(SW1 SW2)'91 XX'和'93 00'。如果终端不支持CAT,则这些响应永远不应使用。

14.6.5 应用程序和CAT任务的独立性
应用程序和CAT操作在UICC和终端中应逻辑上独立。具体来说,这意味着:
• 在任何活跃应用程序中,当前选定的EF和当前记录指针应保持不变(如果仍然有效),并且终端应能看到,无论CAT活动如何。
• 在连续的CAT相关命令-响应对之间,可以发生其他应用程序(例如USIM)和UICC相关命令-响应对。CAT任务状态不应因这些命令-响应对而改变。

14.6.6 使用BUSY状态响应
如果出于任何原因,UICC的CAT任务目前无法处理终端发出的ENVELOPE命令(例如,其他CAT进程已经在运行),UICC可以响应状态响应'93 00'。终端可以在稍后阶段重新发出命令。
BUSY状态响应不会影响例如USIM操作。

14.6.7 额外处理时间
传输协议提供了一种机制,使UICC能够在提供命令-响应对的响应部分之前获得额外的处理时间(即T = 0的NULL过程字节和T = 1的工作等待时间扩展(WTX)),在此期间终端无法向UICC发送更多命令。
如果UICC中的CAT活动运行时间过长,这可能会阻止终端发送例如USIM命令等时间敏感的命令,例如INTERNAL AUTHENTICATE。在ETSI TS 102 223 [4]中定义了一个MORE TIME命令,它确保UICC中的USAT任务获得额外的处理时间,同时释放UICC/终端接口。应优先使用MORE TIME命令而不是传输协议特定的机制来获得额外的处理时间。


原文地址:https://blog.csdn.net/liudong200618/article/details/143024011

免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!