有什么方法可以在 Java 中生成字符串的 MD5 哈希?
网友回答:
你需要。java.security.MessageDigest
调用以获取您可以使用的 MD5 实例。MessageDigest.getInstance("MD5")
MessageDigest
通过执行以下操作之一来计算哈希:
byte[]
md.digest(bytes)
MessageDigest
byte[]
md.update(bytes)
md.digest()
返回的是 MD5 哈希。byte[]
md.digest()
网友回答:
该类可以为您提供 MD5 摘要的实例。MessageDigest
使用字符串和加密类时,请确保始终指定要用于字节表示的编码。如果您只是使用它,它将使用平台默认值。(并非所有平台都使用相同的默认值)string.getBytes()
import java.security.*;
..
byte[] bytesOfMessage = yourString.getBytes("UTF-8");
MessageDigest md = MessageDigest.getInstance("MD5");
byte[] theMD5digest = md.digest(bytesOfMessage);
如果你有很多数据,看看可以重复调用的方法。然后调用以获取生成的哈希。.update(xxx)
.digest()
网友回答:
如果你真的想把答案作为字符串而不是字节数组返回,你总是可以做这样的事情:
String plaintext = "your text here";
MessageDigest m = MessageDigest.getInstance("MD5");
m.reset();
m.update(plaintext.getBytes());
byte[] digest = m.digest();
BigInteger bigInt = new BigInteger(1,digest);
String hashtext = bigInt.toString(16);
// Now we need to zero pad it if you actually want the full 32 chars.
while(hashtext.length() < 32 ){
hashtext = "0"+hashtext;
}
模板简介:该模板名称为【有什么方法可以在 Java 中生成字符串的 MD5 哈希?】,大小是暂无信息,文档格式为.编程语言,推荐使用Sublime/Dreamweaver/HBuilder打开,作品中的图片,文字等数据均可修改,图片请在作品中选中图片替换即可,文字修改直接点击文字修改即可,您也可以新增或修改作品中的内容,该模板来自用户分享,如有侵权行为请联系网站客服处理。欢迎来懒人模板【Java】栏目查找您需要的精美模板。