今天遇到一个判断数据库中密码是否为base64加密的密码,百度了半天也没找到判断办法,想了一会想到个小技巧,来给大家分享。
先对字符串进行解密,在对解密后的内容进行加密。如果加密后的内容和传过来的值相同则就是加密过的。
原因:因为内容如果是加密的解密再加密就能回到原来内容。
不是加密的,解密就会出现乱码,再进行加密自然不会和以前一样。
/**
* 判断是否为BASE加密
* */
public static boolean ifBASE(String val) throws Exception {
byte[] key= BASE.decryptBASE(val);
String strs=new String(key);
String result= BASE.encryptBASE(strs.getBytes());
return result.equals(val);
}