加密机国际卡编程开发手册内容摘要:

................................................................................6 MAC算法说明 ......................................................................................................................................... 6 XOR MAC 算法 ..............................................................................................................................6 ANSI 算法 .....................................................................................................................7 ANSI MAC 算法描述 .........................................................................................................7 金融数据密码机开发手册 InterC 4 1 加密机 密钥 说明 为了满足 VISA/MasterCard 国际信用卡组织新的密钥长度需求,按农行国际卡项目需求的新的金融数据密码机密钥空间不再区分 BMK 和 TMK。 所有存储在密码机中的密钥均按统一的密钥索引号分配,索引号取值范围从 K000 至 KFFF 共 4096 个密钥空间。 每个密钥索引号均可保存单、双、三倍长密钥。 保存在密码机中的密钥必须符合奇校验。 密钥空间分配如下图所示: 索引号 单倍长密钥 双倍长密钥 三倍长密钥 备注 K000 XXXXXXXXXXXXXXXX FFFFFFFFFFFFFFFF FFFFFFFFFFFFFFFF 单倍长密钥 K001 XXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXX FFFFFFFFFFFFFFFF 双倍长密钥 K002 XXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXX 三倍长密钥 K003 …… K009 K00A K00B …… K00F K010 K011 …… …… KFFF 本命令集支持两种密钥访问方式:( 1)由索引号指定,此时密钥存放在密码机中;( 2)外部带入密钥,此时密钥以密文方式存放在密码机外部。 为了区分密钥长度,所有密钥前都带有密钥长度标识。 如果密钥长度后第1个字节为 K,则随后的三个十六进制数代表密钥索引号,否则,密码机按长度标识指定的长度在命令中取相应长度的十六进制数作为密钥( 16字节、 32 字节或 48 字节)。 长密钥可作短密钥使用,即:( 1)三倍长密钥可取其前面部分,用作单倍长密钥和双倍长密钥;( 2)双倍长密钥可取其左半部分,用作单倍长密钥。 但是短密钥不可作为长密金融数据密码机开发手册 InterC 5 钥使用。 密钥分类 主密钥〔 MK〕 主密钥为 16 个字节,由三个成份合成,每个成份为 16 字节。 可由三个人管理,每人输入一个成份,送入密码机,合成最终的主密钥,并保存在密码机内。 用于对存放在加密机内部和外部的其它密钥的加密。 数据密钥 此密钥包括传输主密钥和工作密钥 ,传输主密钥用于加密需要下传的工作密钥,工作密钥包含 PIN 加密密钥和 MAC 运算 密钥,这些密钥可由加密机随机产生或人工从加密机的面板或管理软件上输入。 密钥检查 假如密钥的字节形式为 b7b6b5b4b3b2b1b0,则校验位 b0=b7⊕ b6⊕ b5⊕ b4⊕ b3⊕ b2⊕b1⊕ 1 注: ‘⊕’为异或算法。 由密码机生成的密钥,符合奇较验 ,且密码机可自动检查其是否为弱密钥( Weak Key)或半弱密钥( simiweak key)。 如果属于这类密钥,密码机将自动重新产生。 弱密钥为: 01 01 01 01 01 01 01 01 1F 1F 1F 1F 1F 1F 1F 1F E0 E0 E0 E0 F1 F1 F1 F1 FE FE FE FE FE FE FE FE 半弱密钥为: E0 FE E0 FE F1 FE F1 FE FE E0 FE E0 FE F1 FE F1 1F FE 1F FE 0E FE 0E FE 01 FE 01 FE 01 FE 01 FE 1F E0 1F E0 0E F1 0E F1 01 E0 01 E0 01 F1 01 F1 FE 1F FE 1F FE 0E FE 0E E0 1F E0 1F F1 0E F1 0E FE 01 FE 01 FE 01 FE 01 E0 01 E0 01 F1 01 F1 01 金融数据密码机开发手册 InterC 6 01 1F 01 1F 01 0E 01 0E 1F 01 1F 01 0E 01 0E 01 金融数据密码机开发手册 InterC 7 2 通信 消息格式 通信说明 接收缓冲区 密码机的接收缓冲区大小为 8704 字节,所以每次发送给密码机的消息不能大于 8704字节。 读写方式 对异步通讯和 TCP/IP 通讯,都采用同步读写方式。 即:密码机处理完一个命令,才接收下一个命令。 字母缩写说明 A: 可打印字符 B: 任意字符, 0x000xFF H: 十六进制字符‘ 0’ –‘ 9’、‘ A’ –‘ F’ N: 十进制字符‘ 0’ ‘ 9’ n: 可变长度域 MAC数据说明 MAC 数据的长度不应大于 8192 字节。 通信分类 TCP/IP通信 命令格式: 消息长度( 2 字节) + 消息内容( n 字节) 2 字节长度: 【消息内容】的字节数 消息内容: 按命令格式组织的消息包 例如,要发送的消息包为 0x31, 0x32 两字节,则向密码机发送的内容为: 0x00, 0x02, 0x31, 0x32 注意: 如果采用 EBCDIC 码进行通信,只有消息内容要做 EBCDIC 码转换。 例如发送指令: SR 金融数据密码机开发手册 InterC 8 ASCII 发送方式为: 0X000X020X530X52 EBCEID 发送方式为: 0X000X020XE20XD9 串口通信 消息格式: STX: 起始标志,一个字节,值为 X’02。 COUNT: 两字节的十六进制值。 表示 DATA 的字节长度,不包括 STX、 COUNT、 LRC、 ETX。 DATA: 按命令格式组织的消息包。 LRC: 一个字节的检查值,是 DATA 所有字节异或的结果。 不包括 STX、 COUNT、 LRC、 ETX。 ETX: 结束标志,一个字节,值为 X’03。 通信参数: 波特率 19200bps, 8 位数据位, 1 位停止位,无奇偶校验位。 注意: 如果采用 EBCDIC 码进行通信,只有【 DATA】要做 EBCDIC 码转换,并且此转换应 在校验过 LRC 之后进行。 SNA通信 STX COUNT DATA LRC ETX 金融数据密码机开发手册 InterC 9 3 功能命令 设置类 密码算法设置( AS/AT) 本指令设置密码机所使用的对称加密算法。 输 入 消 息 格 式 输 入 域 长 度 类 型 内 容 命令代码 2 A AS 算法标志 1 N ‘ 1’: DES ‘ 2’: SSF33 其他:保留 输 出 消 息 格 式 输 出 域 长 度 类 型 内 容 应 答 码 2 A AT 错 误 代 码 2 H 00 表示正确 40: DES 算法模块错误 41: SSF33 算法模块错误 如果出现 SSF33 算法模块错误,可能是由于 SSF33 加密模块暂时没安装 金融数据密码机开发手册 InterC 10 读密码机信息( HR/HS) 本指令测试密码机硬件状态,并将主密钥 MK 校验值及密码机版本信息返回。 如果主密钥没设置,只返回错误代和版本信息,不返回 主密钥校验值。 输 入 消 息 格 式 输 入 域 长 度 类 型 内 容 命令代码 2 A HR 输 出 消 息 格 式 输 出 域 长 度 类 型 内 容 应 答 码 2 A HS 错 误 代 码 2 H 00 表示正确 主密钥校验值 16 H 主密钥加密全‘ 0’的结果 版本信息 n B 返回密码机程序版本号等信息 金融数据密码机开发手册 InterC 11 *获取授权( AG/AH) 功能: 口令验证正确后,密码机进入授权状态。 密码机授权时必须插入 C 卡。 某些指令只有在授权状态下才能使用。 注: ( 1) 该命令通过密钥管理端口实现。 ( 2) 密码机的出厂口令为“ FFFFFFFF”。 输 入 消 息 格 式 输 入 域 长 度 类 型 内 容 命令代码 2 A AG 口令长度 2 N 01- 16 密码机口令 n A ‘0’ - ‘9’ , ‘A’ - ‘Z’ 输 出 消 息 格 式 输 出 域 长 度 类 型 内 容 应 答 码 2 A AH 错 误 代 码 2 H 00 表示正确 金融数据密码机开发手册 InterC 12 取消授权( AC/AD) 功能: 使密码机退出授权状态。 输 入 消 息 格 式 输 入 域 长 度 类 型 内 容 命令代码 2 A AC 输 出 消 息 格 式 输 出 域 长 度 类 型 内 容 应 答 码 2 A AD 错 误 代 码 2 H 00 表示正确 金融数据密码机开发手册 InterC 13 修改口令( AM/AN) 功能: 修改加密机的授权口令 输 入 消 息 格 式 输 入 域 长 度 类 型 内 容 命令代码 2 A AM 旧口令长度 2 N 01- 16 旧口令 n A ‘0’ - ‘9’ , ‘A’ - ‘Z’ 新口令长度 2 N 01- 16 新口令 n A ‘0’ - ‘9’ , ‘A’ - ‘Z’ 输 出 消 息 格 式 输 出 域 长 度 类 型 内 容 应 答 码 2 A AN 错 误 代 码 2 H 00 表示正确 金融数据密码机开发手册 InterC 14 密钥管理类 输入一个密钥。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。