[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[GNUnet-SVN] [gnunet] branch master updated: mystery solved?
From: |
gnunet |
Subject: |
[GNUnet-SVN] [gnunet] branch master updated: mystery solved? |
Date: |
Thu, 14 Feb 2019 11:01:01 +0100 |
This is an automated email from the git hooks/post-receive script.
grothoff pushed a commit to branch master
in repository gnunet.
The following commit(s) were added to refs/heads/master by this push:
new 7ab593ff4 mystery solved?
7ab593ff4 is described below
commit 7ab593ff491129df2e4d438e39a182f3bd96ba47
Author: Christian Grothoff <address@hidden>
AuthorDate: Thu Feb 14 11:00:59 2019 +0100
mystery solved?
---
src/secretsharing/gnunet-service-secretsharing.c | 35 ++++++++++++++++--------
1 file changed, 23 insertions(+), 12 deletions(-)
diff --git a/src/secretsharing/gnunet-service-secretsharing.c
b/src/secretsharing/gnunet-service-secretsharing.c
index e423217f2..011e79b27 100644
--- a/src/secretsharing/gnunet-service-secretsharing.c
+++ b/src/secretsharing/gnunet-service-secretsharing.c
@@ -984,7 +984,8 @@ restore_fair (const struct GNUNET_CRYPTO_PaillierPublicKey
*ppub,
static void
-get_fair_encryption_challenge (const struct
GNUNET_SECRETSHARING_FairEncryption *fe, gcry_mpi_t e)
+get_fair_encryption_challenge (const struct
GNUNET_SECRETSHARING_FairEncryption *fe,
+ gcry_mpi_t *e)
{
struct {
struct GNUNET_CRYPTO_PaillierCiphertext c;
@@ -1004,13 +1005,17 @@ get_fair_encryption_challenge (const struct
GNUNET_SECRETSHARING_FairEncryption
GNUNET_CRYPTO_hash (&hash_data,
sizeof (hash_data),
&e_hash);
- GNUNET_CRYPTO_mpi_scan_unsigned (&e, &e_hash, sizeof (struct
GNUNET_HashCode));
- gcry_mpi_mod (e, e, elgamal_q);
+ /* This allocates "e" */
+ GNUNET_CRYPTO_mpi_scan_unsigned (e,
+ &e_hash,
+ sizeof (struct GNUNET_HashCode));
+ gcry_mpi_mod (*e, *e, elgamal_q);
}
static int
-verify_fair (const struct GNUNET_CRYPTO_PaillierPublicKey *ppub, const struct
GNUNET_SECRETSHARING_FairEncryption *fe)
+verify_fair (const struct GNUNET_CRYPTO_PaillierPublicKey *ppub,
+ const struct GNUNET_SECRETSHARING_FairEncryption *fe)
{
gcry_mpi_t n;
gcry_mpi_t n_sq;
@@ -1028,11 +1033,13 @@ verify_fair (const struct
GNUNET_CRYPTO_PaillierPublicKey *ppub, const struct GN
GNUNET_assert (NULL != (n_sq = gcry_mpi_new (0)));
GNUNET_assert (NULL != (tmp1 = gcry_mpi_new (0)));
GNUNET_assert (NULL != (tmp2 = gcry_mpi_new (0)));
- GNUNET_assert (NULL != (e = gcry_mpi_new (0)));
- get_fair_encryption_challenge (fe, e);
+ get_fair_encryption_challenge (fe,
+ &e /* this allocates e */);
- GNUNET_CRYPTO_mpi_scan_unsigned (&n, ppub, sizeof (struct
GNUNET_CRYPTO_PaillierPublicKey));
+ GNUNET_CRYPTO_mpi_scan_unsigned (&n,
+ ppub,
+ sizeof (struct
GNUNET_CRYPTO_PaillierPublicKey));
GNUNET_CRYPTO_mpi_scan_unsigned (&t1, fe->t1, GNUNET_CRYPTO_PAILLIER_BITS /
8);
GNUNET_CRYPTO_mpi_scan_unsigned (&z, fe->z,
GNUNET_SECRETSHARING_ELGAMAL_BITS / 8);
GNUNET_CRYPTO_mpi_scan_unsigned (&y, fe->h,
GNUNET_SECRETSHARING_ELGAMAL_BITS / 8);
@@ -1101,7 +1108,9 @@ cleanup:
* @param[out] fe the fair encryption
*/
static void
-encrypt_fair (gcry_mpi_t v, const struct GNUNET_CRYPTO_PaillierPublicKey
*ppub, struct GNUNET_SECRETSHARING_FairEncryption *fe)
+encrypt_fair (gcry_mpi_t v,
+ const struct GNUNET_CRYPTO_PaillierPublicKey *ppub,
+ struct GNUNET_SECRETSHARING_FairEncryption *fe)
{
gcry_mpi_t r;
gcry_mpi_t s;
@@ -1116,6 +1125,7 @@ encrypt_fair (gcry_mpi_t v, const struct
GNUNET_CRYPTO_PaillierPublicKey *ppub,
gcry_mpi_t Y;
gcry_mpi_t G;
gcry_mpi_t h;
+
GNUNET_assert (NULL != (r = gcry_mpi_new (0)));
GNUNET_assert (NULL != (s = gcry_mpi_new (0)));
GNUNET_assert (NULL != (t1 = gcry_mpi_new (0)));
@@ -1123,13 +1133,14 @@ encrypt_fair (gcry_mpi_t v, const struct
GNUNET_CRYPTO_PaillierPublicKey *ppub,
GNUNET_assert (NULL != (z = gcry_mpi_new (0)));
GNUNET_assert (NULL != (w = gcry_mpi_new (0)));
GNUNET_assert (NULL != (n_sq = gcry_mpi_new (0)));
- GNUNET_assert (NULL != (e = gcry_mpi_new (0)));
GNUNET_assert (NULL != (u = gcry_mpi_new (0)));
GNUNET_assert (NULL != (Y = gcry_mpi_new (0)));
GNUNET_assert (NULL != (G = gcry_mpi_new (0)));
GNUNET_assert (NULL != (h = gcry_mpi_new (0)));
- GNUNET_CRYPTO_mpi_scan_unsigned (&n, ppub, sizeof (struct
GNUNET_CRYPTO_PaillierPublicKey));
+ GNUNET_CRYPTO_mpi_scan_unsigned (&n,
+ ppub,
+ sizeof (struct
GNUNET_CRYPTO_PaillierPublicKey));
gcry_mpi_mul (n_sq, n, n);
gcry_mpi_add_ui (G, n, 1);
@@ -1175,8 +1186,8 @@ encrypt_fair (gcry_mpi_t v, const struct
GNUNET_CRYPTO_PaillierPublicKey *ppub,
GNUNET_CRYPTO_PAILLIER_BITS * 2 / 8,
t2);
-
- get_fair_encryption_challenge (fe, e);
+ get_fair_encryption_challenge (fe,
+ &e /* This allocates "e" */);
// compute z
gcry_mpi_mul (z, e, v);
--
To stop receiving notification emails like this one, please contact
address@hidden
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [GNUnet-SVN] [gnunet] branch master updated: mystery solved?,
gnunet <=