【发布时间】:2016-12-25 08:10:44
【问题描述】:
我对 CRYPTO JS 加密的东西很陌生,我正在尝试将加密哈希存储在数据库中(我正在尝试存储在 firebase 数据库中)。
var hash = CryptoJS.AES.encrypt('my message', 'secret key 123');
我正在尝试将哈希变量存储在数据库中。 但是当我尝试存储时,它向我显示错误,它是功能,无法存储。
PS-我正在尝试将加密哈希存储在数据库中,并希望从数据库调用我应用程序的另一页上的加密哈希并在那里解密。
这可能吗?如果是,那么请告诉我如何。 谢谢
【问题讨论】:
-
嗨 m03a3a17,欢迎来到 Stack Overflow。如果您在运行代码时遇到错误,那么您需要在问题中显示该错误;否则任何人都很难确切知道出了什么问题。
-
好的,伙计...谢谢..我下次试试....顺便说一句,你认为我问的问题很好
-
AES 是一种加密算法(可逆)而不是散列函数(不可逆)。请不要混淆他们。密码必须经过哈希处理,但单个哈希是不够的,因为攻击者拥有快速的密码哈希机器。您需要反复对其进行哈希处理。用于此的函数类似于 CryptoJS 支持的 PBKDF2。由于散列函数是单向函数,因此您将无法“解密”散列。为了验证您的用户,您可以再次通过哈希函数运行密码,以便与存储在数据库中的哈希值进行比较。
-
非常感谢..你几乎让我明白了这个概念
标签: javascript encryption hash firebase cryptojs