首页 > Java > 有什么方法可以在 Java 中生成字符串的 MD5 哈希?

有什么方法可以在 Java 中生成字符串的 MD5 哈希?

上一篇 下一篇

有什么方法可以在 Java 中生成字符串的 MD5 哈希?

分割线

网友回答:

你需要。java.security.MessageDigest

调用以获取您可以使用的 MD5 实例。MessageDigest.getInstance("MD5")MessageDigest

通过执行以下操作之一来计算哈希:

  • 将整个输入作为 提供,并使用 在一次操作中计算哈希。byte[]md.digest(bytes)
  • 通过调用 一次馈送一个块。添加完输入字节后,使用 计算
    哈希。
    MessageDigestbyte[]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】栏目查找您需要的精美模板。

相关搜索
  • 下载密码 lanrenmb
  • 下载次数 193次
  • 使用软件 Sublime/Dreamweaver/HBuilder
  • 文件格式 编程语言
  • 文件大小 暂无信息
  • 上传时间 03-02
  • 作者 网友投稿
  • 肖像权 人物画像及字体仅供参考
栏目分类 更多 >
热门推荐 更多 >
微信公众平台 自适应 微信素材 html5 企业网站 微信文章 单页式简历模板 微信图片 微信模板 响应式
您可能会喜欢的其他模板