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
    Dec 7, 2022 at 8:02
  • $\begingroup$ "reference", I'm so sorry for this confusion! $\endgroup$
    – Emison Lu
    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$
    – JAAAY
    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$ Dec 7, 2022 at 14:59
  • $\begingroup$ @JAAAY this only works for the common random string model AFAIK. $\endgroup$
    – Grifball
    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 that you have read and understand our privacy policy and code of conduct.

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