使用MD5加密
2016-02-24 00:00
197 查看
package com.utool.md5;
import java.security.MessageDigest;
public class MD5UTool {
private MD5UTool(){}//私有构造方法
public final static String MD5(String s) {
char hexDigits[]={'0','1','2','3','4','5','6','7','8','9','A','B','C','D','E','F'};
try {
byte[] btInput = s.getBytes("UTF-8");
// 获得MD5摘要算法的 MessageDigest 对象
MessageDigest mdInst = MessageDigest.getInstance("MD5");
// 使用指定的字节更新摘要
mdInst.update(btInput);
// 获得二进制密文
byte[] md = mdInst.digest();
// 把二进制密文转换成三十二进制的字符串形式
int j = md.length;
char str[] = new char[j * 2];
int k = 0;
for (int i = 0; i < j; i++) {
byte byte0 = md[i];
str[k++] = hexDigits[byte0 >>> 4 & 0xf];
str[k++] = hexDigits[byte0 & 0xf];
}
return new String(str);
} catch (Exception e) {
e.printStackTrace();
return null;
}
}
}
import java.security.MessageDigest;
public class MD5UTool {
private MD5UTool(){}//私有构造方法
public final static String MD5(String s) {
char hexDigits[]={'0','1','2','3','4','5','6','7','8','9','A','B','C','D','E','F'};
try {
byte[] btInput = s.getBytes("UTF-8");
// 获得MD5摘要算法的 MessageDigest 对象
MessageDigest mdInst = MessageDigest.getInstance("MD5");
// 使用指定的字节更新摘要
mdInst.update(btInput);
// 获得二进制密文
byte[] md = mdInst.digest();
// 把二进制密文转换成三十二进制的字符串形式
int j = md.length;
char str[] = new char[j * 2];
int k = 0;
for (int i = 0; i < j; i++) {
byte byte0 = md[i];
str[k++] = hexDigits[byte0 >>> 4 & 0xf];
str[k++] = hexDigits[byte0 & 0xf];
}
return new String(str);
} catch (Exception e) {
e.printStackTrace();
return null;
}
}
}
相关文章推荐
- Hadoop/Spark生态圈里的新气象【转】
- Linux查看程序端口占用情况
- 自定义UITableViewCell
- oc 中 json 布尔值的判断
- ios 时间操作 根据当前时间 获取昨天 今天 明天
- PHP json_decode返回null解析失败原因
- PHP 使用 header 跳转支付界面,传递不过参数
- PHP实现排序算法
- 活该
- day24-----------多线程(传智视频)
- Num27反射,jdk新特性(传智视频)
- js加密解密请求路径
- 分享erlang的调度器和垃圾回收2片博文
- rebar.config的依赖包名称问题
- 听说Apple pay稳居安全宝座!是配还是呸?
- redis安装
- redis的配置
- redis主从
- java阻塞队列
- java线程池