交易中的MAC计算使用此方法。计算方法分二步完成。先用指定密钥产生过程密钥,再用过程密钥计算MAC。
ED/EP交易中的MAC是使用不同交易指定的数据元序列来产生的。从而保证交易的安全性。按照如下方式使用过程密钥DEA算法产生MAC:
第一步 | 将一个8字节长的初始值设定为16进制数‘00 00 00 00 00 00 00 00’。 |
第二步 | 将所有输入数据按指定顺序连接成一个数据块。 |
第三步 | 将该数据块分成8字节为单位的数据块,表示为BLOCK1、BLOCK2、BLOCK3、BLOCK4等。最后的数据块有可能是1~8个字节。 |
第四步 | 如果最后的数据块的长度是8字节的话,则在该数据块之后再加一个完整的8字节数据块‘80 00 00 00 00 00 00 00’,转到第五步。 如果最后的数据块的长度不足8字节,则在其后加入16进制数‘80’,如果达到8字节长度,则转到第五步;否则在其后加入16进制数‘00’直到长度达到8字节。 |
第五步 | 按照图3所述的算法对这些数据块使用过程密钥(单倍长度)进行加密来产生MAC。 |
第六步 | 最终取计算结果(高4字节)作为MAC。 |
图3 ED/EP交易中的MAC算法