package com.rick.utils;

import java.security.MessageDigest;
import java.security.NoSuchAlgorithmException;
/**
* -------------------------------------------
* Title : MD5Util
* Description : MD5加密算法
* Create on : 2017年4月5日 上午9:53:42
* Copyright (C) strongunion
* @author RICK
* 修改历史:
* 修改人 修改日期 修改描述
* -------------------------------------------
*/
public class MD5Util { // 全局数组
private final static String[] strDigits = { "0", "1", "2", "3", "4", "5",
"6", "7", "8", "9", "a", "b", "c", "d", "e", "f" }; public MD5Util() {
} // 返回形式为数字跟字符串
private static String byteToArrayString(byte bByte) {
int iRet = bByte;
if (iRet < 0) {
iRet += 256;
}
int iD1 = iRet / 16;
int iD2 = iRet % 16;
return strDigits[iD1] + strDigits[iD2];
} // 返回形式只为数字
private static String byteToNum(byte bByte) {
int iRet = bByte;
System.out.println("iRet1=" + iRet);
if (iRet < 0) {
iRet += 256;
}
return String.valueOf(iRet);
} // 转换字节数组为16进制字串
private static String byteToString(byte[] bByte) {
StringBuffer sBuffer = new StringBuffer();
for (int i = 0; i < bByte.length; i++) {
sBuffer.append(byteToArrayString(bByte[i]));
}
return sBuffer.toString();
} public static String getMD5Code(String strObj) {
String resultString = null;
try {
resultString = new String(strObj);
MessageDigest md = MessageDigest.getInstance("MD5");
// md.digest() 该函数返回值为存放哈希值结果的byte数组
resultString = byteToString(md.digest(strObj.getBytes()));
} catch (NoSuchAlgorithmException ex) {
ex.printStackTrace();
}
return resultString;
} public static void main(String[] args) {
MD5Util getMD5 = new MD5Util();
System.out.println(getMD5.getMD5Code("123456"));
}
}

最新文章

  1. SharePoint如何将使列表不被爬网爬到。
  2. 适合PHP学习者的学习路线 10个PHP优化技巧
  3. Servlet页面注册用户的小程序(一)
  4. Autodesk 2013开发者日(DevDays)又要来了 -- 北京(2013年11月7日)和上海(2013年11月11日)
  5. WPF DataGrid Control
  6. ACM: 畅通工程-并查集-解题报告
  7. 网页 console的使用
  8. EmguCV学习——简单使用
  9. laravel url管理与使用
  10. 40道Java初中级算法面试题
  11. iOS项目之iPhoneX遇到的坑
  12. Vim怎么批量处理文件将tab变为space
  13. Codeforces 1139F Dish Shopping 树状数组套平衡树 || 平衡树
  14. 关于PRD、MRD、BRD文档
  15. 20170112xlVBA查询SQL
  16. 请整体描述Java异常体系
  17. noip 1995 灯的排列问题 排列组合 DFS
  18. java中生成流水号的一个例子(使用BerkeleyDB)
  19. 【bug】记一个有趣的“bug”
  20. 大数据:Windows下配置flink的Stream

热门文章

  1. [Jobdu] 题目1493:公约数
  2. 各种波形文件vcd,vpd,shm,fsdb生成的方法(zz)
  3. windows 添加打印机
  4. 李洪强漫谈iOS开发[C语言-053]-小结
  5. Java Mail(三):Session、Message详解
  6. BAT-把当前用户以管理员权限运行
  7. 一款基于jQuery的带Tooltip表单验证的注册表单
  8. 【2015/7/22】SqlServer卸载重装全攻略!
  9. 29个酷炫的Firefox配置参数
  10. 微信小程序 - 开发工具之编译模式