【问题标题】:Encrypt data to hide them to web hosting provider加密数据以将其隐藏给网络托管服务提供商
【发布时间】:2015-12-21 03:27:50
【问题描述】:

我有一个 Web 应用程序,其中注册用户在几个表单中输入数据,然后,当他们稍后登录时,他们会看到填充了他们的数据的表单。数据存储在 Web 服务器的同一托管服务提供商的 Postgresql 服务器上。

我想加密存储在 Postgresql 上的数据,以防止它们被托管服务提供商读取。

我认为这是不可能的,因为无论何时保存加密密钥,如果网络服务器必须访问它以便为用户提供页面,那么它可以使用它来解密数据以读取它们。无论如何,我更愿意问只是为了确保我没有遗漏什么。

【问题讨论】:

  • 您需要为此进行端到端加密。试试 zerodb

标签: postgresql encryption web hosting


【解决方案1】:

您可以对放入数据库的每条数据进行加密,但对于大多数应用程序来说这是不切实际的 - 速度慢而且非常不方便。

更好的选择是对 PostgreSQL 数据目录使用 dm-crypt 加密块设备。它对数据库是透明的,所以所有功能都可以正常工作。

但是您必须将加密密钥保存在数据库服务器文件系统中的某个位置,否则您的服务器将无法在没有交互的情况下启动。因此恶意托管服务提供商仍然可以访问您的所有数据。即使您不将密钥存储在文件系统中并在挂载数据卷时自行键入,那么密钥也必须驻留在服务器内存中,因此恶意托管服务提供商仍然可以读取它。

您无能为力 - 您必须在一定程度上信任您的托管服务提供商。你只能让恶意的人活得更难一点。

【讨论】:

  • 感谢您的回答。实际上,这不仅与信任托管服务提供商有关,还与遵守隐私法有关。如果我的用户正在插入关于其他人(例如他们的客户)的敏感数据,并且我承诺不泄露这些数据,那么我不应该将它们暴露给我的托管服务提供商。就我而言,我依赖于 IBM Bluemix 和他们的 PostgreSQL 服务,所以我认为我什至无法为数据库数据目录实现一个 dm-crypt 设备(为了向他们隐藏数据是值得的) .
猜你喜欢
  • 1970-01-01
  • 2018-08-16
  • 2020-05-03
  • 2014-01-30
  • 2013-11-24
  • 2018-04-11
  • 2021-12-03
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多