Cryptography
環簽名如何幫助機密交易中的範圍證明?
基於 Maxwell 的機密交易提議,環簽名可以解決範圍證明問題。我可以完全遵循 pedersen 的承諾和一切。我不太明白環簽名如何幫助範圍證明?就像我們想知道比特幣金額是否為負數,我們不想透露它。環簽名和範圍證明之間的聯繫對我來說沒有點擊。
經過大量研究和閱讀幾個不同的文件後,我找到了自己問題的答案,並認為與社區中的其他人分享它會很好。
Pedersen 對金額
a
和致盲因素的承諾x
是:C(a) = x*G + a*H
G
橢圓曲線上的生成點在哪裡,H
是每個人都同意的另一個靜態點。(其實是G
on curve的Hash圖)。為了在不洩露金額的情況下證明金額在特定範圍內,CT使用環簽名。
假設 Alice 想向 Bob 證明她的交易金額在 [0,y] 範圍內。如果 Bob 計算:
C' = C(1) - 1*H
這將等於:
x*G
如果 Alice 可以使用 x 作為私鑰進行簽名(例如使用 ECDSA),那麼她可以驗證她知道 x,因此金額實際上是 1。
但是在機密交易中,Alice 不想透露金額,所以讓我們說如果她對所有金額進行此操作,例如:
C" = c(2) - 2*H
等到 y 為止的所有金額。然後,如果 Alice 對所有這些金額進行了環簽名,那麼她基本上是在說我的金額是整個範圍內的金額之一,而沒有透露它。環簽名是一種簽名,它顯示其中一個輸入是對其進行簽名而不透露誰。
這基本上導致了範圍證明,並且愛麗絲可以通過這種方式成功地向鮑勃證明這一點,而無需透露金額。