2

我想知道是否有人知道一个快速库或一些基本上可以做到这一点的解决方案。

code({ json: 1 }) -> codedsecret

decode(codedSecret) -> { json: 1 }

基本上,我正在寻找一种将 JSON 转换为大多数人出于安全原因无法理解的编码字符串的方法。

4

1 回答 1

6

如果“大多数人”是指非偷偷摸摸的开发人员,那么 base64 可能就足够了。现代浏览器应该实现btoaatob(两个方向),但是如果你需要更多的兼容性,那里有库。

var secret = btoa(JSON.stringify({json: 1}));
JSON.parse(atob(secret)); // {json: 1}

这根本不提供加密安全性,并且很容易被能够识别甚至解码 base64 字符串的开发人员破解。如果您需要涵盖这两种情况,那么您需要在与客户端通信之前考虑在服务器端进行加密,反之亦然。JavaScript 有 OpenSSL 实现,但我不确定我对它们的信任程度。

于 2013-04-03T23:32:06.767 回答