数据库中加密数据的数据挖掘

时间:2011-11-04 17:16:37

标签: encryption data-mining server-side sensitive-data

我有兴趣做一个数据挖掘网站。 DB中的数据非常敏感。

我想找到一种方法来加密数据库中的数据并向我的客户证明即使是我,我也无法读取数据。

问题是,我可以在服务器端夜间“批量”搜索,我的软件必须能够清楚地读取数据。

你有什么想法吗?

4 个答案:

答案 0 :(得分:1)

您尚未描述您在报告方面需要完成的工作。有许多方法可以对加密数据进行计算。我建议你从这两种方法开始。

  1. 查看书籍Translucent Databases 2nd Edition by Peter Wayner。引用Wayner,“这本书的目的仍然是帮助世界建立能够回答有用问题的数据库而不保留任何有用的信息。这些例子表明大多数数据库不需要填充世界的秘密和个人信息。如果客户使用适当数量的加密,数据库不需要危险一站式购买身份窃贼和其他恶意的人。“

  2. 如果您拥有加密博士学位并且有几十亿个周期需要刻录,那么您应该阅读Homomorphic Encryption

答案 1 :(得分:0)

您应该考虑最基本的数据加密:RSA。 谷歌这个,直截了当,加密有两个关键,一个是公钥,另一个是私钥。让我们知道这对您有何影响。

答案 2 :(得分:0)

无法解密数据,但你的软件可以做到这一点,只要你能控制你的软件。

某处需要成为密钥,因此软件可以解密数据,如果软件在您可以访问的计算机上运行,​​则可以获取密钥。没办法解决这个问题。

您的客户要么必须信任您不对数据做任何恶意的事情,要么他们必须自己(或使用其他服务)进行处理。

可能有一些方法可以使用同态加密(即,对enc(f1(a,b)) = f2(enc(a), enc(b))f1这两个函数f2 {{1}},但这只适用于一些非常有限的操作,专门用于支持此功能的加密方案,很可能不适用于需要“数据挖掘”的内容。

答案 3 :(得分:0)

正如@ vy32 Homomorphic Encryption所提到的那样提供了理论上的方法,但今天它并不实用。

请求 anonymized 而不是加密数据呢?

例如,您不需要客户名称或国家ID来区分它们 - 匿名ID可以。另一个例子:某些数据值可以进行哈希处理,这样您就可以区分不同的实体而不是它们是什么。数值可以作为一个订单给出,这样您就知道每一对都是更大的,而不是精确的数量。与大多数应用程序中的个人名称无关的字段可以简单地省略。

有一大堆专门用于匿名化的工作,以及专门用于匿名数据集的去匿名化的另一部分工作,但是你可以通过一些简单的转换获得很长的路要走。