1

我的 APNS 服务器需要管理多个 p12 证书/密码才能发送通知。

我正在使用 Mysql DB 来存储 p12 二进制数据和密码。密码目前是纯文本......这是一个安全问题......

在尝试发送通知时,存储此密码以便能够将其与“解码版本”一起使用的最佳解决方案是什么

4

1 回答 1

1

双向加密总是很棘手,并且在某些时候总是需要权衡取舍。我认为一个合理的解决方案可能是:

  • 使用众所周知的加密算法存储密码。不要发明你自己的。
  • 将解密密钥存储在服务器上的文件中。它不必与存储密码的数据库所在的服务器相同。不要密钥存储在 PHP 中。当然,您必须采取最大的预防措施来保护解密文件。

一些选择/替代方案:

  • 您可以更进一步,每隔几个小时更改一次证书和数据库中的所有加密密钥。如果有人试图蛮力,这可能会在他们意识到你在做什么之前为你争取时间
  • 使用存储在不同机器上的多个解密密钥。如果一台机器被入侵并且数据库被盗,没有所有的解密密钥,那么数据库就一文不值。当然,如果你所有的机器都被入侵了,你就会遇到更大的问题。
于 2013-08-07T21:37:40.167 回答