需求:扫描二维码之后得到一串base64的字符串,由这串二维码进行逆向得到原始数据。在逆向的过程中其中有一个是异或操作,总结如下
a ^ b = c;
现在已知 b 跟 c 需要得到原始数据a
笨方法是,拿c出来进行逐个bit进行判断,为1->则对b的该bit进行取反得到a的该bit,为0->则对b的该bit直接赋值给a的该bit。
方法一: a = (~c & b) | (c & ~b)
方法二: a = c ^ b
需求:扫描二维码之后得到一串base64的字符串,由这串二维码进行逆向得到原始数据。在逆向的过程中其中有一个是异或操作,总结如下
a ^ b = c;
现在已知 b 跟 c 需要得到原始数据a
笨方法是,拿c出来进行逐个bit进行判断,为1->则对b的该bit进行取反得到a的该bit,为0->则对b的该bit直接赋值给a的该bit。
方法一: a = (~c & b) | (c & ~b)
方法二: a = c ^ b