Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/github/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Encryption 我已经做了一个加密密码的函数,我怎样才能将其反转,以便在加密后获得真正的密码_Encryption - Fatal编程技术网

Encryption 我已经做了一个加密密码的函数,我怎样才能将其反转,以便在加密后获得真正的密码

Encryption 我已经做了一个加密密码的函数,我怎样才能将其反转,以便在加密后获得真正的密码,encryption,Encryption,这是我的加密代码,我需要反转此函数: public String encryptPassword(String input) { String encPass = null; if (input == null) return null; try { MessageDigest digest = MessageDigest.getInstance("MD5"); digest.update(input.getBytes(), 0, inp

这是我的加密代码,我需要反转此函数:

public String encryptPassword(String input) {
    String encPass = null;
    if (input == null) return null;

    try {
        MessageDigest digest = MessageDigest.getInstance("MD5");
        digest.update(input.getBytes(), 0, input.length());
        encPass = new BigInteger(1, digest.digest()).toString(16);
    } catch (Exception e) {
        e.printStackTrace();
    }
    return encPass;
}

MD5哈希算法是不可逆的,因此MD5无法在中解密。一些网站可能会提供解密,但它们是肮脏的黑客,因为它们存储并匹配大量密码的MD5加密。

MD5哈希算法是不可逆的,因此MD5不可能进行解密。有些网站可能提供解密,但它们是肮脏的黑客,因为它们存储并匹配大量密码的MD5加密。

您对密码进行了哈希处理,而不是加密。哈希被设计为不可逆的,因此您将无法从哈希中恢复原始密码。您要做的是获取用户输入的密码和MD5哈希值,然后比较哈希值。如果它们匹配,则用户输入了正确的密码。如果它们不匹配,则用户输入了错误的密码


在散列密码以获得额外的安全性之前,您可能还需要查看。尽管这意味着您必须为每个用户存储salt以及他们的哈希密码。

您已经对密码进行了哈希,而不是加密。哈希被设计为不可逆的,因此您将无法从哈希中恢复原始密码。您要做的是获取用户输入的密码和MD5哈希值,然后比较哈希值。如果它们匹配,则用户输入了正确的密码。如果它们不匹配,则用户输入了错误的密码


在散列密码以获得额外的安全性之前,您可能还需要查看。尽管这意味着您必须为每个用户存储salt以及他们的哈希密码。

MD5不是一个适合密码的哈希算法-它容易受到暴力攻击。考虑BCREPT。M5不是一个适合密码的散列算法-它容易受到蛮力攻击。考虑一下BCRIPT。值得注意的是,MD5无论如何都不适合密码——它太快了。值得注意的是MD5无论如何都不适合密码——它太快了。