随机值+固定位进行加盐。
import org.apache.commons.net.util.Base64;
import java.nio.charset.StandardCharsets;
public class DjxhBase64SaltUtils {
public static int[] saltssite={2,7,11,13,16};
/**
* 加密
* @param djxhSalt
* @return
*/
public static String addBase64Encryption(String djxhSalt){
return Base64.encodeBase64String((djxhSalt).getBytes(StandardCharsets.UTF_8));
}
/**
* 随机加盐
* @param djxh
* @return
*/
public static String getSalt(String djxh){
StringBuffer sb = new StringBuffer(djxh);
for (int n =saltssite.length-1;n>=0;n--){
int r =(int) (Math.random()*10);
sb.insert(saltssite[n],r);
}
return sb.toString();
}
/**
* 去盐
* @param djxhSalt
* @return
*/
public static String delSalt(String djxhSalt){
StringBuffer sb = new StringBuffer(djxhSalt);
for (int n=0;n<saltssite.length;n++){
sb.deleteCharAt(saltssite[n]);
}
return sb.toString();
}
/**
* 解密
*
* @param djxhSalt
* @return
*/
public static String decodeBase64Encryption(String djxhSalt){
return new String(Base64.decodeBase64((djxhSalt).getBytes(StandardCharsets.UTF_8)));
}
}