/** * 自定义简单生成盐,是一个随机生成的长度为16的字符串,每一个字符是随机的十六进制字符 */ publicstatic String getSalt(){ Random random = new Random(); StringBuilder sb = new StringBuilder(SALT_LENGTH); for (int i = 0; i < sb.capacity(); i++) { sb.append(HEX[random.nextInt(SALT_LENGTH)]); } return sb.toString(); }
privatestatic String byte2HexStr(byte[] bytes){ StringBuilder result = new StringBuilder(); //两个字节为一个字符 2进制转16进制 for (byte byte0 : bytes) { result.append(HEX[byte0 >>> 4 & 0xf]); result.append(HEX[byte0 & 0xf]); } return result.toString(); }