【问题标题】:How to secure a private key used by a web server to decrypt string store in a db?如何保护 Web 服务器使用的私钥来解密数据库中的字符串存储?
【发布时间】:2021-02-19 05:55:34
【问题描述】:

我正在开发一个小型应用程序,它可以帮助用户轻松地从他们的 isp 提供商处获取信息,方法是取消他们的 isp 帐户页面。为此,我需要将他们的用户名和密码存储在我的数据库中。为了保证他们的密码安全,我将使用 openssl 公钥在我的数据库中对其进行编码,并在我的爬虫登录到他们的帐户页面之前使用私钥对其进行解码。

我想知道将我的私钥放在哪里,这样即使有人控制了我的网络服务器,密码也是安全的?因为将私钥留在网络服务器上是完全不合适的......

tks

【问题讨论】:

    标签: encryption-asymmetric


    【解决方案1】:

    如果有人完全控制了您的服务器并且对这些密码感兴趣,他就会成功。始终考虑到这一点,并制定在这种情况下该怎么做的计划。

    现在,为了使实现这一点尽可能困难和不可能,我建议将密钥(或者更好的是密码)存储在某种内存表中:就像 Ramdisk,一个只给出一个密码的脚本每分钟,如果调用超过此等,则自行删除。

    我没有看到在这里使用公钥加密有什么积极作用,无论你使用什么,解密的密钥都必须存储在服务器上。您可能会寻找描述 https 证书问题的 Howto,它们应该受密码保护,并且必须在服务器启动时阅读 - 问题是相关的。

    可能一个好的解决方案是登录服务器,将密码文件存储在 ramdisk 中并注销。重复服务器重启、崩溃或密码更改。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2019-12-15
      • 1970-01-01
      • 2015-11-02
      • 1970-01-01
      • 1970-01-01
      • 2011-06-17
      • 2014-12-14
      相关资源
      最近更新 更多