存储在第三方托管的MySQL服务器中加密的机密数据的最佳做法是什么?

时间:2010-05-22 23:14:39

标签: php mysql security hosting privacy

我正在开发(作为PHP 5.2 + MySQL应用程序)我自己的个人信息管理器Web应用程序,它旨在托管在共享主机(如bluehost或dreamhost)上,并存储大量非常机密的个人数据,包括密码,个人私钥,财务详情,联系人等。如何最好地保护这些数据?

我看到了以下的弱点:

  1. 黑客或托管管理员对主机的物理访问。
  2. 在主机和客户端之间嗅探解密数据。
  3. 在主机实际发送之前嗅探主机上的解密数据。
  4. 明显的解决方案:

    1. 在客户端(在JavaScript或Java小程序中)加密和解密,服务器仅使用已加密的数据进行操作。
    2. 使用HTTPS。
    3. 见§1。
    4. 是否有更好的想法和已知的良好实施,包括。那里有任何框架吗?

      我对以下语言感兴趣:PHP(5.3或5.2),Ruby,C#4,JavsScript(Firefox 3.7),Java(1.6)。

3 个答案:

答案 0 :(得分:1)

据我所知,你在这里没有太多选择:

  • 使用操作系统本机解决方案(如果有)。 GNU / linux有一些东西。

  • 使用第三方解决方案。一个我 最了解的是Gazzang

但是您不应该将您的设置限制为这些解决方案中的一个。安全性不仅仅是加密数据文件。您还应该注意谁可以访问您的数据库服务器等。

答案 1 :(得分:0)

我认为您永远不能信任共享主机。他们可以访问它并按照他们的自由意愿查看,但这不太可能/应该完成,但是您肯定有共享数据的风险 已经

编码 部分,您应该注意安全问题,例如 sql injection 并使用某种加密算法存储密码。< / p>

答案 2 :(得分:0)

如果您不信任您的主机,则必须使用本地计算机上的强密码加密敏感数据,并仅将密码存储在主机的数据库中。

其他所有内容都可能会将您的敏感数据暴露给主机。

相关问题