求Java的MD5加密解密实现类。 要实现对用户的密码进行加密! 然后验证用户的密码!
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了求Java的MD5加密解密实现类。 要实现对用户的密码进行加密! 然后验证用户的密码!相关的知识,希望对你有一定的参考价值。
在应用系统中,SSH2系统中 怎么对用户密码加密,查询的时候怎么解密呢?
①加密。
②解密。
最好简单的说下原理。
import java.util.logging.Level;
import java.util.logging.Logger;
public class md5
public String md5(String str)
String s=str;
if(s==null)
return "";
else
String value = null;
MessageDigest md5 = null;
try
md5 = MessageDigest.getInstance("MD5");
catch (NoSuchAlgorithmException ex)
Logger.getLogger(md5.class.getName()).log(Level.SEVERE, null, ex);
sun.misc.BASE64Encoder baseEncoder = new sun.misc.BASE64Encoder();
try
value = baseEncoder.encode(md5.digest(s.getBytes("utf-8")));
catch (Exception ex)
return value;
追问
能大致的说下原理。
还有能我取用户密码的时候怎么算呢?
public String md5(String str)
String s=str;
if(s==null)
return "";
else
String value = null;
MessageDigest md5 = null;
try
md5 = MessageDigest.getInstance("MD5");
catch (NoSuchAlgorithmException ex)
Logger.getLogger(md5.class.getName()).log(Level.SEVERE, null, ex);
sun.misc.BASE64Encoder baseEncoder = new sun.misc.BASE64Encoder();
try
value = baseEncoder.encode(md5.digest(s.getBytes("utf-8")));
catch (Exception ex)
return value;
这个函数的返回值就是加密后的字符串,参数就是你要加密的字符串。
用户登陆的时候,获取用户输入的字符串,用这个函数处理后得到密文,与数据库中的加密后的密码(密文)比较,如果一样就是密码正确,否则,错误。
所以是不需要解密算法的。如果用户忘记密码,也不是直接告诉他原来的密码,而是在用户答对密保问题后将密码重置。
md5.class 这个报错呢? Logger 这行可以删除的吧?
我不需要日志记录。
日志记录的我用 log4j 非常的感谢哈。!祝您节日快乐!
不会报错,只有警告。可以不鸟他
本回答被提问者和网友采纳以上是关于求Java的MD5加密解密实现类。 要实现对用户的密码进行加密! 然后验证用户的密码!的主要内容,如果未能解决你的问题,请参考以下文章