Hash
如何“匿名”比較兩個數據集?
好的,我希望這個問題有意義,因為我不太確定如何用不同的方式來表達它……想像一下以下情況:
- 有 10 種定義的顏色(藍色、橙色、黃色等)
- 有 2 個人,每個人都有 1 個最喜歡的,分泌顏色
- 兩個人不知道對方最喜歡的顏色,但是他們想知道他們是否有相同的顏色
我的問題:如果他們不匹配,他們如何在不將自己喜歡的顏色暴露給其他人(或其他任何人!)的情況下進行比較?
或者,用其他詞來解釋這個問題:如果他們共享相同的顏色,A 應該只知道 B 最喜歡的顏色。因此,比較的結果只能是 True 或 False。
我的第一個想法是:每個人都可以使用相同的雜湊算法(MD5、SHA 等)簡單地創建一個他們最喜歡的顏色的雜湊,然後他們可以比較這些雜湊。但顯然,這不起作用,因為很容易找出哪個雜湊屬於哪個顏色。
這種案例有解決方案嗎?任何幫助將不勝感激。
這種事情被稱為多方計算,您
應該為您的特定實例使用社會主義百萬富翁協議。
比較數據集也可以使用“順序保留加密”技術來完成