mysql—将信息存储在保密的数据库中

8tntrjer  于 2021-06-21  发布在  Mysql
关注(0)|答案(1)|浏览(298)

我正在创建一个应用程序,该应用程序将需要存储并在以后检索这些信息,以便向用户显示这些信息。此信息将被视为敏感信息,可能包括员工特定站点的临时密码。我相信我知道密码应该和它们的散列一起存储,然后您可以检查输入的散列是否与您在数据库中存储的内容匹配。
我的问题是:从伦理上讲,以纯文本的形式存储这些信息,如果不是作为一个程序员的话,充其量也只是粗略的,我认为这是非法的。如何存储此信息并在以后检索?像lastpass这样的网站可以做到这一点,但我没有创建一个密码管理器,也不是我认为我可以做到的事情,我会说,“是的,这是安全的,用户的密码永远不会被看到,除非用户”。还有什么其他方法可行呢?
我正在考虑的一些功能包括用户的登录名在x天之后或者甚至在用户被使用之后被删除,但是仍然有机会窃取这些密码。还有什么我可以包括或做不同的吗?有没有可能我可以阻止这些密码在数据库上呢?

jei2mxaa

jei2mxaa1#

这是我用来加密密码然后解密密码的代码。如果你有任何问题,请告诉我。

mysql> create table test_2(id int, password varchar(500));
Query OK, 0 rows affected (0.21 sec)

mysql> select * from test_2;
Empty set (0.00 sec)

mysql> insert into test_2 values(1,DES_ENCRYPT('abc123@##','password'));
Query OK, 1 row affected, 1 warning (0.08 sec)

mysql> select * from test_2;
+------+---------------------------+
| id   | password                  |
+------+---------------------------+
|    1 | ÿö5r¢ÍòšMÀcEL]         |
+------+---------------------------+
1 row in set (0.00 sec)

mysql> select id,DES_DECRYPT(password,'password') as real_password from test_2;
+------+---------------+
| id   | real_password |
+------+---------------+
|    1 | abc123@##     |
+------+---------------+
1 row in set, 1 warning (0.05 sec)

相关问题