遇到刷卡器加密错误和后台解密不了的问题确实不太好解决,也有加密后的数据返回,可是后台总是解密不了。在这里我首先要感谢一下我的同事,在他们的帮助下,项目顺利完成了。有以下注意点现汇总如下:
1.密码加密
密码加密的时候前面要加80fa00000806 后面要加 ffffffff 即密码要拼成:80fa00000806 + password + ffffffff 然后通过14号密钥进行加密
2.金额加密
首先进行补位,后面补0,补够16位,前面加80FA000010 然后再用13号密钥加密
3.mac加密
mac加密,一定要确保加密后的磁道2,卡号,密码,是正确的,之后拼装在一起再进行加密,否则mac一直错误,排查起来就麻烦了。
4.刷卡器加密的时间因子不能改变
传递给后台的时间因子一定要和刷卡器加密的时间因子是同一个,否则在生产环境上解密不正确
5.IC刷卡器在交易的过程中不能重置刷卡器,否则加密错误,在交易结束后要重置刷卡器,否则再次进入刷卡器界面,刷卡需要等待很久
6.接口在传递参数的时候,我认为最好能加一个非空判断,否则会闪退,不过这样也好,问题更容易重现,哈哈。