我将用户密码作为 sha1 哈希存储在数据库中。
不幸的是,我得到了奇怪的答案。
我将字符串存储为:
MessageDigest cript = MessageDigest.getInstance("SHA-1");
cript.reset();
cript.update(userPass.getBytes("utf8"));
this.password = new String(cript.digest());
我想要这样的东西 -->
aff --> "0c05aa56405c447e6678b7f3127febde5c3a9238"
而不是
aff --> �V@\D~fx����:�8
最佳答案
使用apache常用编解码库:
DigestUtils.sha1Hex("aff")
结果是 0c05aa56405c447e6678b7f3127febde5c3a9238
就是这样:)
关于Java 计算字符串的 SHA-1 摘要的十六进制表示,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4400774/