MD5加密算法的java实现
来源:互联网 发布:天猫店和淘宝店的区别 编辑:程序博客网 时间:2024/05/04 20:23
package com.etop.utils;import java.security.MessageDigest;import java.security.NoSuchAlgorithmException;/** * @类名: MD5Utils * @描述: 32位的md5加密方法 * @作者 liuren-mail@163.com * @日期 2015年5月30日 上午10:29:57 */public class MD5Utils {// 全局数组 private final static String[] strDigits = { "0", "1", "2", "3", "4", "5", "6", "7", "8", "9", "a", "b", "c", "d", "e", "f" }; public MD5Utils() { } // 返回形式为数字跟字符串 private static String byteToArrayString(byte bByte) { int iRet = bByte; // System.out.println("iRet="+iRet); if (iRet < 0) { iRet += 256; } int iD1 = iRet / 16; int iD2 = iRet % 16; return strDigits[iD1] + strDigits[iD2]; } // 返回形式只为数字 @SuppressWarnings("unused")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 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) { MD5Utils getMD5 = new MD5Utils(); System.out.println(getMD5.GetMD5Code("000000")); }}
生成的结果是:670b14728ad9902aecba32e22fa4f6bd
和md.js的加密结果一样。
0 0
- java的MD5加密算法实现
- java实现的MD5加密算法
- MD5加密算法的java实现
- MD5加密算法的java实现
- Java MD5加密算法的实现
- Java MD5加密算法的实现
- MD5加密算法的java实现
- MD5加密算法的Java实现
- Java MD5加密算法的实现
- 算法--MD5--MD5加密算法的java实现
- MD5加密算法,java实现
- java MD5 加密算法实现
- Md5加密算法java实现
- MD5加密算法JAVA实现
- java实现MD5加密算法
- java MD5加密算法实现
- MD5加密算法JAVA实现
- JAVA 实现MD5加密算法
- Ubuntu 系统目录架构
- RHEL7 (124)分析和存储日志
- 关于指针
- 注解(Annotation)
- PE文件结构详解<三>
- MD5加密算法的java实现
- 基于opencv2实现证件照换背景(从蓝色到红色)
- RHEL7(124) 管理RHEL7系统网络
- 重写Qt中paintEvent事件画5个参数的椭圆
- RHEL7 (124)系统间的文件传递
- Java学习笔记之多线程 1
- 面试题:byte b = 130;有没有问题?
- latex 排版遇到问题与解决
- 红外遥控数码管