@@ -65,7 +65,6 @@ Before any voting will start an initial setup procedure should be performed.
6565* As most of the crypto algorithms are group dependent
6666 (more about this you can read in [ appendix A] ( #a-group-definition ) ),
6767 it is needed to specifically define which cryptographically secure group would be used.
68- * Define a hash function which will be used by the underlying crypto algorithms.
6968* Define a commitment key $ck$,
7069 which will be used during the voter proof generation and verification procedures.
7170
@@ -502,7 +501,7 @@ To compute it, prover needs to perform the next steps:
502501 * $A_l = g^{i_l * \beta_l} \circ ck^{\delta_l}, A_l \in \mathbb{G}$.
5035025 . Calculate a first verifier challenge
504503 $ch_1 = H(ck, pk, \{ c_j\} , \{ I_l\} , \{ B_l\} , \{ A_l\} )$,
505- where $H$ is a hash function,
504+ where $H$ is [ BLAKE2b-512 ] hash function,
506505 $j \in [ 0, \ldots, N-1] $
507506 and $l \in [ 0, \ldots, log_2(N)-1] $.
5085076 . For $j \in [ 0, \ldots, N-1] $ calculate polynomials
@@ -518,7 +517,7 @@ To compute it, prover needs to perform the next steps:
518517 and $p_ {j,l}$ - corresponding coefficients of the polynomial $p_j(x)$ calculated on step ` 7 ` .
5195189 . Calculate a second verifier challenge
520519 $ch_2 = H(ch_1, \{ D_l\} )$,
521- where $H$ is a hash function
520+ where $H$ is [ BLAKE2b-512 ] hash function
522521 and $l \in [ 0, \ldots, log_2(N)-1] $.
52352210 . For $l \in [ 0, \ldots, log_2(N)-1] $ calculate:
524523 * $z_l = i_l * ch_2 + \beta_l, z_l \in \mathbb{Z}_ q$.
@@ -558,12 +557,12 @@ verifier needs to perform the next steps:
558557 So the resulted $\mathbf{c} = (c_1, \ldots, c_M, \{ c_j\} )$.
5595582 . Calculate the first verifier challenge
560559 $ch_1 = H(ck, pk, \{ c_j\} , \{ I_l\} , \{ B_l\} , \{ A_l\} )$,
561- where $H$ is a hash function,
560+ where $H$ is [ BLAKE2b-512 ] hash function,
562561 $j \in [ 0, \ldots, N-1] $
563562 and $l \in [ 0, \ldots, log_2(N)-1] $.
5645633 . Calculate a second verifier challenge
565564 $ch_2 = H(ch_1, \{ D_l\} )$,
566- where $H$ is a hash function
565+ where $H$ is [ BLAKE2b-512 ] hash function
567566 and $l \in [ 0, \ldots, log_2(N)-1] $.
5685674 . For $l \in [ 0, \ldots, log_2(N)-1] $ verify that the following statements are ` true ` ,
569568 where $g$ is the group generator:
@@ -683,3 +682,4 @@ If step `6` returns `true` so the final result is `true` otherwise return `false
683682[ treasury_system_paper ] : https://eprint.iacr.org/2018/435.pdf
684683[ treasury_system_spec ] : https://github.com/input-output-hk/treasury-crypto/blob/master/docs/voting_protocol_spec/Treasury_voting_protocol_spec.pdf
685684[ crypto_book ] : https://gnanavelrec.wordpress.com/wp-content/uploads/2019/06/2.understanding-cryptography-by-christof-paar-.pdf
685+ [ BLAKE2b-512 ] : https://www.blake2.net/blake2.pdf
0 commit comments