标签 psam 下的文章

“”

PSAM 卡授权流程APDU参考

PSAM获取终端机编号 00 B0 96 00 06

读版本号:

选MF 00 A4 00 00 02 3f 00
选0015 00 A4 00 00 02 00 15
读0015 00 B0 00 00 10
选并读0015用一条命令
00 B0 95 00 0E
示例应答
33 01 03 01 00 00 00 00 00 01 05 01 01 01 90 00
PSAM序列号:33010301000000000001
PSAM版本号:05
PSAM版本号 ≥ 0x05,支持国密SM4算法!

返回的PSAM版本号>=0x05 且不为0xFF则判断为国密PSAM;否则为3DES

国密PSAM继续:
选DF01 00 A4 00 00 02 df 01
*选0017 00 A4 00 00 02 00 15
读0017 00 B0 00 00 20*
选并读0017
00 B0 97 00 1B
应答
01 00 FF FF FF FF FF FF FF D5 E3 BD AD 33 01 00 01 20 20 04 08 20 25 04 07 41 40 90 00

判断是否已授权

选DF01 00 A4 00 00 02 df 01

二级分散 返回6982则为待授权

801A48011000000000000000000000000000000000

返回:9000-无需授权; 6982-需要授权

PSAM授权初始化

选DF01-选0017-读0017-选MF目录-选0015-读0015->
取随机数(4字节/8字节)

PSAM授权

外部认证 00 82 00 41[len code_buff[8]]
选DF01

PSAM卡外部认证

EXTERNAL AUTHENTICATE 命令应符合下列规定:
EXTERNAL AUTHENTICATE 命令执行成功后,应使外部接口设备对 PSAM 卡获得某种操作授权。
接口设备提供的认证数据应按以下规则产生:
1) 用 GET CHALLENGE 命令向 IC 卡申请一组随机数;
2) 用指定密钥对随机数(后面填充 0x00 至 8 字节(3DES)或 16 字节(SM4)后)做加密运算产生。
3) 对于 SM4 算法,认证数据为 16 字节密文前后 8 字节进行异或的结果,长度仍为 8 字节。
EXTERNAL AUTHENTICATE 命令执行时应满足 P2 参数所指定密钥的使用权限。
密钥验证失败时相应外部认证密钥的错误计数器应减 1,当计数器减为‘0’值时,密钥被锁定。

详细内容参考:高速公路电子不停车收费(ETC)系统国产密码算法迁移试点工程暂行技术要求.pdf