JavaScript 字符串加密和解密? [英] JavaScript string encryption and decryption?

查看:34
本文介绍了JavaScript 字符串加密和解密?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我对构建一个供个人使用的小型应用程序感兴趣,该应用程序将使用 JavaScript 在客户端加密和解密信息.加密后的信息将存储在服务器上的数据库中,但绝不会是解密后的版本.

I'm interested in building a small app for personal use that will encrypt and decrypt information on the client side using JavaScript. The encrypted information will be stored in a database on a server, but never the decrypted version.

它不必是超级安全的,但我想使用当前未破坏的算法.

It doesn't have to be super duper secure, but I would like to use a currently unbroken algorithm.

理想情况下,我可以做类似的事情

Ideally I'd be able to do something like

var gibberish = encrypt(string, salt, key);

生成编码字符串,以及类似的东西

to generate the encoded string, and something like

var sensical = decrypt(gibberish, key);

稍后解码.

到目前为止,我已经看到了这个:http://bitwiseshiftleft.github.io/sjcl/

So far I've seen this: http://bitwiseshiftleft.github.io/sjcl/

我应该看看其他图书馆吗?

Any other libraries I should look at?

推荐答案

 var encrypted = CryptoJS.AES.encrypt("Message", "Secret Passphrase");
//U2FsdGVkX18ZUVvShFSES21qHsQEqZXMxQ9zgHy+bu0=

var decrypted = CryptoJS.AES.decrypt(encrypted, "Secret Passphrase");
//4d657373616765


document.getElementById("demo1").innerHTML = encrypted;
document.getElementById("demo2").innerHTML = decrypted;
document.getElementById("demo3").innerHTML = decrypted.toString(CryptoJS.enc.Utf8);

Full working sample actually is:

    <script src="https://cdnjs.cloudflare.com/ajax/libs/crypto-js/3.1.2/rollups/aes.js" integrity="sha256-/H4YS+7aYb9kJ5OKhFYPUjSJdrtV6AeyJOtTkw6X72o=" crossorigin="anonymous"></script>

<br><br>
<label>encrypted</label>
<div id="demo1"></div>
<br>

<label>decrypted</label>
<div id="demo2"></div>

<br>
<label>Actual Message</label>
<div id="demo3"></div>

这篇关于JavaScript 字符串加密和解密?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆