一 cpu卡硬件结构:
中央处理器(CPU) :
只读存储器(ROM) ;存放cos系统
随机存储器(RAM);相当于内存计算机
电可擦除可编程只读存储器(EEPROM );相当于硬盘
内存分布图:
二:cpu卡的发卡流程
(1)准备设备:cpu卡,读卡器,sam卡(存贮cpu卡所有密钥);
(2)流程步骤:连接读卡器, 寻卡,选择对应目录,cpu卡外部认证(检查是否有权限对cpu卡操作),擦除MF,建立MF下文件(即为应用目录),建立应用 目录下文件
三:cpu卡的充值流程:
1)脱机充值流程
1、 选择要充值的应用目录。
2、 验证口令密钥。
3、 取得充值密钥(这里使用加密机提供的分散指令,用ATS作为分散因子对00B0密钥进行分散得到充值密钥)。
4、 圈存交易初始化。
5、 生成过程密钥。
6、 用过程密钥计算MAC1与初始化交易返回的MAC1进行比对,若一致,则继续执行。
7、 用过程密钥计算MAC2。
8、 使用圈存指令将MAC2发送给CPU卡,完成充值交易。
2)联机充值流程
1、2、3、4步同脱机充值。将圈存交易初始化返回的数据发送给后台,后台算出过程密钥,并得到MAC1。由后台对MAC1作比较,如果一致,则后台再 算出MAC2,返回给前台,前台使用圈存指令将MAC2发送给CPU卡,完成充值交易。
3)消费流程
(1)普通消费
1、 选择要消费的应用目录。
2、 取得消费密钥(这里使用加密机提供的分散指令,用城市代码和ATS作为分散因子对00B1密钥进行分散得到消费密钥)。
3、 消费交易初始化
4、 生成过程密钥
5、 用过程密钥计算MAC1
6、 用消费指令将MAC1发送给CPU卡进行消费交易
7、 得到TAC和MAC2,验证…
(2)复合消费
1、 选择要充值的应用
2、 得到PSAM卡或加密机中得到消费子密钥
3、 进行复合交易初始化
4、 计算过程密钥
5、 利用过程密钥计算MAC1,这里交易类型为09
6、 更新复合应用数据缓存(P1为卡中复合记录文件原记录的复合消费标志)
7、 发送MAC1进行消费
ps:复合记录文件的命令报文数据域的byte7为EF(使用线路保护读,读写都使用标识为00的密钥)
四 cpu卡的安全传送;
线路保护;传输数据+4bit mac码
线路加密;密文
线路加密保护;密文+4bit mac码
五 mac地址计算步骤:
0 取随机数 1 检查字节数 2判断秘钥长度
六