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$– MaeherDec 7, 2022 at 8:02
-
$\begingroup$ "reference", I'm so sorry for this confusion! $\endgroup$– Emison LuDec 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$– JAAAYDec 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$– Marc IlungaDec 7, 2022 at 14:59
-
$\begingroup$ @JAAAY this only works for the common random string model AFAIK. $\endgroup$– GrifballDec 12, 2022 at 18:27
1 Answer
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.