Private-Set-Intersection

在不分享我自己的情況下找出一組值

  • June 12, 2018

我有以下問題,我試圖找到一個合理的協議來解決它。

這是問題的簡化版本。

愛麗絲有一組值 $ {a_1,a_2,…,a_n} $ .

Bob 有一組值 $ {b_1,b_2,…,b_n} $ .

Alice 想知道 Bob 的哪些值等於她的值,但是 Bob 沒有學習她給他的任何輸入,Alice 也不能學習 Bob 的任何其他值。

我很欣賞一個有效的解決方案,但目前任何解決方案都比沒有好。

您正在尋找一個私有集合相交協議。

對於半誠實(遵循協議的被動對手)設置,請訪問Benny Pinkas 的首頁並閱讀那裡的論文,例如

基於OT擴展的可擴展私有集合交集

通過 Cuckoo Hashing 實現基於電路的高效 PSI

對於惡意(任意行為的主動對手)設置,請轉到Mike Rosulek 的首頁並閱讀那裡的論文,例如

通過雙重執行的惡意安全私有集交集

改進了針對惡意對手的私有集合交集

這似乎與廣告商共享電子郵件列表的方式相同。

Bob 向 Alice 發送一個雜湊值列表,她計算她的值的雜湊值並進行比較。

當然,這並不是完全隱藏的,所以如果值來自一個小的可列舉域,那麼 Alice 可以獲得 Bob 的所有值。

隨機數的串聯將處理重複的值。

引用自:https://crypto.stackexchange.com/questions/59941