【发布时间】: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