异或运算的基本规则
元素1 | 元素2 | 结果 | 规则 |
0 | 0 | 0 | 0 xor 0 = 0 |
0 | 1 | 1 | 0 xor 1 = 1 |
1 | 0 | 1 | 1 xor 0 = 1 |
1 | 1 | 0 | 1 xor 1 = 0 |
运算数相同,结果为0;运算数不同,结果为1。
任何数(0或1)与数值0异或,结果仍为自身。
任何数(0或1)与数值1异或,结果变为另外一个数。
如何数(0或1)与自身异或,结果为0。
根据上述异或运算规则,对数据a、数据b进行异或运算,可以得到数值c:
a xor b = c
c xor a = (a xor b) xor a = (a xor a) xor b = 0 xor b = b
c xor b = (a xor b) xor b = a xor (b xor b) = a xor 0 = a
因此,当上述a,b,c具有如下关系时:
a: 明文
b: 密钥
c: