diff options
author | Markus Teich <markus.teich@stusta.mhn.de> | 2016-06-22 02:05:00 +0200 |
---|---|---|
committer | Markus Teich <markus.teich@stusta.mhn.de> | 2016-06-22 02:05:00 +0200 |
commit | 965b4da7794b3fd0812907559c9434f98f4819fc (patch) | |
tree | 838c4ef500976af4ba636d04a246d4034a670819 /crypto.c | |
parent | 8d717c4b3d126104929aeb5e3a2176dd534e25ea (diff) |
smc_zkp_dl: make v an output parameter
Diffstat (limited to 'crypto.c')
-rw-r--r-- | crypto.c | 11 |
1 files changed, 7 insertions, 4 deletions
@@ -616,15 +616,15 @@ smc_compute_outcome (struct AuctionData *ad) * smc_zkp_dl creates a proof of knowledge of @a x with \f$v = xg\f$ where * \f$g\f$ is the base point on Ed25519. * - * @param[in] v input point. Must be known to the verifier. + * @param[out] v output point. Must be known to the verifier. * @param[in] x private key. Knowledge of this number is certified in the proof * @param[out] proof pointer where to save the output proof structure. Must be * shared with the verifier. */ void -smc_zkp_dl (const gcry_mpi_point_t v, - const gcry_mpi_t x, - struct proof_dl *proof) +smc_zkp_dl (gcry_mpi_point_t v, + const gcry_mpi_t x, + struct proof_dl *proof) { struct zkp_challenge_dl challenge; struct brandt_hash_code challhash; @@ -633,6 +633,9 @@ smc_zkp_dl (const gcry_mpi_point_t v, gcry_mpi_t c = gcry_mpi_new (0); gcry_mpi_t z = gcry_mpi_new (0); + /* v = xg */ + gcry_mpi_ec_mul (v, x, ec_gen, ec_ctx); + /* a = zg */ ec_keypair_create (a, z); |