我正在处理一个处理个人数据的数据集(即处理人的数据,而不是[必然]私人数据)......这些数据会随着时间的推移而变化,而且格式是由客户强加的。我需要一些东西作为主键使用,不幸的是,唯一识别一个人并且不会无法预测地改变的唯一字段是SSN。 ID号(主键)将面向公众,因此我无法发布,但我希望能够掩盖它。
是否有适合此的数字密码?
我是否因为尝试这个而疯狂?
答案 0 :(得分:2)
社会安全号码长度为九位数,这意味着只有10^9 = 1,000,000,000
个唯一的SSN。您在SSN上执行的大多数操作都可以强制执行,因此我建议您只为每个SSN分配唯一的随机25位数字。随机的25位数字是您的公共ID,每对之间的关系是完全私密的。
随机密钥不依赖于它所分配的数据,因此无法从输出中检索输入(如果您将其视为函数)。
答案 1 :(得分:2)
Format perserving encryption听起来像是解决问题的方法。在SSN上使用它,然后您只需要一些随机的10位数字,您可以填写所需的25位数字。如果你正确填充,你甚至可以反转它(如果你有密钥)。关键是在运行格式持久加密后,您的数据不敏感。