zk-SNARKs, Zk-STARKs and BulletProofs are three major zero knowledge proofs to provide privacy for the blockchain technology.

If we can compare them,

(1) Bulletproofs and Zk-STARKs require no trusted setup.

Unlike zk-SNARKs that requires a trusted setup that creates an uncomfortable situation for it.

(2) Zcash using zk-SNARKs can hide amount address along with sender and recipient.

It is not yet clear to me if it is possible to hide sender and recipient by Bulletproofs and Zk-STARKs.

(3) Apparently, Zk-STARKs is faster than zk-SNARKs is faster than Bulletproofs.

(4) Bulletproofs is shorter than zk-SNARKs and Zk-STARKs.

In general, what are the main differences (advantages and disadvantages) between these 3 main zero knowledge proofs techniques ?

Note: The references are used for the above comparisons:




Note 1: The following article compares SNARKs with STARKs: https://medium.com/coinmonks/zk-starks-create-verifiable-trust-even-against-quantum-computers-dd9c6a2bb13d

Note 2: I compared zk-SNARKs vs. Zk-STARKs vs. BulletProofs in following figure. Any comment on this comparison is appreciated:

enter image description here

  • can you provide references to your comparisons?
    – ranchalp
    Sep 20, 2018 at 13:29
  • 1
    have been added.
    – Questioner
    Sep 20, 2018 at 13:39
  • 2
    Overall comment: it's hard to make absolute statements about speed and size, as they are problem-size specific. For example, zk-SNARKs have a constant size that is independent of the complexity of the statement being proven, while Bulletproofs scale logarithmically with the complexity. Similar for verification time, Bulletproofs will be faster than zk-SNARKs for simple statements, but slower for complex statements. Nov 12, 2018 at 18:04
  • @Pieter Wuille , Thank you, so , according to your statement, I may conclude zk-sNarks could be more appropriate for more complex statements (for both size and speed) but Bulletproofs are more appropriate for simpler statements (for both size and speed). We also consider need for trusted setup by zk-sNarks. If we could put zk-sTarks as well in this comparison, it would be more complete. Thanks
    – Questioner
    Nov 13, 2018 at 20:30


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.