【代码积累-4】cal MD5
来源:互联网 发布:种植牙 知乎 疼 编辑:程序博客网 时间:2024/05/02 11:33
import java.security.MessageDigest;import java.security.NoSuchAlgorithmException;//import org.apache.commons.codec.binary.Hex;public class CalMD5_Test {public static void main(String[] args) {// TODO Auto-generated method stubString rawString = new String((System.currentTimeMillis()*1000)+":"+generateSipRand()); System.out.println(calMD5(rawString).toLowerCase()); System.out.println(calMD5_2(rawString).toLowerCase());}public static String calMD5(String input) { byte[] inputByteArray = input.getBytes(); byte[] outputByteArray = null; try { /*��ȡһ��MD5ת��������*/ MessageDigest messageDigest = MessageDigest.getInstance("MD5"); inputByteArray = input.getBytes(); messageDigest.update(inputByteArray); outputByteArray = messageDigest.digest(); /*���ֽ�����ת�����ַ������*/ return byteArrayToHexString(outputByteArray); } catch (NoSuchAlgorithmException e) { return null; } }public static String calMD5_2(String input) { byte[] inputByteArray = input.getBytes(); byte[] outputByteArray = null; try { /*��ȡһ��MD5ת��������*/ MessageDigest messageDigest = MessageDigest.getInstance("MD5"); inputByteArray = input.getBytes(); messageDigest.update(inputByteArray); outputByteArray = messageDigest.digest(); String temp = new String(outputByteArray); /*���ֽ�����ת�����ַ������*/ return temp; } catch (NoSuchAlgorithmException e) { return null; } }public static String byteArrayToHexString(byte[] byteArray) { // ���ȳ�ʼ��һ���ַ����飬�������ÿ��16�����ַ� char[] hexDigits = {'0','1','2','3','4','5','6','7','8','9', 'A','B','C','D','E','F' }; // newһ���ַ����飬�������������ɽ���ַ����ģ�����һ�£�һ��byte�ǰ�λ�����ƣ�Ҳ����2λʮ�������ַ���2��8�η�����16��2�η����� char[] resultCharArray =new char[byteArray.length * 2]; // �����ֽ����飬ͨ��λ���㣨λ����Ч�ʸߣ���ת�����ַ��ŵ��ַ�������ȥ int index = 0; for (byte b : byteArray) { resultCharArray[index++] = hexDigits[b>>> 4 & 0xf]; resultCharArray[index++] = hexDigits[b& 0xf]; } // �ַ�������ϳ��ַ������� return new String(resultCharArray); }private static int generateSipRand() { int random = (int)(Math.random()*Integer.MAX_VALUE); return random; }}
阅读全文
0 0
- 【代码积累-4】cal MD5
- cal
- cal
- cal
- cal
- 代码积累
- MD5 代码
- MD5代码
- MD5 代码
- MD5代码
- 积累代码VS积累经验
- C#项目代码积累
- iims 代码积累
- QT示例代码【积累】
- JS细节性代码积累
- javascript 代码积累
- 个人代码积累
- android实用代码积累
- c++中类中成员在内存中的布局
- Spring学习之使用factorybean获取bean实例
- spring的事务
- 你竟敢说你懂Spring框架?有可能你是没看到这些...(上)
- thread16
- 【代码积累-4】cal MD5
- Python语法第4讲:字符串及常用函数
- tensorflow的基本用法(一)
- leetCode刷题归纳-Dynamic Programming(120. Triangle)
- 关于在线学习的封闭解 part-5
- UI设计应该知道的20个原则
- JavaScript定时器实现的原理分析 作者:谢灿勇 字体:[增加 减小] 类型:转载 时间:2016-12-06 我要评论 JavaScript中的定时器大家基本在平时的开发中都遇见过吧,但是又
- myeclipse破解通用版
- 产品思维对UI设计师的重要性