A. 银行加密部分流程
我们来考虑一个报文中到底什么信息是需要加密的,目前一般的做法是只对账号和密码进行加密(也有只对密码加密的),其他的内容不加密的。对账号和密码加密有个术语,叫PinBlock,即PIN块,就是对账号和密码进行DES加密处理后的一个密文数据块。既然使用了DES算法来加密账号和密码,则必然有个Key来加密,那么我们就把这个Key称为PinKey(PIK),就是专门来加密用户账户和密码的Key。
原文链接: https://blog.csdn.net/u011974987/article/details/55506710
1、在ATM机上运行的系统叫ATMC,行内与ATMC直接连接的系统叫ATMP,ATMP再(经过ESB)连接核心账务系统。2、在传输过程中是不会出现明文密码的(但报文整体不一定加密,可能是明文带MAC),所以ATMP不会解密密码,而是校验MAC,再将C端加密的密码转换成核心系统加密的密码,这一步是由P端调用加密机API,在硬件加密机中直接完成的。3、核心系统收到P端的报文后,同样调加密机API生成MAC与P端的MAC对比,并对比密码。4、PIK和MAK确实是经过主密钥加密的,但是调加密机API并不需要送PIK和MAK的值,只需要送密钥的名称,所以无论对对PIK/MAK的加解密,还是对PIN和MAC的加解密都是在加密机中完成的,其他应用系统不需要关心。
链接: https://www.hu.com/question/37455323/answer/134372564
zpk:区域pin密钥,银行卡交换系统和银行A、银行B,分别形成一个区域。
转pin是从一把zpk加密转到另一把zpk加密,这两把zpk可能分属两家银行,也可能是同一个银行的?
ATMP:ATM前置机。
ATM加密后给ATMP(这个加密后的值不是pinblock,不是银行系统识别持卡人用的),
ATMP收到之后,再调用加密机,生成pinblock,然后发给收单行。
整个流程,pin不会出现明文。