Zero-Knowledge-Proofs
如何在不透露身份的情況下證明我是列表的一部分?
讓我們在身份驗證步驟假設一個秘密投票方案。
注意事項:
- 有一個公開的能夠投票的人的身份列表(例如,居住在某個城鎮的人)。
- 身份確認過程委託給中央伺服器(Bob)。
- 使用者遠端和分散地發送請求(例如,使用他們各自的設備)。
- 這個想法是永遠不會通過通信通道發送 ID。
- 沒有特定的 ID 方法,可以是執行任務、數字簽名等的任何方法……
需要滿足的條件
- 愛麗絲(選民)必須向鮑勃證明她在該名單上,但不透露她的身份。
- Bob(伺服器)必須確保不在列表中的任何人都無法訪問投票。
這個問題怎麼稱呼?解決方案的實際例子是什麼?
PD:投票執行過程在這個問題中並不重要,它只處理身份驗證。
解決您的問題的方案稱為集合成員資格的零知識證明
集合成員資格的 ZKP 使用累加器。Crypto++ 庫提供了累加器的實現
“這個問題怎麼稱呼,解決方案的實際例子是什麼?”
在:具有可驗証投票權的匿名投票
編輯:看到此相關頁面:並想添加此文件,位於:如何在不洩露憑據的情況下實現身份驗證 https://eprint.iacr.org/2007/384.pdf
我想它是相關的,它確實聽起來像你所要求的(一個實際的例子)