/**
* 采用MD5加密算法,不可逆
* @param message 待加密的字符串
* @return:加密结果
* @throws java.lang.Exception
*/
public static String MD5Encode(String message){
StringBuffer hexValue = new StringBuffer();
try{
MessageDigest messageDigest = MessageDigest.getInstance("MD5"); //采用MD5加密算法
char[] charArray = message.toCharArray();
byte[] byteArray = new byte[charArray.length];
for (int i=0; i<charArray.length; i++)
byteArray[i] = (byte) charArray[i];
byte[] md5Bytes = messageDigest.digest(byteArray);
for (int i=0; i<md5Bytes.length; i++)
{
int val = ((int) md5Bytes[i] ) & 0xff;
if (val < 16) hexValue.append("0");
hexValue.append(Integer.toHexString(val));
}
}
catch(Exception e){
e.printStackTrace();
}
return hexValue.toString();
}
调用方法:
实体Bean.setPassword(加密方法类名.MD5Encode("123"));//这个只是每次固定对123加密,这个可以通过参数传进来
楼主,给分
* 采用MD5加密算法,不可逆
* @param message 待加密的字符串
* @return:加密结果
* @throws java.lang.Exception
*/
public static String MD5Encode(String message){
StringBuffer hexValue = new StringBuffer();
try{
MessageDigest messageDigest = MessageDigest.getInstance("MD5"); //采用MD5加密算法
char[] charArray = message.toCharArray();
byte[] byteArray = new byte[charArray.length];
for (int i=0; i<charArray.length; i++)
byteArray[i] = (byte) charArray[i];
byte[] md5Bytes = messageDigest.digest(byteArray);
for (int i=0; i<md5Bytes.length; i++)
{
int val = ((int) md5Bytes[i] ) & 0xff;
if (val < 16) hexValue.append("0");
hexValue.append(Integer.toHexString(val));
}
}
catch(Exception e){
e.printStackTrace();
}
return hexValue.toString();
}
调用方法:
实体Bean.setPassword(加密方法类名.MD5Encode("123"));//这个只是每次固定对123加密,这个可以通过参数传进来
楼主,给分
解决方案 »
- 我从网上下了一个Web项目,怎么没见数据库文件在哪呀
- 求助,关于IO流的问题!请大家帮我看看
- 请问有中文的 LDAP 客户端么?
- 网络安全问题?
- hibernate 刚起步问题
- 高分求救EJB QL问题.....
- eclipse的org.eclipse.swt.examples.FileViewer怎么不能移动文件和文件夹?
- 关于EJB的一个困惑: CMP or BMP or SessionBean ??
- EJB是什么?谁能解答一下?
- 小白求教:java中modulepath与classpath区别是什么?
- struts中ec标签的使用问题?
- CXF2.1 + aegis 怎么配置参数为一个JavaBean??谢谢了~~
/** *//**利用MD5进行加密
* @param str 待加密的字符串
* @return 加密后的字符串
* @throws NoSuchAlgorithmException 没有这种产生消息摘要的算法
* @throws UnsupportedEncodingException
*/
public String EncoderByMd5(String str) throws NoSuchAlgorithmException,
UnsupportedEncodingException...{
//确定计算方法
MessageDigest md5=MessageDigest.getInstance("MD5");
BASE64Encoder base64en = new BASE64Encoder();
//加密后的字符串
String newstr=base64en.encode(md5.digest(str.getBytes("utf-8")));
return newstr;
} 调用函数:String str="0123456789" System.out.println(EncoderByMd5(str)); 输出:eB5eJF1ptWaXm4bijSPyxw==
/**
* 采用MD5加密算法,不可逆
* @param message 待加密的字符串
* @return:加密结果
* @throws java.lang.Exception
*/
public static String MD5Encode(String message){
StringBuffer hexValue = new StringBuffer();
try{
MessageDigest messageDigest = MessageDigest.getInstance("MD5"); //采用MD5加密算法
char[] charArray = message.toCharArray();
byte[] byteArray = new byte[charArray.length];
for (int i=0; i <charArray.length; i++)
byteArray[i] = (byte) charArray[i];
byte[] md5Bytes = messageDigest.digest(byteArray);
for (int i=0; i <md5Bytes.length; i++)
{
int val = ((int) md5Bytes[i] ) & 0xff;
if (val < 16) hexValue.append("0");
hexValue.append(Integer.toHexString(val));
}
}
catch(Exception e){
e.printStackTrace();
}
return hexValue.toString();
}