2014-02-13 98 views
0

我将在SQL Server数据库中存储用户密码,我想保留加密。在运行用JavaScript编写的脚本的另一个应用程序中,我想从数据库中检索该加密的字符串并解密该字符串并使用该值。数据库加密 - Javascript解密

做这样一个工作流程有什么可能性?我可以从两端使用PGP吗?我听说一般来说JavaScript应该避免出于各种安全原因,但在目前的情况下,这不是问题。

+1

不要存储加密的密码;哈希他们。这样,没有办法获得价值,但你可以比较一些东西。我无法想象为什么你需要解密的值 – Ian

+0

我必须指出,像md5这样的大多数常见散列可以在消费者硬件上使用彩虹表实时打破......共同发行版可达13个字符,大多数用户使用较短的。 – dandavis

+1

尽管(对于任何拥有任何加密体验的人都不会感到惊讶),但仍有很多事情在哈希时可以做错。 – delnan

回答

0

我自己解决了这个问题。我使用的解决方案是在.NET中使用AES加密字符串,然后使用JavaScript中的CryptoJS库进行解密。

很好的.NET ecnryption的例子:http://www.aspsnippets.com/Articles/AES-Encryption-Decryption-Cryptography-Tutorial-with-example-in-ASPNet-using-C-and-VBNet.aspx

然后存储我只是加密的字符串是在数据库中。当我需要在使用javascript作为脚本引擎的其他应用程序中使用密码时,我使用CryptoJS来解密需要。

花了一秒钟让他们一起工作,但一旦工作成功,这对我正在尝试做的事情来说是一个很好的解决方案。