如何解码SHA384哈希?

时间:2014-07-23 08:24:18

标签: android hash sha

我正在创建一个SHA384哈希。我想解码那个哈希。有没有办法做到这一点?请帮忙

以下是获取哈希的代码

public String getHash(String message) {
    String algorithm = "SHA384";
    String hex = "";
    try {
        byte[] buffer = message.getBytes();
        MessageDigest md = MessageDigest.getInstance(algorithm);
        md.update(buffer);
        byte[] digest = md.digest();

        for(int i = 0 ; i < digest.length ; i++) {
            int b = digest[i] & 0xff;
            if (Integer.toHexString(b).length() == 1) hex = hex + "0";
            hex  = hex + Integer.toHexString(b);
        }
        return hex;
    } catch(NoSuchAlgorithmException e) {
        e.printStackTrace();
        return null;
    }

}

1 个答案:

答案 0 :(得分:4)

密码安全散列函数是这样一种函数,即给定的任意长度输入以不可逆的方式处理成固定长度的输出(计算上不可行)。这些功能包括MD5和SHA(安全散列算法)系列(1,224,256,384,512等)。

一旦你获取输入的哈希值,就不会回到原始输入。此属性可用于验证消息完整性,因为散列相同的消息会生成相同的散列。

您访问过的网站只是并排存储哈希值及其输入,并对您的哈希值进行数据库查找,以尝试查找可能的输入(如果之前已添加到数据库中)。