发布时间:2008-11-21阅读:1289
欧洲标准EN 1546的第3部分是关于通用电子钱包的,它总共规定了六条命令用于电子钱包和12条命令用于 终端中的安全模块,后者本身就可能是一张智能卡,其中用于电子钱包的最重要的四条命令的基本格式将在 此处叙述。这些命令可用来操纵一智能卡实行不用现金从预付的“钱包”中的支付和对钱包的重新装钱。关 于错误校正,货币兑换,参数修改和购置的撤消命令均未在此叙述,也未叙述用于安全模块的命令。
这里所述的命令正好是应用专用命令,因为它们被规定来专门用于一项应用。除电子钱包外,它们不能用 于任何其他目的,因为它们已按此应用优化。无论如何,我们专门用一个小节给它们是因为在未来电子钱包将与远程通信同样是智能卡的主要应用。它们的功能见表1~ 表4。
表1 遵照ISO/IEC 1546-3的INITIALISE IEP的LOAD功能
表2 遵照EN 1546-3的CREDIT的功能
表3 遵照EN 1546-3的INITIALIZE IEP的购置功能
按照EN 1546,所有电子钱包交易可分为三部分:第1部分,用INITIALIZE IEP命令把卡初始化以加载/定购 ;第2条命令执行真正的交易(即装人钱包或用钱包支付);在可选的第3部分中,刚刚执行的交易被确认。 所有钱包命令都直接访问智能卡中钱包应用的文件以进行读写,这些文件保存着不同的参数,钱包余额和日 志记录。
钱包交易的各个步骤依靠以下命令来执行。EN 1546标准规定了每条命令的内部处理,既是其功能方面,也 是各个步骤的序列方面,所有的实现都至少有全部相同的处理。
INITIALIZE命令可用于几个目的,可选的参数钱包装入交易的初始化,采购交易或另外类型的交易。
表4 遵照EN1546-3的DEBIT IEP的功能
INITIALIZE IEP命令的加载(记入贷方)是把钱包装人智能卡的第1步。传送要装入的数据,诸如货币代 码和数量,都被检验是否与以前规定在参数文件中的数值相符合。此外,可自由规定的数据(用户决定的数 据)可存储在一记录文件中。其次,交易计数器被加1并形成一签字⒊以用于各种数据(诸如当前余额和到 期日期),使它们可被传送至终端而不必冒被篡改的风险。
在第2步,卡基本上是接受有关所用密钥的信息和一个签名岛,它来自终端的安全模块并让卡去鉴别安全 模块,同时还保护了数据,智能卡在前一条关于加载的INITIALIZE IEP命令中已被终端的安全模块鉴别过了 ,在成功测试了岛之后,卡增加钱包余额,并在日志文件中写下一个新的记录项并产生签名%以确认,它被 终端的安全模块用来作为正确登记了装入量的确认。
这里介绍的第2步,连同其所需之命令,说明用电子钱包做成的一项购置的情况。第1条命令,它启动了交 易,仍旧是INITIATE IEP,但选项是“用钱包”。智能卡未从此命令接收任何数据,但是要把交易计数器加 1。其次,要为到期日期,交易计数器和IEP的数据形成一个签名黾。于是数据受到了保护并连同—些别的数 据回送给终端。
实际的采购交易由下条命令执行,称为DEBIT IEP。它传送有关记人借方的金额和现行密钥版本以及其他 签名信`患给智能卡中的电子钱包。此签名可用以鉴别终端中安全模块的真实性,正如同加载钱包时那样。 若测试成功,则增加钱包余额,购置交易的记录文件被更新,并建立一签名%以确认整个交易,它包含在对 DEBIT IEP的响应中。签名昆则对终端的安全模块确认了在智能卡中金额已被正确地记人了贷方。
以上仅仅是对规定在EN 1546中的九条最重要的电子钱包命令的简要概述,标准是极其广泛的,对系统设 计来说包含着很多选项和变化,它们都当然会影响到命令的格式。
上一篇:智能卡的测试随机数