Commitments
這是 ROM 中的 UC 安全承諾方案嗎?
為了證明承諾方案的 UC 安全性(通用可組合安全性),我們必須證明承諾方案是可提取的和模棱兩可的。
也就是說,我們必須建構一個模擬器,該模擬器能夠提取對手破壞發送者的承諾(可提取性),並建構一個模擬器,該模擬器能夠為破壞接收者的對手打開任何東西(給定承諾(模棱兩可))。
考慮隨機預言機模型中的這種承諾方案:
- **送出階段:**發送者計算 $ c=\mathsf{RO}(M) $ 在哪裡 $ \mathsf{RO} $ 是隨機預言機和 $ M $ 要送出的消息。它發送 $ c $ 到接收器。
- **開啟階段:**發送方發送 $ M $ 到接收器。接收方檢查是否 $ c=\mathsf{RO}(M) $ .
在我看來,這個協議是 UC 安全的,因為模擬器可以控制隨機預言機。因此,它總是可以知道消息 $ M $ 通過查看對隨機預言機的呼叫。模擬器也可以打開任何消息 $ M’ $ 它想要返回 $ c $ 對未來的查詢 $ M’ $ 由對手破壞接收器。
我的問題是:
- 這個對嗎?
- 如果是這樣,那麼在 ROM 中建構 UC 承諾方案有什麼意義,例如 https://eprint.iacr.org/2014/908.pdf 和 https://link.springer.com/content/pdf/10.1007/978 -3-540-24638-1_4.pdf 因為這個協議似乎比其他協議更有效。
謝謝!
- 不,你的結構是不安全的,特別是它沒有隱藏起來。一個有猜測的接收者 $ M $ 可以簡單地檢查是否 $ H(M)=c $ 自從 $ H $ 是公開的。當對手已經查詢時,您可以看到您建議的模擬策略失敗 $ H $ 上 $ M $ 在模擬器得知承諾應該成立之前 $ M $ . 論據 $ H $ 即使以正確的猜測為條件,也應該具有高熵 $ M $ . 將構造更改為 $ H(M|r) $ 長時間隨機 $ r $ 並且您在隨機預言模型中具有標準的民間傳說承諾。
- 在 UC 模型中天真地使用隨機預言機有點像作弊。您會為每個協議實例獲得一個完全獨立的隨機預言機。對於所謂的公共對象來說,這不是一個很好的模型。您引用的那些論文試圖以一種不那麼“欺騙”的方式使用隨機預言機,因此他們的協議必須更加努力。此外,至少第一篇論文避免讓模擬器對預言機的輸出(非可程式隨機預言機模型)進行程式,這通常被視為更可口。