【问题标题】:How to Decode MD5 String in Android? [closed]如何在 Android 中解码 MD5 字符串? [关闭]
【发布时间】:2016-07-05 04:34:57
【问题描述】:

我正在使用此代码对 MD5 进行编码。请告诉我如何解码。

public static final String md5(final String toEncrypt) {
    try {
        final MessageDigest digest = MessageDigest.getInstance("md5");
        digest.update(toEncrypt.getBytes());
        final byte[] bytes = digest.digest();
        final StringBuilder sb = new StringBuilder();
        for (int i = 0; i < bytes.length; i++) {
            sb.append(String.format("%02X", bytes[i]));
        }
        return sb.toString().toLowerCase();
    } catch (Exception exc) {
        return ""; // Impossibru!
    }
}

【问题讨论】:

  • MD5 不是“编码”,您不能“解码”它。了解单向哈希。
  • MD5 是单一入口点,我们无法解密。
  • 更新了 Wikipedia 页面以反映 MD5 是一种单向函数,它既不是加密也不是编码。除了暴力攻击之外,它无法逆转。

标签: java android md5 decode encode


【解决方案1】:

你不能。 MD5 不是加密算法,它是一种散列算法,这意味着您可以将其还原为原始字符串。实际上,由于这方面的冲突风险并不低,甚至有多个源字符串对应同一个 MD5 哈希。

【讨论】:

  • 还有其他的字符串加解密解决方案吗?
  • 很多。用谷歌搜索一下...
  • @LaurentS。谷歌把我们带到这里:(
猜你喜欢
  • 2012-01-13
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-01-06
  • 1970-01-01
  • 1970-01-01
  • 2015-06-25
相关资源
最近更新 更多