每个用户存储SHA256密钥对的位置

我在 NodeJS 中有一个数据库和一个 API,我使用 Web 应用程序创建用户,每个用户都可以创建/更新/删除数据。

为了稍微保护一下,我需要加密用户的数据。所以我想要的是每次创建用户时创建一对 SHA256 公钥。

实际上我所做的是将这些密钥存储在数据库中,通过使用全局 SHA256 密钥对加密它们。

因此,简而言之,我有一对全局密钥来加密每个用户的每对特定密钥。

事实是这似乎并不安全,因为最终每个用户都有自己的加密/解密方法存储在数据库中。

例如,我可以有 2 个表:

User table :

id_user | firstname | lastname | encrypted_data
-----------------------------------------------
1       | John      | Doe      | QMwmuCMmI..
2       | Jane      | Doe      | QMwmuCMmI..
... 

Keys table :

id_user | public    | private
------------------------------
1       | MIICIjA.. | MIIJrT..    
2       | MIICIjA.. | MIIJrT.. 
...   

所以John Doe他的公钥和私钥的链接很简单。

一个问题是我不能要求用户创建一对私钥/公钥并只向我发送公共密钥,因为所有这些都需要是自动的,用户不必做任何事情。

另一个问题是应用程序应该可以在任何设备上使用,因此私钥不能存储在客户端。

以上是每个用户存储SHA256密钥对的位置的全部内容。
THE END
分享
二维码
< <上一篇
下一篇>>