智能卡电子钱包系统可能的密钥导出过程

时间:2008-11-24

  下述例子由图1 和图2解释,按有关部件:电子钱包(IEP),终端(PDA)和终端中的安全模块(PSAM)说明了支付过程。

  图1   EN 1546电子钱包系统可能的密钥导出过程(密钥依赖于
  传送给卡的某一代专用密钥和会话专用交易计数器的组合,
  这样产生的密钥可用于完成支付或借出货币)

  当卡已插入终端后,终端执行一复位以便从PSAM和IEP二者请求-ATR,如果有一个ATR不满足所期待之值,则终端取消支付过程。如果ATR都满足所期待之值,则终端在IEP中选择钱包的DF。如果文件选择不能被执行,则亦将取消此过程。然而,为了清楚起见,这两点和一般的错误处理未做描述。

  选择了在IEP卡中的钱包DF之后,终端送出用于购物的初始化命令INITIALIZE IEPoIEP卡接收此命令,增值交易计数器并为各数据元产生一签名(S1),后把数据和签名送给终端。

  其次,终端PSAM送去为了购物的初始化命令INITIALIZE PSAM。这条命令直接转发了从卡接收的数据给PSAM。PSAM检查这些数据,这就是指终了日期(DEXPIEp)、货币(CURRIEp)、所用加密算法(ALGIEp)和其他接收的数据都要和存储在PSAM中之值相比较,如果所有的比较都是成功的,则交易计数器(NTIEP)被增值。如果任一比较失败(例如,IEP的终了日期已经到达),进一步的命令处理立即被取消并传送给终端(PDA)一适当的回送代码。

  图2  按照EN 1546用电子钱包(IEP)和终端(PDA)以及安全模块(PSAM)的支付交易过程

  然后PSAM用IEP送来的数据产生一导出密钥且产生一会话密钥,并检查签名黾。如果签名是正确的,则所有传输的数据都是真实的,与此同时IEP已为PSAM所鉴明。换言之,15.4M知道卡中所含电子钱包是真的。

  上图1显示了一个EN 1546标准中,电子钱包系统中可能的密钥导出过程。这样导出的密钥,可用来完成图2中所描述的支付过程。

  在接着的步骤中,PSAM也产生一个签名(S3),它和少量的另外的数据元被送给终端。要支付的金额(MPDA)和所用货币现在已进入到终端了。于是,终端把输入的金额和先前从PSAM接收的数据用命令DEBIT IEP传送给卡,卡现在检查钱包中是否有足够的钱来完成支付。若有,则验证签名饧,若签名是正确的,则数据在传输时未被篡改,于是PSAM也被IEP所验明。这是因为只有真正的PSAM可以掌握产生签名岛所必需的秘密密钥。适当的金额从钱包的余额中被减去,记录文件被更新并产生第3个签名(S3)以确认借出交易已被执行。

  签名S3和借出金额经终端传送到PSAM,它验证S3,若此签名是正确的,在IEP中借出的金额被加到一内部的数据元(MTOTpSAM)。另外一条命令“PSAM购物完工”把MTOTpSAM加至钱包余额TM从而更新了PSAM余额。,PSAM接收一签名(S3)确认支付已成功完成。

  上述过程是EN 1546所述各种支付过程中的一个十分简单的例子。存在着其他可能性,包括电话卡的快速借出过程,以及在交易结束时可以产生一收据清单等。

  上述关于卡的文件、命令和过程也对所有其他重要的系统部件有所规定。重要的是用于安全模块的,因为系统的安全性惟一地依赖于此模块。统计方法可用来监视整个系统的运营,在大型应用的情况中,可能含有数万台终端和数十万张智能卡。对每张单独的卡产生一个完整的账目将和不具名的要求相矛盾,而且还需要极其巨大的计算量。然而,如实验所表明,整个系统的安全性的验证能够在运行的基础上(以可接受的成本)用采样检查来监视货币流证亘。

  欧洲EN 1546标准为多分区智能卡电子钱包系统奠定了基础。标准出台时,它包括了几乎所有在使用中的过程和功能。只有一项功能迄今未予描述,然而对卡的用户却是非常重要的,这就是钱包至钱包的交易,即将电子钱币直接从一个钱包转至另一个。

  在EN 1546标准中,目前对这种类型的转移尚无叙述。然而,各种团体正试图将这种支付交易包括在标准中。

  欢迎转载,信息来自维库电子市场网(www.dzsc.com


  
上一篇:PIC单片机与8位并行D/A转换器设计元器件选型
下一篇:智能卡Mondex系统

免责声明: 凡注明来源本网的所有作品,均为本网合法拥有版权或有权使用的作品,欢迎转载,注明出处。非本网作品均来自互联网,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责。

相关技术资料