- 1、本文档共5页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
应用选择(M)
卡片的文件结构
IC 卡操作系统(COS)的文件系统是三层的物理结构,即由主控文件(MF,Master File)、专有文件(DF,Dedicated File)和基本文件(EF,Elementary File)组成一个类似于DOS的层次结构。
MF 主控文件是整个文件系统的根。通过个人化建立起来的主控文件包括文件控制参数和文件安全属性等信息。
DIR 文件就一个AEF 文件(亦即EF),通过 Read Record 命令读到一个ADF 是一个应用或者是一组应用(贷记,借记,电子现金) EF 基本文件存储了各种应用的数据和管理信息
卡片支持的应用选择方式:1.目录选择(可选) 2.AID 选择(必须)
目录选择法:
在 IC 卡上,支付系统环境起始于一个名为“ 1PAY.SYS.DDF01”的目录定义文件(DDF)。支付系统目录是一个线性EF 文件,用 1 到 10 的短文件标识符(SFI)标识。
从记录号 1 开始读直到返回 6a83,
该目录附属于DDF,目录的SFI 包含在DDF 的文件控制信息中。
支付系统目录中的每一个记录都是一个结构数据对象,其值由如下所示的一个或多个目录的入口组成。
每个记录的格式:
BuildListByDDF(char
BuildListByDDF(char *DDF)
{
选择PSE(DDF);
读取SFI
While(读 SFI 中的记录不返回 6A83)
{
If(取 tag70 成功)
{
If(取 tag61 成功)
{
If(取到的入口是
If(取到的入口是 4F )
{
对比终端AID,如果一致(部分匹配或完全匹配),就加入候选列表;
}
}
else If(取到的入口是 9D)
{
BuildListByDDF(9D 的DDF 值);//注意这里递归
}
}
}
}
}
实例命令:
C:00AEEE R: 6F 15
84 0E 31 50 41 59 2E 53 59 53 2E 44 44 46 30 31
A5 03
88 01 01
90 00
C:00b2010c00
R: 70 28 61 26 4F 08 A0 00 00 03 33 01 01 01 50 0A 50 42 4F 43 20 44 45 42 49 54 9F 12
0A 50 42 4F 43 20 44 45 42 49 54 87 01 01 90 00
C:00a A0 00 00 03 33 01 01 01
R:6F 45 84 08 A0 00 00 03 33 01 01 01 A5 39 87 01 01 5F 2D 02 7A 68 50 0A 50 42 4F 43
20 44 45 42 49 54 9F 11 01 01 9F 12 0A 50 42 4F 43 20 44 45 42 49 54 9F 38 09 9F 7A 01
9F 02 06 5F 2A 02 BF 0C 05 9F 4D 02 0B 0A 90 00
AID 选择法
AID=RID(5B)+PIX(最大 11B)
终端按照终端应用列表中包含的每个应用都向卡片发送一个SELECT 命令。如果卡片响应表示卡也支持该应用,则终端把该应用加入到候选列表。
步骤:卡片收到终端发来选择(SELECT)命令,命令包括终端支持的应用列表中的 AID。卡片检查是否卡片中有匹配的 AID 应用(卡片 AID 长度可以长于终端 AID,但仍然认为匹配)。
AID 匹配的例子
——如果 AID 匹配,卡片响应选择(SELECT)命令指明卡片支持此应用(SW1 SW2=
“9000”);
——如果卡片找不到匹配的 AID,卡片响应状态字 SW1 SW2=“6A82”指明应用没找到;
——如果卡片锁定或不支持选择(SELECT)命令,卡片响应状态字 SW1 SW2=“6A81” 指明交易应被中止
——如果匹配的卡片 AID 长度比终端 AID 长,卡片在选择(SELECT)命令响应信息中返回完整的 AID 给终端。 如果两者的AID 相同,也返回完整的AID 给终端。
——卡片接收终端发来的第 2 个选择(SELECT)命令,参数 P2 设置为“02”表明卡片要选择有同样 AID 的下一个应用;
——卡片选择下一个应用并在选择(SELECT)命令响应中提供这一应用给终端;
——当卡片不再有应用有此 AID,卡片响应“6A82”表明所有匹配的应用都已经选择。
实例命令:
C:00a A0 00 00 03 33 01 01 01
R:6F 45 84 08 A0 00 00 03 33 01 01 01 A5 39 87 01 01 5F 2D 02 7A 68 50 0A 50 42 4F 43
文档评论(0)