读应用数据的目的是为了从卡片中获取后续交易需要的数据,用以完成交易中的各种功能。
终端使用读记录命令(READ RECORD)读出在应用文件定位器(AFL)中标记的文件与记录,并在读记录命令中使用SFI 来标记文件。如果一个错误阻止终端从IC 卡读数据,交易将被终止。
AFL 是标记在交易中使用的文件及记录的一个列表。终端仅读取在AFL 中标记的记录。表的每个元素对应一个可以读出的文件,并且按照如下规则组织:
①第一字节的高5位定义了SFI,低3位为0.
②第二字节定义了此SFI中可以被读出的第一条(或唯一的)记录的序号。第二字节不能为0。
③第三字节定义了此SFI中可以被读出的最后一条记录的序号。
④第四字节定义了从第二字节的记录序号开始的脱机数据认证相关的记录数。
如下情况会终止交易:
①返回给应用层的报文中SW1 SW2不等于“9000”
②任何必需的数据对象不在卡片中,终端将终止交易。
③多余的基本数据对象,如终端遇到一个以上相同基本数据对象,交易将被终止。