我想在Java中加密和解密一个密码,并以加密的形式存储到数据库中。如果它是开源的,那就太好了。有什么建议/建议吗?
发布于 2013-01-08 02:28:12
下面是我用MD5进行加密的算法,它返回加密后的输出。
public class CryptWithMD5 {
private static MessageDigest md;
public static String cryptWithMD5(String pass){
try {
md = MessageDigest.getInstance("MD5");
byte[] passBytes = pass.getBytes();
md.reset();
byte[] digested = md.digest(passBytes);
StringBuffer sb = new StringBuffer();
for(int i=0;i<digested.length;i++){
sb.append(Integer.toHexString(0xff & digested[i]));
}
return sb.toString();
} catch (NoSuchAlgorithmException ex) {
Logger.getLogger(CryptWithMD5.class.getName()).log(Level.SEVERE, null, ex);
}
return null;
}
}
你不能解密MD5,但你可以比较输出,因为如果你把相同的字符串放在这个方法中,它将有你想要解密的相同的加密output.If,你需要使用的SHA.You永远不会对总是使用MD5的用户password.For使用描述。
发布于 2011-07-06 13:42:58
Jasypt 可以为您轻松轻松地完成这项工作
发布于 2011-07-06 13:51:25
https://stackoverflow.com/questions/6592010
复制相似问题