我已经搜索了很长时间,但找不到加密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",以使解码密码更加困难。