PSAM卡必需支持的专用命令.doc_第1页
PSAM卡必需支持的专用命令.doc_第2页
PSAM卡必需支持的专用命令.doc_第3页
PSAM卡必需支持的专用命令.doc_第4页
PSAM卡必需支持的专用命令.doc_第5页
已阅读5页,还剩9页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

深圳市迪文科技有限公司1. 写入密钥(Write Key)1) 定义和范围 WRITE KEY命令可向卡中装载密钥或更新卡中已存在的密钥。本命令可支持8字节或16字节的密钥,密钥写入必须采用加密的方式,在主控密钥的控制下进行。在密钥装载前必须用GET CHANLLEGE命令从PSAM卡取一个4字节的随机数。2) 命令报文 WRITE KEY命令报文见表31。代码值CLA 84hINS D4hP1 00hP2 00hLc 14h或1ChData 加密后的密钥信息、MACLe 不存在表31 WRITE KEY命令报文3) 命令报文数据域命令报文数据域包括要装载的密钥密文信息和MAC。密钥密文信息是用主控密钥对以下数据加密(按所列顺序)产生的:密钥用途密钥版本密钥算法标识密钥值MAC是用主控密钥对下数据进行MAC计算(按所列顺序)产生的:CLAINSP1P2Lc密钥密文信息 加密和MAC计算的方法遵循中国金融集成电路(IC)卡规范。装载8字节的单长度密钥时,数据长度为14h;装载16字节的双长度密钥时,数据长度为1Ch。4) 响应报文数据域响应报文数据域不存在。2. 批量更新密钥初始化(Init Batch Update)1) 定义和范围Init Batch Update命令用于从IC卡中获得一个4个字节的随机因子。该随机因子服务于批量更新消费主密钥指令的安全过程(如安全报文),在使用批量更新消费主密钥指令的命令执行后失效。2) 命令报文GET CHALLENGE命令报文见表216。代码值CLA 00hINS 85hP1 00hP2 00hLc 不存在Data 不存在Le 13h表216 Init Batch Update命令报文3) 命令报文数据域命令报文数据域不存在。4) 响应报文数据域此命令执行成功的响应报文数据域见表。 如果命令执行不成功,则只在响应报文中回送SW1和SW2。说明长度(字节)PSAM序列号10密钥索引号(GMPK)1有效期4随机因子43. 批量更新消费主密钥(Batch Update GMPK)1) 定义和范围 Batch Update GMPK命令可向卡中更新卡中已存在的消费密钥。本命令只支持16字节的密钥,密钥写入必须采用加密的方式,在主控密钥的控制下进行。在密钥更新前必须用Init Batch Update命令从PSAM卡取一个4字节的随机数。2) 命令报文 Batch Update GMPK命令报文见表31。代码值CLA84hINS D5hP100hP2 00hLc 10 +(N*18h)Data见说明Le 不存在表31 Batch Update GMPK命令报文3) 命令报文数据域加密和MAC计算的方法遵循中国金融集成电路(IC)卡规范。装载16字节的双长度密钥时,数据长度为18h。说明长度(字节)已发送更新密钥指令数量(N)1新的密钥索引号(GMPK)1有效期4GMPK CRYPTOGRAPHN*18hMAC44) 响应报文数据域响应报文数据域不存在。4通用DES计算初始化(INIT_FOR_ DESCRYPT)1) 定义和范围INIT_FOR_ DESCRYPT命令用来初始化通用密钥计算过程。PSAM卡将利用卡中指定的密钥进行运算,产生一个临时密钥。运算方式由指定的密钥类型、密钥分散级数和密钥算法标识确定。不支持计算临时密钥计算的密钥类型有:主控密钥维护密钥消费密钥双长度密钥产生双长度临时密钥的密钥类型有:PIN解锁密钥用户卡应用维护密钥双长度密钥左右异或产生单长度临时密钥的密钥类型有:重装PIN密钥双长度密钥产生双长度临时密钥,单长度密钥产生单长度临时密钥的密钥类型有:MAC密钥加密密钥MAC、加密密钥指定密钥经过几级处理由密钥分散级数和Lc确定,若二者不一致,则返回错误信息。临时密钥在PSAM卡下电后自动消失,不允许读。临时密钥产生后,与原密钥的属性一致。2) 命令报文INIT_FOR_ DESCRYPT命令报文见表32。代码值CLA 80hINS 1AhP1 密钥用途P2 密钥版本Lc 待处理数据的长度Data 待处理的数据Le 无表33 INIT_FOR_ DESCRYPT命令报文3) 命令报文数据域命令报文数据域包括待处理的输入数据。数据长度为8的整数倍,长度也可以为0。密钥类型取密钥用途的低5位,密钥分散级数取密钥用途的高3位。如待处理的输入数据包括多级的分散因子,按最后一次分散因子在前、最先一次分散因子在后的顺序输入。4) 响应报文数据域响应报文数据域不存在。5通用DES计算(DES Crypt)1) 定义和范围 DES CRYPT命令利用指定的密钥来进行运算。若一条命令无法传输所有的待处理数据,可分几条命令输入。 加密计算采用ECB模式,数据的填充在卡片外面进行,卡片只支持长度为8的整数倍数据的加密。MAC计算遵循中国金融集成电路(IC)卡规范,数据的填充在卡片外面进行,卡片只支持长度为8的整数倍数据的MAC计算。DES CRYPT命令必须在INIT_FOR_ DESCRYPT命令成功执行后才能进行。卡片状态在执行无后续块计算后,复原为通用DES计算初始化执行前的状态。2) 命令报文 DES CRYPT命令报文见表33。代码值CLA 80hINS FahP1 见表34P2 00hLc 要加密的数据长度Data 要加密的数据Le 不存在表33 DES CRYPT命令报文b8b7b6b5b4b3b2b1含义X计算模式0,加密1,MAC计算X后续块0,无后续块1,有后续块X初始值(仅对MAC计算有效)0,无初始值1,有初始值表34 DES CRYPT命令引用控制参数P1值计算模式如下:0,无后续块加密1,最后一块MAC计算2,有后续块加密3,下一块MAC计算5,唯一一块MAC计算7,第一块MAC计算其他,保留3) 命令报文数据域 命令报文数据域包括要加密的数据。加密数据的长度为8的整数倍。在P1的b3位为1时,待处理数据的前8个字节为MAC计算的初始值。4) 响应报文数据域在P1的b1位为0时,响应报文数据域包括加密结果,数据长度是8的整数倍。在P1的b1位为1,且P1的b2位为0时,响应报文数据域包括4字节的MAC。6应用解锁(Application Unblock)1) 定义和范围APPLICATION UNBLOCK命令用于恢复当前应用。当命令成功完成后,对应用访问的限制将被取消,利用消费密钥校验MAC2的错误计数器将被重置。如果应用解锁连续失败三次,卡将永久锁定此应用。在APPLICATION UNBLOCK命令执行前必须执行GET CHANLLENGE命令取得4字节的随机数。2) 命令报文 APPLICATION UNBLOCK命令报文见表35。代码值CLA 84hINS 18hP1 00P2 00Lc 数据字节数Data 报文鉴别代码数据元Le 不存在表35 APPLICATION UNBLOCK命令报文3) 命令报文数据域命令报文数据域包括报文鉴别代码,由应用维护密钥对以下数据(按所列顺序)进行MAC计算而得到的:CLAINSP1P2LcMAC计算的方式参见中国金融集成电路(IC)卡规范。4) 响应报文数据域响应报文数据域不存在。7MAC1计算(INIT_SAM_FOR_PURCHASE)1) 定义和范围INIT_SAM_FOR_PURCHASE命令可支持多级消费密钥分散机制,产生中国金融集成电路(IC)卡规范中定义的MAC1。根据银行IC卡试点技术方案,可以利用试点城市标识、成员行标识、卡片应用序列号、随机数和交易信息得到过程密钥,进而加密得到MAC。PSAM卡产生脱机交易流程中MAC1的过程如下所示:l PSAM在其内部用GMPK(全国消费主密钥)对试点城市标识分散,得到二级消费主密钥BMPK;l PSAM在其内部用BMPK对成员行标识分散,得到成员行消费主密钥MPK;l PSAM在其内部用MPK对卡片应用序列号分散,得到卡片消费子密钥DPK;l PSAM在其内部用DPK对卡片传来的伪随机数、脱机交易序号、终端交易序号加密,得到过程密钥SESPK,作为临时密钥存放在卡中;l PSAM在其内部用SESPK 对交易金额、交易类型标识、终端机编号、交易日期(终端)和交易时间(终端)加密得到MAC1,将MAC1传送出去。在此过程中,所有的中间结果只保留在卡片内部,外界无法得到。只有进行本命令后,才允许进行MAC2校验的命令。参与处理的终端机编号和终端交易序号由卡片操作系统从卡片中取得。INIT_SAM_FOR_PURCHASE命令可支持多级消费密钥分散机制,消费密钥的分散过程由Lc和消费密钥共同确定,如果二者不一致,则返回错误信息。2) 命令报文 INIT_SAM_FOR_PURCHASE命令报文见表36。代码值CLA 80hINS 70hP1 00hP2 00hLc 14h8N(N1,2,3)Data 要处理的数据Le 08表36 INIT_SAM_FOR_PURCHASE命令报文3) 命令报文数据域命令报文数据域包括的数据以下列顺序排列:l 用户卡随机数,4字节l 用户卡交易序号,2字节l 交易金额,4字节l 交易类型标识,1字节l 交易日期(终端),4字节l 交易时间(终端),3字节l 消费密钥版本号,1字节l 消费密钥算法标识,1字节l 用户卡应用序列号,8字节l 成员银行标识,8字节l 试点城市标识,8字节4) 响应报文数据域响应报文数据域包括以下数据(按顺序返回):4字节的终端脱机交易序号4字节的MAC18 校验MAC2(CREDIT_SAM_FOR_PURCHASE)1) 定义和范围CREDIT_SAM_FOR_PURCHASE命令利用INIT_SAM_FOR_PURCHASE命令产生的过程密钥SESPKP校验MAC2,过程如下所示:l 检查MAC2尝试计数器,如MAC2未被锁定,PSAM在其内部用SESPK对交易金额加密得到MAC2,与命令报文中的数据进行比较;l 若命令执行成功,PSAM卡将应用中的终端脱机消费交易序号加1;l 如命令执行不成功,PSAM卡将MAC2尝试计数器减1,并回送状态码63Cx,这里x是MAC2尝试计数器的新值;l 如果x为零,PSAM卡将锁定消费密钥所在的ADF。在此过程中,所有的中间结果只保留在卡片内部,外界无法得到。CREDIT _ SAM _ FOR_ PURCHASE命令必须在INIT _ SAM _ FOR _ PURCHASE命令成功执行后才能进行。若MAC2尝试计数器为0的话,消费密钥所在的应用将被锁定,只能在应用维护密钥的控制下应用解锁后使用。应用下的MAC2错误计数器在应用下

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论