【发布时间】:2014-02-15 19:09:25
【问题描述】:
给定两个列表:
A公司:
user1@example.com
user2@example.com
user3@example.com
user4@example.com
B公司:
user2@example.com
user4@example.com
user5@example.com
有没有办法匿名比较它们以获得共同的电子邮件地址数量(即 2 个),而无需任何一家公司知道哪些地址是共同的?
背景:
假设公司 A 和公司 B 想知道他们的用户群的哪一部分是共同的。为简单起见,他们只是将其基于电子邮件地址,而不关心使用多个地址或不同地址变体的人(user+misc@example.com)。
为了保护隐私,两家公司都不能向对方提供电子邮件地址的简单列表。如果他们使用相同的简单哈希,例如MD5,每个公司都可以很容易地知道哪些成员是共同的(不需要)。如果他们使用带有公司特定秘密的哈希值,则地址将不再具有可比性,因此无法回答问题。
是否有一些使用密钥加密或其他数学方法来完成我想要做的事情的技巧?
【问题讨论】:
-
你可以雇佣第三者 :-) [不是开玩笑,这就是 CA 的全部内容]
-
如果 2 家公司还没有准备好分享详细信息,他们如何与第 3 方分享,这可能会通过获取两者的详细信息而受益,如果对第 3 方没有用处,它甚至可以传播它们在市场上造福他人?
-
感谢其他不被接受的答案和 cmet 通过让第三方进行比较来减少技术问题。这绝对是一种可行的方法,但它可能会导致额外的业务方面的复杂性。 Razvan 的答案是我在技术方面所寻找的。谢谢!
标签: email hash comparison