您的位置:首页 > 编程语言 > Java开发

java中MD5加密方法实例

2012-11-20 22:57 288 查看
只需要写好类在后台中调用就行:

import java.security.MessageDigest;
public final class Md5Token {
private static char hexDigits[] = {'0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'a', 'b', 'c', 'd', 'e', 'f'};
private static Md5Token instance = null;
private Md5Token() {
}
public synchronized static Md5Token getInstance() {
if(instance==null){
instance=new Md5Token();
}
return instance;
}
/**
*  生成16位加密密码
* @param arg0
* @return
*/
public String getShortToken(String arg0) {
return encoder(arg0).substring(8,24);
}
/**
* 生成一个24位加密密码
* @param arg0
* @return
*/
public String getLongToken(String arg0) {
return encoder(arg0).toString();
}
private StringBuffer encoder(String arg){
if(arg==null){
arg="";
}
MessageDigest md5 = null;
try {
md5=MessageDigest.getInstance("MD5");

md5.update(arg.getBytes("utf-8"));
} catch (Exception e) {
e.printStackTrace();
}
return toHex(md5.digest());
}
private StringBuffer toHex(byte[] bytes) {
StringBuffer str = new StringBuffer(32);
int length=bytes.length;
for (int i = 0; i < length; i++) {
str.append(hexDigits[(bytes[i] & 0xf0) >> 4]);
str.append(hexDigits[bytes[i] & 0x0f]);
}
return str;
}

public static void main(String args[])
{
String password = "mysql";
String p = Md5Token.getInstance().getLongToken(password);
System.out.print(p);
}
}


 
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  javaweb MD5加密