如何在javascript中加密变量



我已经搜索了很长时间,但找不到加密javascript变量的方法,因为它用于密码:

function lg() {
    var input = document.getElementById("values").value;
    if (input == pass) {
        $("nil").replaceWith($("<success>" + "Success!" + "</success>"));
        sleep(4000);        
        sleep(2000);
        window.location.replace("http://google.com");
    } 
    
    else if (input == "") {
       $("nil").replaceWith($("<error>" + "Error: No input detected!" + "</error>"));
    } 
    
    else {
        $("nil").replaceWith($("<error>" + "Incorrect Password!" + "</error>"));
    }
}
var pass="test3r"; // The one I need to encrypt

我认为你不需要我的html或css作为我需要加密的javascript变量。我需要加密的变量是我的var pass

如果您的javascript在客户端运行,那么在js代码中保存密码不是最佳决定。任何用户都可以通过编辑代码跳过密码检查。

但若你们真的需要这个,我看到的唯一选项就是使用密码的散列和一些js库来创建用户输入的精确散列。

例如,如果您将使用md5哈希函数(不是很强的函数,但js中缺少实现),则您的密码哈希将看起来像a50bdfb74649a14c1f86b6d012f2caad

密码检查看起来像是如果(md5(input)==pass){。。。}

您应该阅读有关散列函数的内容,并在散列密码时使用"salt",以使解码密码更加困难。

最新更新