如何使用 CryptoJs 转换为字符串并再次转换回来

2024-01-02

var encrypted = CryptoJS.AES.encrypt(jsonStr, 'youngunicornsrunfree', { format: JsonFormatter });

//convert encrypted to a string for transfer
//convert string back to Crypto object so it can be decrypted.

var decrypted = CryptoJS.AES.decrypt(encrypted, "youngunicornsrunfree", { format: JsonFormatter });

通过以上两步,效果很好。但在这之间,我需要将加密转换为字符串以便通过网络传输,然后再将其转换回来。我怎样才能做到这一点?


让我们简化一下以便能够解决问题。首先我们从这样的事情开始:

jsonStr = '{"something":"else"}';
var encrypted = CryptoJS.AES.encrypt(jsonStr, 'youngunicornsrunfree');
var decrypted = CryptoJS.AES.decrypt(encrypted, "youngunicornsrunfree");
console.log(decrypted.toString(CryptoJS.enc.Utf8));

加密然后解密后,这给了我们答案 jsonStr。但是假设我们想将其发送到服务器。我们可以通过提取加密字符串来轻松完成此操作toString()。听起来很简单吧?假设我们需要将加密的 jsonStr 发送到服务器。尝试这个

jsonStr = '{"something":"else"}';
var encrypted = CryptoJS.AES.encrypt(jsonStr, 'youngunicornsrunfree');
console.log("We send this: "+encrypted.toString());

现在假设我们之前发送了一些东西并且我们正在取回它。我们可以这样做:

var messageFromServer = "U2FsdGVkX19kyHo1s8+EwNuo/LQdL3RnSoDHU2ovA88RtyOs+PvpQ1UZssMNfflTemaMAwHDbnWagA8lQki5kQ==";
var decrypted = CryptoJS.AES.decrypt(messageFromServer, "youngunicornsrunfree");
console.log(decrypted.toString(CryptoJS.enc.Utf8));
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何使用 CryptoJs 转换为字符串并再次转换回来 的相关文章

随机推荐