将用户的密码通过md5加密算法得到一串密文保存到数据库,输入密码同样用md5生成一串密文,如果在数据库中找到相同的密文则证明密码存在;
这样即使数据库被入侵用户的密码也是不可见的;
java 代码:
import java.math.BigInteger;
import java.security.MessageDigest;
import java.security.NoSuchAlgorithmException;
public class MD5Utils {
/**
* 使用md5的算法进行加密
*
* @param plainText
* 加密原文
* @return 加密密文
*/
public static String md5(String plainText) {
byte[] secretBytes = null;
try {
secretBytes = MessageDigest.getInstance("md5").digest(
plainText.getBytes());
} catch (NoSuchAlgorithmException e) {
throw new RuntimeException("没有md5这个算法!");
}
return new BigInteger(1, secretBytes).toString(16);
}