1

我需要在 Google Gears Workerpool 中加密 JSON(字符串化)数据。到目前为止,我尝试的任何实现要么使 Gears Workerpool 出错,要么给我不需要的加密字符串。

例如:DES加密(因账号限制无法发布URL)

这对大多数应用程序都非常有效,除了在加密我的 JSON 之后,它会在我不想要的地方添加换行符。解密只会导致无法使用的损坏字符串。

例如:AES 加密(因账号限制无法发布 URL)

这在理论上也有效,但是一旦我将源代码粘贴到我的 Workerpool javascript 文件中,Gears Workerpool 就会给出一个模糊的错误消息。从所述 Workerpool 中删除脚本后,一切都会再次运行。

我在找什么:

一个非常简单的 javascript 加密实现,它使用密钥来加密和解密数据。使用密钥(或密码,如果你愿意的话)很重要。此外,加密典型的 JSON 字符串并解密相同的字符串应该会产生完美的结果。

这一切都非常重要,因为它涉及离线使用的医疗数据。因此,如果您对如何在 Google Gears (sqlite) 数据库中安全地存储 JSON 数据有任何其他想法,我会全力以赴!

4

2 回答 2

0

我通过一位友好的同事找到了答案。首先我应用 DES 加密,然后应用 BASE64 编码。然后将该字符串保存到数据库中。

反向解密也可以,但会导致另一个令人不安的问题。显然 3 次中有 2 次我的 JSON 突然无效,在尝试使用 javascript 的 EVAL 函数(或 JSON 的 JSON.parse 方法)解析它时,它返回一个异常:非法字符。

我会尝试解决这个问题,或者提出一个新问题;)

干杯!

于 2009-08-18T13:07:06.150 回答
0

也许这不能直接回答您的问题,但 Dojo 离线在 Dojo SQL 语法中有类似 ENCRYPT 和 DECRYPT 的内容,这可能会有所帮助。可以在这里找到它的用法

于 2009-08-18T10:31:31.560 回答