1

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

我看到以下弱点:

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

和明显的解决方案:

  1. 在客户端加密和解密(在 JavaScript 或 Java 小程序中),服务器仅使用已加密的数据进行操作。
  2. 使用 HTTPS。
  3. 见§1。

有没有更好的想法和已知的良好实现,包括。有什么框架吗?

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

4

3 回答 3

1

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

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

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

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

于 2010-05-22T23:23:54.450 回答
0

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

其他一切都可能将您的敏感数据暴露给主机。

于 2010-05-22T23:25:54.330 回答
0

我认为您永远不能信任共享主机。他们可以随意访问并查看它,但这不太可能/不应该这样做,但是您肯定已经面临共享数据的风险。

不过,在编码部分,您应该注意安全问题,例如sql 注入和使用某种加密算法存储密码。

于 2010-05-22T23:19:42.177 回答