如何找到与另一个值异或的值?

How to find a value that XORs to another value?

我正在尝试对主密钥值进行异或运算的 3 个密钥。

A XOR B XOR C = MASTER KEY

如果A、B和MASTER KEY可以随机生成一个字节(LENGTH=32),我如何找到C的值? (在 javascript)

由于 XOR 是它自己的逆(即对所有位模式 A XOR A = 0A),您可以通过以下方式找到 C

C = A ^ B ^ MASTER_KEY;

其中 ^ 是 JavaScript 异或运算符,ABMASTER_KEY 是您在上面定义的值。

由于 XOR 是 XOR 的逆运算并且 XOR 是可交换的,因此您可以只应用基本算术:

A XOR B XOR C = M    | XOR C
A XOR B = M XOR C    | XOR M
A XOR B XOR M = C

并且在 javascript 语法中:

var C = A ^ B ^ MASTER_KEY;