java实现MD5加密
来源:互联网 发布:mac版app store 编辑:程序博客网 时间:2024/05/17 07:53
package com.pifeng.test;import java.security.MessageDigest;import java.security.NoSuchAlgorithmException;/** * @date 2016/5/22 * @author 皮锋 * @function java实现MD5加密 */public class MD5 {// 全局数组private final static String[] strDigits = { "0", "1", "2", "3", "4", "5","6", "7", "8", "9", "a", "b", "c", "d", "e", "f" };// public MD5() {// }// 返回形式为数字跟字符串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];}// 返回形式只为数字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]));// 返回形式为数字跟字符串// sBuffer.append(byteToNum(bByte[i]));// 返回形式为数字跟字符串}return sBuffer.toString();}// 得到MD5加密结果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) {String getMD5Code = getMD5Code("20160520");System.out.println(getMD5Code);System.out.println(getMD5Code(getMD5Code));}}
测试结果:
e430e19fc43c95df534fb856a062cd58
ca6bad9d25db45b813d293d6ad7d58bd
2 0
- MD5 JAVA 加密 实现
- Java实现MD5加密
- Java 实现MD5加密
- Java实现MD5加密
- MD5实现加密 java
- Java实现MD5加密
- java 实现md5加密
- Java实现md5加密
- Java实现MD5加密
- JAVA实现MD5加密
- java实现MD5加密
- java实现MD5加密
- java实现:md5加密
- java实现MD5加密
- java实现MD5加密
- Java实现MD5加密
- java实现MD5加密
- java实现MD5加密
- OBIEE权限控制
- Coverity 静态分析 VS Code Review 代码审查
- 3712: [PA2014]Fiolki LCA 思路题
- SPL标准库学习笔记
- mysql 中的语法执行顺序
- java实现MD5加密
- 10. PHP中文件加载
- 高效比较数值大小
- 作业——在线学习Android课程之第十二周(内存、视图、电量优化)
- poj3764 The xor-longest Path
- Maven 项目内置TOMCAT插件
- c++ primer(第五版)学习笔记及习题答案代码版(第九章)顺序容器
- 3716: [PA2014]Muzeum 计算几何+贪心+set
- JavaScript的函数作用域