异或规则
同为0,异为1;
一个数和另外一个数进行两次异或后,是原数本身。如下例
a -01100001 3 -00000011 01100010 3 -00000011 01100001异或加密解密规则
数据进行异或一次,加密。数据进行异或两次,解密。代码示例
public class SecurityUtil { //异或 实现加密与解密 存入和返回的都是字符串 public String Xor(String input){ char [] chs =input.toCharArray(); for(int i=0;i<chs.length;i++){ chs[i]=(char)(chs[i]^3000); } return new String(chs); } public static void main(String[] args) { SecurityUtil securityUtil =new SecurityUtil(); String a ="asdvfff"; String b= securityUtil.Xor(a); System.out.println(b); String c= securityUtil.Xor(b); System.out.println(c); } }为什么input为什么不能与key直接进行异或操作?
答:字符串不能参与数学计算。