当前位置: 代码迷 >> Java Web开发 >> MD5加密有关问题
  详细解决方案

MD5加密有关问题

热度:32   发布时间:2016-04-17 14:02:09.0
MD5加密问题
在注册的时候如何把密码进行加密??????

------解决方案--------------------
网上很多有md5加密算法,你找下,然后在注册的时候加密,在登录的时候解密
------解决方案--------------------
解密??
楼上的可以示范一下么?
------解决方案--------------------

import java.math.BigInteger;
import java.security.MessageDigest;
import java.util.ArrayList;
import java.util.List;
public class MD5 {
/*
* 用于生成MD5 (String... ) 是JDK5.0的好东西 就是代表可以传入不定长的参数
*/
public static String genMd5(String... strs) throws Exception {
String str = " ";
//拼接字符串
if(strs != null ||strs.length> 0)
{
for(int i = 0;i <strs.length;i++)
{
str+=strs[i];
if(i != strs.length-1)
{
str += ", ";
}
}
// 输入不能为空




// 指定采用MD5算法

MessageDigest algorithm = MessageDigest.getInstance( "MD5 ");

// 按照系统缺省的字符编码方式把str 转换成字节,并把结果存到一新的字节数组buffer中
byte buffer[] = str.getBytes();

// 从指定的字节数组buffer的偏移量0开始,用指定的字节数组修改由str生成摘要
// count为从 0 开始用的字节数长度。
for (int count = 0; count < str.length(); count++) {
algorithm.update(buffer, 0, count);
}

// 通过执行最后的诸如填充的操作完成散列码的计算。 在调用之后复位该摘要
// 返回存放结果散列值的字节数组bDigest 75e10e05848b790538ab08a8c2cd6b05

byte bDigest[] = algorithm.digest();

// 将bDigest转换为大整数bi
BigInteger bi = new BigInteger(bDigest);

// 返回bi字符串表示,即最终的编码结果
return (bi.toString(16));
}
return String.valueOf(System.currentTimeMillis());
}
public static void main(String[] args)
{
List <String> list = new ArrayList <String> ();
list.add( "liudehua ");
list.add( "23 ");
list.add( "1231212 ");
list.add( "asdwea ");

try {
String n = MD5.genMd5(list.get(0));

System.out.println(n);

} catch (Exception e) {
// TODO 自动生成 catch 块
e.printStackTrace();
}

}
}
参考这段代码 调用genMd5()这个方法就能加密你的东西
  相关解决方案