首先,通过ruby(我正在使用Rails),我在服务器端创建了 AES256 加密和 base64 编码的字符串。
require 'aes'
# encrypt with AES256 and encode with base64
base64 = AES.encrypt("secret word", "pass")
然后,我想在浏览器上解码这个与下面的库。
我的JavaScript代码如下。
base64encoded = $('span.base64:first').text();
encrypted = Base64.decode(base64encoded); // <- bring Error!
secretWord = CryptoJS.AES.decrypt(encrypted, "todo").toString(CryptoJS.enc.Utf8);
错误是:Uncaught Error: InvalidCharacterError: DOM Exception 5
我认为在服务器端加密时会生成浏览器的一些无效字符。请告诉我如何避免这个错误。