我正在研究密码学(mifare)...我正在尝试解决将该算法获取到下面的密钥B的问题。从UID。所有值均以十六进制表示。UID e3bf5741密钥A b8cdd762a32f密钥B e8a638fdd1fe
UID a16ac16f钥匙A d518414da32f密钥B e8a6f46e8bfb
UID 93290142密钥A 7b5b81a4a32f密匙B cafe71411fbf
UID b3290142密钥A 7b5b8144a32f密钥B eafe51411fbf
UID 637a0142钥匙A 2808817ba32f密钥B fc59e0ec1efd
对于第一个示例(密钥A计算)
serial = [0xe3, 0xbf, 0x57, 0x41]; //UID
console.log("#0: " + (serial[1] ^ serial[2] ^ serial[3] ^ 0x11).toString(16));
console.log("#1: " + (serial[1] ^ 0x72).toString(16));
console.log("#2: " + (serial[2] ^ 0x80).toString(16));
console.log("#3: " + (((serial[0] + serial[1] + serial[2] + serial[3]) % 0x100) ^ serial[3] ^ 0x19).toString(16));
console.log("#4: " + (0xa3).toString(16)); console.log("#5: " + (0x2f).toString(16));
我尝试设法解决密钥A算法。你是怎么做到的?可以帮我吗?