1

我正在开发一个离线 SPA 应用程序(它显然只使用本地文件),它具有我的主要数据、大量字符串,存储在与页面一起加载的 js 文件中。数据为 UTF8(高棉)。我正在寻找一种创建密码的方法,以便文本可以相对安全地存储在这个 js 文件的数组中。然后,我需要使用用户无法通过查看 js 源代码“破解”的算法即时解密字符串,即我需要隐藏算法。我知道这是一个广泛的问题,但是看到我正在离线工作,我无法使用 js 访问本地文件(可以很容易地加密)。谢谢你的帮助。

4

3 回答 3

1

使用您喜欢的任何密钥和算法加密数据。使用众多的混淆器之一来混淆你的 js 代码。

请注意,任何可以阅读 js 代码并可以运行美化脚本的人都将能够弄清楚您在做什么并自己提取数据,但这仅是您仅使用软件所能获得的。

如果您将密钥存储在异地(即您自己的服务器),而客户端在运行时请求并检索该密钥,则攻击者可能会遇到额外的障碍。攻击者可以使用数据包嗅探器轻松找到密钥并打开程序,但这是“安全性不值得我花时间”的额外步骤。

于 2012-09-12T08:52:26.687 回答
0

您不能隐藏密钥,但可以要求用户输入密码。从那里开始,您可以使用加密库来解密您的数据。例如:

于 2012-09-12T08:46:34.317 回答
0

您可以使用javascriptobfuscatorthis之类的工具使您的代码不可读。

它不安全,但它会为您争取几分钟,直到攻击者对其进行解码。

于 2012-09-12T09:01:33.113 回答