Zero-Knowledge-Proofs

這是我發出聲音的範圍證明嗎?

  • September 1, 2020

所以證明一個價值 $ v $ 在範圍內 $ [0,2n−1] $ 我們說服驗證者 $ v $ 由二進制向量表示 $ a∈{0,1}^n $ 以便 $ <a,2n>=v $

$ // $ $ 2n∈Zn $ 是冪的向量 $ 2 $ 附上 $ 2n={2^0,2^1,2^2,,,,,2^n} $

我們有 $ r∈Zn $ 用於致盲的隨機向量

我們還有 $ G $ 一個橢圓曲線發生器和 $ A,R1,R2,R3,R4,V $ 是橢圓曲線點,使得 :

$ A=<a,1>G,R1=<r,1>G,R2=<2n,r>G,R3=<a,r>G,R4=<r,r>G $ 和 $ V=vG $

// 舉個例子 $ R3 $ 等於 : $ R3=(a_1*r_1+a_2∗r_2….+a_n∗r_n)G $

證明是這樣的:

$ - $ 證明發送 $ A,R1,R2,R3,R4 $ 給驗證者

$ - $ 驗證者發回一個挑戰: $ x $

$ - $ prouver 計算並發送:

$ fx=xa+r $

$ - $ 驗證者驗證:

$ <fx,1>G=?=xA+R1 $ $ // $ 檢查 $ fx $ 正確建構

$ <fx,fx>G=?=x^2A+xR3+R4 $ $ // $ 檢查 $ a $ 是二元向量,因為二元向量是唯一的向量 $ <a,a>=<a,1> $

$ <fx,2n>G=?=xV+R2 $ $ // $ 檢查 $ <a,2n>=v $

這是聲音嗎?我是初學者所以可能不是

謝謝,如果有什麼不清楚的地方請告訴我

如果您使用語法 $ <a, b> $ 表示內積,然後假設您做出:

二元向量是唯一的向量 $ <a,a>=<a,1> $

是不正確的。在環上是正確的 $ \mathbb{Z} $ ,但是我們不在整數中,我們在有限域中。

有限域中的反例很容易找到;例如,在 $ GF(11) $ (僅僅因為它足夠大以至於不平凡,但又足夠小以使計算變得容易),我們發現對於 $ a = { 2, 5 } $ , 我們有:

$$ <a, a> = 2 \cdot 2 + 5 \cdot 5 = 4 + 3 = 7 $$

$$ <a, 1> = 2 \cdot 1 + 5 \cdot 1 = 2 + 5 = 7 $$

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