回覆列表
  • 1 # 使用者5288353709165

    Bulletproofs 是一種非互動式零知識證明協議。特性包括:

    計算合理性(computational soundness):就是說,除非 Adv 計算能力超級超級強(隨便解ECDLP),Adv 無法偽造證明,來欺騙驗證者 V;證明大小短:6*log(n) + 13 個橢圓曲線點;不需要 trust setup;

    關鍵的一點,Bulletproofs 特別適合 Pedersen commit。以 CT 中的範圍證明為例,要證明一個 pedersen commit C = v*G + r*H 中承諾的 值 v 屬於區間 [0, 2^n),是非常容易的。一個合法的證明,只包含 2*n + 9 個橢圓曲線點。

    除此之外,Bulletproofs 還可以將多個範圍證明壓縮(聚合),這個是很突出的特點。更加重要的一點是,Bulletproofs 可以用於證明 R1CS ,也就是說,所有 zk-SNARKs 可以做的事情,它都可以做,只不過證明比 zk-SNARKs 大很多。

    R1CS 現在幾乎已經成為 zkp 領域的標準中間語言。做個類比,編譯器通常分為兩個元件,front-end 和 backend,clang可以把高階語言編譯到中間語言,然後llvm做後端最佳化。以後,前端工具負責生成 R1CS,後端具體是使用 Bulletproofs 來建立證明,還是使用 Groth16 來建立證明,都是可選的。

  • 中秋節和大豐收的關聯?
  • C羅離開皇馬後貝爾認為自己是皇馬老大,對此你怎麼看?