gnunet-svn
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[GNUnet-SVN] r36327 - gnunet/src/scalarproduct


From: gnunet
Subject: [GNUnet-SVN] r36327 - gnunet/src/scalarproduct
Date: Sat, 5 Sep 2015 21:32:50 +0200

Author: grothoff
Date: 2015-09-05 21:32:50 +0200 (Sat, 05 Sep 2015)
New Revision: 36327

Modified:
   gnunet/src/scalarproduct/gnunet-service-scalarproduct-ecc_alice.c
   gnunet/src/scalarproduct/test_ecc_scalarproduct.c
Log:
-fixing ECC calculation

Modified: gnunet/src/scalarproduct/gnunet-service-scalarproduct-ecc_alice.c
===================================================================
--- gnunet/src/scalarproduct/gnunet-service-scalarproduct-ecc_alice.c   
2015-09-05 19:23:41 UTC (rev 36326)
+++ gnunet/src/scalarproduct/gnunet-service-scalarproduct-ecc_alice.c   
2015-09-05 19:32:50 UTC (rev 36327)
@@ -469,7 +469,15 @@
     return NULL;
   }
   ret = gcry_mpi_new (0);
-  gcry_mpi_set_ui (ret, ai_bi);
+  if (ai_bi > 0)
+  {
+    gcry_mpi_set_ui (ret, ai_bi);
+  }
+  else
+  {
+    gcry_mpi_set_ui (ret, - ai_bi);
+    gcry_mpi_neg (ret, ret);
+  }
   return ret;
 }
 
@@ -663,14 +671,14 @@
       g_i = GNUNET_CRYPTO_ecc_dexp_mpi (edc,
                                         r_i);
       /* r_ia = r_i * a */
-      gcry_mpi_mul (r_i,
-                    my_privkey,
-                    r_ia);
+      gcry_mpi_mul (r_ia,
+                    r_i,
+                    my_privkey);
       gcry_mpi_release (r_i);
       /* r_ia_ai = r_ia + a_i */
       gcry_mpi_add (r_ia_ai,
-                    s->sorted_elements[i].value,
-                    r_ia);
+                    r_ia,
+                    s->sorted_elements[i].value);
       h_i = GNUNET_CRYPTO_ecc_dexp_mpi (edc,
                                         r_ia_ai);
       GNUNET_CRYPTO_ecc_point_to_bin (edc,

Modified: gnunet/src/scalarproduct/test_ecc_scalarproduct.c
===================================================================
--- gnunet/src/scalarproduct/test_ecc_scalarproduct.c   2015-09-05 19:23:41 UTC 
(rev 36326)
+++ gnunet/src/scalarproduct/test_ecc_scalarproduct.c   2015-09-05 19:32:50 UTC 
(rev 36327)
@@ -50,6 +50,8 @@
   gcry_mpi_t a_inv;
   gcry_mpi_t ri;
   gcry_mpi_t val;
+  gcry_mpi_t ria;
+  gcry_mpi_t tmp;
   gcry_mpi_point_t *g;
   gcry_mpi_point_t *h;
   gcry_mpi_point_t pg;
@@ -70,29 +72,26 @@
                         gcry_mpi_point_t);
   h = GNUNET_new_array (len,
                         gcry_mpi_point_t);
+  ria = gcry_mpi_new (0);
+  tmp = gcry_mpi_new (0);
   for (i=0;i<len;i++)
   {
-    gcry_mpi_t tmp;
-    gcry_mpi_t ria;
-
     ri = GNUNET_CRYPTO_ecc_random_mod_n (edc);
     g[i] = GNUNET_CRYPTO_ecc_dexp_mpi (edc,
                                        ri);
     /* ria = ri * a */
-    ria = gcry_mpi_new (0);
     gcry_mpi_mul (ria,
                   ri,
                   a);
     /* tmp = ria + avec[i] */
-    tmp = gcry_mpi_new (0);
     gcry_mpi_add_ui (tmp,
                      ria,
                      avec[i]);
-    gcry_mpi_release (ria);
     h[i] = GNUNET_CRYPTO_ecc_dexp_mpi (edc,
                                        tmp);
-    gcry_mpi_release (tmp);
   }
+  gcry_mpi_release (ria);
+  gcry_mpi_release (tmp);
 
   /* Bob */
   val = gcry_mpi_new (0);




reply via email to

[Prev in Thread] Current Thread [Next in Thread]