我正在开发一个 wordpress 插件。在该插件中,用户需要输入一些重要的登录详细信息,我将在 cron-job 中使用这些详细信息。
我当然喜欢加密密码,并发现了这个有用的东西: 使用 PHP 加密和解密密码的最佳方法?
但是,我应该如何保存密钥?我无法将其保存在文件中,因为当用户更新插件时所有文件都将被替换。并将其保存在数据库中,好吧 - 我猜这不太聪明。
有什么建议么?
我正在开发一个 wordpress 插件。在该插件中,用户需要输入一些重要的登录详细信息,我将在 cron-job 中使用这些详细信息。
我当然喜欢加密密码,并发现了这个有用的东西: 使用 PHP 加密和解密密码的最佳方法?
但是,我应该如何保存密钥?我无法将其保存在文件中,因为当用户更新插件时所有文件都将被替换。并将其保存在数据库中,好吧 - 我猜这不太聪明。
有什么建议么?
如果您加密,您仍然必须将加密密钥存储在同一台机器上 - 只有代码混淆才能减缓攻击的发生。
在最好的情况下,只有您的数据库容易受到攻击,在这种情况下,将加密的密码存储在数据库中并将密钥存储在文件系统中并不是一个糟糕的解决方案。
最坏的情况是,系统被彻底破坏。在这种情况下,如果您必须将密钥存储在显而易见的地方,那么再多的加密也无法挽救您。混淆可能会使事情复杂化,给所有者足够的时间来保护帐户。
如果您将密钥保存在数据库表上,我认为它会更好。关于部分securing the database and making sure that the data in the table will only be accessible by the authorized person
,您可以创建第二个用户,具有访问和读取此类重要表的权限。
因此,创建一个单独的用户,该用户将有权访问表及其内容。现在,当您需要访问加密密钥和其他重要信息时,以不同的用户使用该网站并切换到管理数据库用户。