C语言(粗俗的加密)

位异或运算居然可以用来加密!虽然办法粗俗了一点,但确确实实挡住了几个盗刷芯片数据的奸商。

 

拓展:

位逻辑异或运算符(^)对两个操作数的相应位进行异或运算,所谓的异或就是相同为0不同为1,比如:

char  a = 0xB4,  b = 0x6D;

char  c = a^b;

则变量c的值为0xD9。位逻辑或运算规则与逻辑或运算相同,运算细节如下:

仔细观察一下会发现,如果让c再去抑或b,结果会是这样:

这个逻辑是这样的:

b相当于一个密钥,将原始数据a抑或成c,c就是加密之后的数据,将此数据存放到flash芯片,将密钥b存放到不可复制的特殊加密芯片,系统运行时,将数据c异或b之后,给CPU运行:

这种粗俗的做法,可以将一些想要复制flash芯片数据的无良奸商挡在门外,因为b存放的是无法复制的特殊加密芯片。以前我们在东莞生产老虎机(嘘!违法的!)的时候就是介么干的!

你可能感兴趣的:(C语言(粗俗的加密))