/**
* 对密码进行加密,并转换为十六进制
* @param password
* @return
*/
private static String digest(String password){
try {
//获取一个加密对象 Java自带API
MessageDigest md = MessageDigest.getInstance("sha1");//sha1为加密算法
//加密
byte[] digest = md.digest(password.getBytes());
char[] chars = {'0','1','2','3','4','5','6','7','8','9','a','b','c','d','e'};
StringBuilder sb = new StringBuilder();
//处理加密结果
for (byte b: digest) {
//byte为一个字节8位,高四位右移4位与15求与
sb.append(chars[(b>>4)&15]);
//低四位直接与15求与
sb.append(chars[b&15]);
}
return sb.toString();
} catch (NoSuchAlgorithmException e) {
e.printStackTrace();
}
return null;
}
相关文章
- 01-25对密码进行加密,并转换为十六进制
- 01-25vue对密码进行加密 js
- 01-25Python:Werkzeug.security对密码进行加密和校验
- 01-25Python:bcrypt对密码进行加密和校验
- 01-25jasypt 对 配置文件密码进行加密处理
- 01-25某系统的数字密码,比如1983,采用加密方式进行传输,规则如下:先得到每位数,然后每位数都加上5 , 再对10求余,最后将所有数字反转,得到一串新的数字
- 01-25koa对密码进行加密并且存到数据库
- 01-2513.MD5对用户密码进行加密
- 01-25C# 对密码等数据进行对称性加密解密
- 01-25浅谈使用spring security中的BCryptPasswordEncoder方法对密码进行加密与密码匹配