将解密密钥存储在reactjs中的哪里?

时间:2019-11-06 05:53:48

标签: reactjs encryption aes cryptojs

我正在开发react应用,该应用会根据用户响应获取API。 API响应已加密,在制作任何API之前,我都会获得解密密钥(通过安全方法)。

我需要存储解密密钥,以便可以每次解密API响应。 目前,我将解密密钥存储在组件状态中。 任何使用react-dev工具的人都可以很容易地看到它

我不需要在本地存储解密,这在用户登录时会发生很大变化。

2 个答案:

答案 0 :(得分:-1)

密钥需要存储在httpOnly cookie中,这是一种特殊的cookie,仅通过HTTP请求发送到服务器,并且永远无法从浏览器中运行的JavaScript进行访问(读取或写入)。

顺便说一下,这也是JWT令牌验证的工作方式。因此,您可以使用相同的机制。

PS:忽略我之前的评论,我只是想给您一个替代方案,而无需考虑

答案 1 :(得分:-1)

我认为您可以使用Cookie来存储您的解密密钥,但是现在这是您需要持久保存cookie或使其可用于会话的选择。

您可以使用cookie-encryption

对cookie进行加密

希望这会有所帮助!