【发布时间】:2017-07-18 13:19:04
【问题描述】:
我在尝试使用 SJCL 库进行简单解密时遇到问题。我可以很好地加密数据。
在这个例子中,我保存了这样的加密数据:
encdata = sjcl.encrypt($('input[name="pass"]').val(), $('textarea[name="cleartxt"]').val());
我将数据 ajax 到数据库。现在当我去解密数据时,我从我的数据库中提取 sjcl JSON 字符串并通过这个函数运行它:
function decryptdata(encdata) {
var dpassword = prompt('Decryption Password');
console.log(sjcl.decrypt(dpassword, encdata));
//$('.decrypted').html(dec);
}
我在控制台上收到以下错误,它不会超出该 sjcl.decrypt 语句。
sjcl.js:57 Uncaught TypeError: a.replace is not a function
at Object.decode (sjcl.js:57)
at Object.decrypt (sjcl.js:56)
at decryptdata (my.js:72)
at my.php?r=test:13
我肯定在这里做错了什么吗?
【问题讨论】:
-
使用HTTPS即可,无需自己加密密码。
-
他不是在加密密码,而是在加密给定的明文。输入encdata和dpassword的值后能不能输出(比如data)?
标签: javascript sjcl