【发布时间】:2012-03-05 04:06:21
【问题描述】:
长话短说,我们公司最近发生了一起入侵事件,其中我们的 MySQL 数据库被倾销并被盗。高管们现在真的很紧张,除了加强其他安全措施外,他们还打算加密数据库中的所有客户信息(电子邮件地址、家庭地址、姓名等)。
我不确定从哪里开始。我们运行一个 PHP 应用程序。显然,这会产生一些我们希望最小化的额外开销。另一个问题是在使用新加密字段的地方很难更改代码。
我觉得这是一种不必要的预防措施,但管理层似乎对此很坚定。
哪种类型的加密算法/方法最适合此用例?
【问题讨论】:
-
增强您的服务器安全性。花时间在那里。加密所有数据似乎真的很极端。推回去,西装不知道一切。
-
您的数据库访问应该被隔离到只需要对模型进行低级更改来加密数据的地步。从字面上看,您的数据层/模型/业务对象之外的任何内容都不需要更改,甚至应该知道数据是加密的。如果您因为模型的内部存储发生变化而不得不改变模型的使用方式,那么您的应用程序编写得非常糟糕。
-
@earthmeLon “盐和散列”与这个问题无关,完全。 “向它扔盐和哈希”!= 安全性,如果你不知道它是什么,你不应该建议它。
-
@earthmeLon 同样,盐和散列在这里并不适用,即使作为关键字也是如此。他不是在谈论安全地存储密码,而是在谈论使用可逆加密来存储“电子邮件地址、家庭住址、姓名”。如果您想要有用的关键字,请尝试“securing PII”。 Personally Identifiable Information 的安全存储是一项巨大的交易,在您开始存储客户数据之前就应该解决这个问题。
-
@meagar - 所以,当我访问 Facebook 的 API 并收集数千个用户的个人信息时,你的建议是非法的?您所指的 PII“法律”意味着您需要保护诸如 SSN 的 CC 信息等信息,而不是基本信息
标签: php mysql security encryption