Traditionally, I think that implementing the CRS (common reference string) model in the real world is usually through a trusted third party or running a distributed protocol. Are there specific papers on this that I can refer to? Thanks a lot!

  • $\begingroup$ Does the R in your question stand for "random" or "reference"? $\endgroup$
    – Maeher
    Commented Dec 7, 2022 at 8:02
  • $\begingroup$ "reference", I'm so sorry for this confusion! $\endgroup$
    – Emison Lu
    Commented Dec 7, 2022 at 8:12
  • $\begingroup$ I think Diffie Hellman is a trivial example it can be extended to Multi Party Diffie Hellman but it doesn't have good efficiency. $\endgroup$
    – tur11ng
    Commented Dec 7, 2022 at 12:11
  • 1
    $\begingroup$ Depending on the type of setup needed, Multiparty computation (MPC) can help. For example, see how ZCash ([z.cash/technology/paramgen) went at it (including further "defense in-depth" mechanisms). $\endgroup$ Commented Dec 7, 2022 at 14:59
  • $\begingroup$ @JAAAY this only works for the common random string model AFAIK. $\endgroup$
    – Grifball
    Commented Dec 12, 2022 at 18:27

1 Answer 1


You are correct: CRS can be realized by a set of trusted parties.

To my knowledge, the closest reference to a practical solution to a CRS is the one that Zerocash uses, and that we can read from: Updatable and Universal Common Reference Strings with Applications to zk-SNARKs.

A similar construction is the correlated randomness setting, an excellent reading about the last one is this On the Power of Correlated Randomness in Secure Computation.


Your Answer

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

Not the answer you're looking for? Browse other questions tagged or ask your own question.