1.软加解密示例
————————————————————————————————————————————------
已知数据:
银行测试主密钥TMK: 1234567890ABCDEFABCDEF0987654321
通过签到接口得到:
工作密钥密文KeyValue :3D66234C49E4296FF9C78D8BACBD6A76
工作密钥校验值CheckValue : 861E83E31FAEBF10
——————————————————————————————————————————————
1.计算PIN_BLOCK,方法为ANSI X9.8 格式标准(带主账号信息)
银行卡密码明文 PIN 123654
账号:6230606601007726888
主账号和PIN 按位异或(32位)
pin: 06123654FFFFFFFFFFFFFFFFFFFFFFFF
PAN: 00000000000000000000660100772688
XOR: 06123654FFFFFFFFFFFF99FEFF88D977
即 PIN_BLOCK 为 06123654FFFFFFFFFFFF99FEFF88D977
跟银行确认好,PIN_BLOCK 是 16位还是32位的。

2.把签到接口的返回值 KeyValue(工作密钥密文)由密文解密为明文,
方法为SM4 ecb模式
解密数据 3D66234C49E4296FF9C78D8BACBD6A76 (工作密钥密文)
解密密钥 1234567890ABCDEFABCDEF0987654321 (测试主密钥)
结果: F351D490994603795C6EBEE8FAEBB481

本文提供了一个银行卡密码加解密的示例,使用了SM4 ECB模式和ANSI X9.8格式标准。首先介绍了如何根据主账号信息计算PIN_BLOCK,然后通过测试主密钥解密工作密钥,并验证解密的正确性。接着,使用工作密钥对PIN_BLOCK进行加密,得出用户密码密文。同时讲解了主密钥、工作密钥的概念以及加密的基本知识。
PIN 加解密示例&spm=1001.2101.3001.5002&articleId=104625499&d=1&t=3&u=54d2c02714b14916a80cbd09c92f9b78)
2950

被折叠的 条评论
为什么被折叠?



