如何在jQuery中加密某些内容?
我希望有通过
加密的选项
SHA1或MD5。
我该怎么做?
答案 0 :(得分:8)
function Encrypt(str) {
if (!str) str = "";
str = (str == "undefined" || str == "null") ? "" : str;
try {
var key = 146;
var pos = 0;
ostr = '';
while (pos < str.length) {
ostr = ostr + String.fromCharCode(str.charCodeAt(pos) ^ key);
pos += 1;
}
return ostr;
} catch (ex) {
return '';
}
}
function Decrypt(str) {
if (!str) str = "";
str = (str == "undefined" || str == "null") ? "" : str;
try {
var key = 146;
var pos = 0;
ostr = '';
while (pos < str.length) {
ostr = ostr + String.fromCharCode(key ^ str.charCodeAt(pos));
pos += 1;
}
return ostr;
} catch (ex) {
return '';
}
}
答案 1 :(得分:3)
答案 2 :(得分:3)
这不是问题的直接答案,而是整体方法应考虑的因素:
虽然你可以在jQuery中 ,但你应该use SSL,如果可能的话,这是一种更加安全的来回传递信息的方式如果这是你的目标,那就到服务器。
通过JavaScript加密内容但仍然以纯文本形式发送内容确实无法阻止man-in-the-middle attacks,虽然有些人认为这很少见,因为你必须控制连接中的某些点...有多少人使用第三方WiFi,咖啡馆等?拥有公共热点的任何地方都是中间人的简单游戏,只需记住一些事情。
答案 3 :(得分:0)
您可以使用此经过验证的库:http://pajhome.org.uk/crypt/md5
它不是一个jQuery插件 - 只需根据需要调用这些函数。