SJL05型金融数据加密机
程序员手册
卫士通信息产业股份有限公司
二OO五年十月
四川省成都市高新区创业大道6号 邮政编码:610041
电话:(028)85141541 8008861133
《SJL05金融数据加密机程序员手册》JRIC第五版(2005年6月)
本手册是由卫士通信息产业股份有限公司编撰,仅赠送给用户和其他合作伙伴。“卫士通”及
是卫士通信息产业股份有限公司
在中国境内的注册商标,卫士通信息产业股份有限公司保留对本书的所有版权,任何单位和个人未经许可,不得以任一方式进行仿制、拷贝、誊写或转译。
卫士通公司保留对本书进行重新修订的权利,随时可能对本书中的打印错误、与最新资料不符之处、程序或设备的更新做必要的改动,这些改动恕不另行通知,但会编入新版书内。
本书主要为命令参考,适合以下读者:
SJL05应用开发人员,及其他所有对SJL05产品感兴趣的读者。
请妥善保存本手册以备以后使用
目 录
1
简介 ...................................................................................................... 1 加密机主要功能 ....................................................................................... 1 加密机与主机的通信 ................................................................................ 2 1.1.1 1.1.2 1.1.3
接口与协议 ............................................................................. 2 数据格式 ................................................................................. 3 调用加密机过程 ...................................................................... 3
SJL05命令集划分 .................................................................................... 4 2
磁条卡业务类 ....................................................................................... 4 请求返回系统信息<0X00> ....................................................................... 4 返回本地主密钥状态<0X01> .................................................................... 6 返回指定区域主密钥状态<0X03> ............................................................ 7 定义打印格式<0X07> ............................................................................... 8 产生并存储一个指定长度的主密钥,并打印明文到密码信封<0X08> .. 10 产生并存储一个指定长度的区域主密钥分量,并打印明文到密码信封<0X09> ................................................................................................... 13 产生一个数据密钥,并用BMK加密后返回<0X10> ............................. 16 产生索引的区域主密钥<0X11> .............................................................. 17 产生一个直联POS的数据密钥<0X12> .................................................. 18 生成随机POK,并用ZMK和TMK加密后返回<0X13> ....................... 19 产生指定长度的随机区域数据密钥<0X15> ........................................... 20 存储一个索引的区域主密钥<0X20> ....................................................... 22 产生并存储指定长度的TMK<0X21> ..................................................... 23 存储一个索引的区域主密钥<0X22> ....................................................... 26 银行主密钥加密的密钥转换成次主密钥<0X24> .................................... 28 取回一个索引的区域主密钥<0X31> ....................................................... 29 取回一个索引的终端主密钥<0X32> ....................................................... 30 加密一个TMK密钥<0X40> ................................................................... 31
卫士通信息产业股份有限公司 http://www.westone.com.cn/
- i -
用BMK解密PIK<0X41> ....................................................................... 32 SSF02加密的PINBLOCK验证<0X42> .................................................... 33 SSF02算法计算MAC<0X43> ................................................................ 35 SSF02验证MAC<0X44> ........................................................................ 36 SSF02加/解密<0X45> ............................................................................ 37 注:在数据加密时,数据长度不够8的倍数时,在数据后补0X00补齐。SSF02 PINBLOCK转换<0X46> ................................................................ 39 产生动态通信密钥<0X50> ..................................................................... 41 用通信密钥对数据算MAC,验证MAC<0X51> .................................... 43 用通信密钥对数据计算MAC<0X52> ..................................................... 45 用通信密钥对PIN密文解密<0X53> ...................................................... 47 用通信密钥转换PIN<0X54> .................................................................. 49 计算
TAC<0X55> ..................................................................................... 51
产生工作密钥<0X56> ............................................................................. 52 转换工作密钥<0X57> ............................................................................. 53 计算MAC<0X58> ................................................................................... 54 对输入数据加/解密<0X59> .................................................................... 55 PIN转换<0X5A> ..................................................................................... 56 产生并打印密钥<0X5B> ......................................................................... 57 产生并输出密钥<0X5C> ......................................................................... 58 转换PIN<0X5F> ...................................................................................... 59 请求产生一个加密的PIN<0X60> ........................................................... 60 请求转换一个PIN从银行1到银行2(无帐号)<0X61> ...................... 62 请求验证一个PIN<0X62> ...................................................................... 64 请求转换一个PIN从ATK到PIK<0X63> .............................................. 66 请求转换一个PIN从PIK到ATK<0X64> .............................................. 68 请求转换一个PIN从POK到PIK<0X65> .............................................. 70 请求转换一个PIN从PIK到POK<0X66> .............................................. 72 请求转换一个PIN从银行1到银行2(含一个主帐号) <0X67> ......... 74
卫士通信息产业股份有限公司 http://www.westone.com.cn/
- ii -
请求转换一个PIN从PPK(加密得到)到PIK<0X68> ......................... 76 请求转换一个PIN从PIK1(解密得到)到PIK2<0X69> ...................... 78 转换PIN从输入的PIK1到PIK2(含两个主帐号)<0X6A> ................ 79 转换PIN从TMK1到TMK2<0X6B> ..................................................... 81 转换PIN从TMK到输入PIK <0X6C> ................................................... 82 加密(或解密)PIN <0X6D> .................................................................. 84 转换PIN从PIK加密到TMK加密 <0X6E> .......................................... 85 生成用ZMK和RSA加密的随机密钥 <0X70> ...................................... 86 用输入密钥对数据加/解密<0X71> ......................................................... 87 用区域主密钥对数据加/解密<0X72> ..................................................... 89 数据密钥转换<0X73> ............................................................................. 91 转换工作密钥主密钥<0X74> .................................................................. 93 转换密钥<0X75> .................................................................................... 94 生成用ZMK和RSA加密的随机密钥<0X77> ....................................... 95 数据密钥转换<0X78> ............................................................................. 96 验证和生成MAC<0X80> ....................................................................... 98 验证MAC<0X81> ................................................................................. 100 计算卡属性和密文数据的MAC <0X82> .............................................. 102 验证卡属性与数据串的MAC <0X83> .................................................. 104 2.46 请求产生MAC,并可选择地转换PIN<0X84> .............................. 106 转换MAC<0X85> ................................................................................. 108 转换一个MAC和PIN<0X86> .............................................................. 110 请求验证MAC,可选择地验证PIN<0X87> ........................................ 113 产生随机密钥,用TMK加密后返回<0X88> ....................................... 115 生成弱MAC<0X89> ............................................................................. 116 用终端主密钥加密数据<0X8A> ........................................................... 118 用输入密钥对输入数据作加/解密<0X8B> ........................................... 119 产生MAC<0X8C> ................................................................................ 120 校验MAC<0X8D> ................................................................................ 122
卫士通信息产业股份有限公司 http://www.westone.com.cn/
- iii -