import java.io.UnsupportedEncodingException;
import java.security.MessageDigest;
import java.security.NoSuchAlgorithmException;
import sun.misc.BASE64Encoder;
public class DigestTest {
public static void main(String [] args) throws NoSuchAlgorithmException,
UnsupportedEncodingException{
// 可用的算法包括:MD2 MD5 SHA-1 SHA-256 SHA-384 SHA-512
MessageDigest md = MessageDigest.getInstance("SHA-256");
BASE64Encoder b64e = new BASE64Encoder();
// 执行摘要。
b64e.encode(md.digest("测试内容".getBytes("utf8")));
System.out.println(b64e.encode(md.digest("测试内容".getBytes("utf8"))));
}
}
摘要算法,可以用来保存密码。
摘要是单向的过程,理论上不存在解出明文的可能。
base64 转码相当有必要的。结果可以方便的存入数据库中。
开发新系统时 md5 一般就不要再用了。sha-1 也是一样。

本文介绍了一个使用Java实现的SHA-256摘要算法示例,该算法用于对字符串进行安全加密处理。通过Base64编码后的摘要结果便于存储于数据库中,并强调了在新系统开发中推荐使用SHA-256而非MD5或SHA-1。
843

被折叠的 条评论
为什么被折叠?



