博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
MD5加密
阅读量:5372 次
发布时间:2019-06-15

本文共 2159 字,大约阅读时间需要 7 分钟。

1 import java.security.MessageDigest;  2  3 /**  4  * md5加密 
<功能详细描述>
5 * 6 * @author wanglei 7 * @version [版本号, Feb 28, 2011] 8 * @see [相关类/方法] 9 * @since WihomeV100R001C02LGDM05 10 */ 11 public class Md5Util 12 {
13 private static final String[] HEXDIGITS = {"0", "1", "2", "3", "4", "5", "6", "7", "8", "9", "a", "b", "c", "d", 14 "e", "f"}; 15 16 private static final int NUM256 = 256; 17 18 private static final int NUM16 = 16; 19 20 /** 21 * 对字符串进行MD5加密
<功能详细描述>
22 * 23 * @param originString String 24 * @return String 25 * @see [类、类#方法、类#成员] 26 */ 27 public static String generatePassword(String originString) 28 {
29 if (originString != null) 30 {
31 try 32 {
33 MessageDigest md = MessageDigest.getInstance("MD5"); 34 // 使用指定的字节数组对摘要进行最后更新,然后完成摘要计算 35 byte[] results = md.digest(originString.getBytes()); 36 // 将得到的字节数组变成字符串返回 37 String resultString = byteArrayToHexString(results); 38 return resultString; 39 } 40 catch (Exception ex) 41 {
42 ex.printStackTrace(); 43 } 44 } 45 return null; 46 } 47 48 private static String byteArrayToHexString(byte[] b) 49 {
50 StringBuffer resultSb = new StringBuffer(); 51 for (int i = 0; i < b.length; i++) 52 {
53 resultSb.append(byteToHexString(b[i])); 54 } 55 return resultSb.toString(); 56 } 57 58 /** 59 * 将一个字节转化成十六进制形式的字符串
<功能详细描述>
60 * 61 * @param b byte 62 * @return String 63 * @see [类、类#方法、类#成员] 64 */ 65 private static String byteToHexString(byte b) 66 {
67 int n = b; 68 if (n < 0) 69 {
70 n = NUM256 + n; 71 } 72 int d1 = n / NUM16; 73 int d2 = n % NUM16; 74 return HEXDIGITS[d1] + HEXDIGITS[d2]; 75 } 76 }

转载于:https://www.cnblogs.com/jh5240/archive/2011/10/30/2229239.html

你可能感兴趣的文章
alibaba / zeus 安装 图解
查看>>
Planned Delivery Time as Work Days (SCN discussion)
查看>>
Ubuntu:让桌面显示回收站
查看>>
Android上传头像代码,相机,相册,裁剪
查看>>
git 安装体验
查看>>
Oracle 给已创建的表增加自增长列
查看>>
《DSP using MATLAB》Problem 2.17
查看>>
if 循环
查看>>
uva 111 History Grading(lcs)
查看>>
Python学习week2-python介绍与pyenv安装
查看>>
php判断网页是否gzip压缩
查看>>
一个有意思的js实例,你会吗??[原创]
查看>>
sql server中bit字段实现取反操作
查看>>
Part3_lesson2---ARM指令分类学习
查看>>
jQuery拖拽原理实例
查看>>
JavaScript 技巧与高级特性
查看>>
Uva 11729 Commando War
查看>>
增强学习(一) ----- 基本概念
查看>>
ubuntu下USB连接Android手机
查看>>
C# 语句 分支语句 switch----case----.
查看>>