前言
有时需要加密保存数据,但是我不会用AES……所以选择了更简单的异或加密。
解决方案
public static String xor(String data, String password) { //异或加密 byte b1[] = data.getBytes(); byte b2[] = password.getBytes(); byte longbytes[], shortbytes[]; if (b1.length >= b2.length) { longbytes = b1; shortbytes = b2; } else { longbytes = b2; shortbytes = b1; } byte xorstr[] = new byte[longbytes.length]; int i = 0; for (; i < shortbytes.length; i++) { xorstr[i] = (byte) (shortbytes[i] ^ longbytes[i]); } for (; i < longbytes.length; i++) { xorstr[i] = longbytes[i]; } return new String(xorstr); }