You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@milagro.apache.org by sa...@apache.org on 2019/11/15 10:48:03 UTC

[incubator-milagro-crypto-c] 04/06: code cleanup

This is an automated email from the ASF dual-hosted git repository.

sandreoli pushed a commit to branch review-bls
in repository https://gitbox.apache.org/repos/asf/incubator-milagro-crypto-c.git

commit 8bdaae298288d85a316905ce21e163af0b464c79
Author: samuele-andreoli <sa...@yahoo.it>
AuthorDate: Wed Nov 13 16:21:14 2019 +0000

    code cleanup
---
 src/bls.c.in    | 18 ++++--------------
 src/bls192.c.in | 19 +++++--------------
 src/bls256.c.in | 19 +++++--------------
 3 files changed, 14 insertions(+), 42 deletions(-)

diff --git a/src/bls.c.in b/src/bls.c.in
index 1909110..009dabd 100644
--- a/src/bls.c.in
+++ b/src/bls.c.in
@@ -128,6 +128,7 @@ int BLS_ZZZ_KEY_PAIR_GENERATE(csprng *RNG,octet* S,octet *W)
 
     PAIR_ZZZ_G2mul(&G,s);
     ECP2_ZZZ_toOctet(W,&G);
+
     return BLS_OK;
 }
 
@@ -141,6 +142,7 @@ int BLS_ZZZ_SIGN(octet *SIG,char *m,octet *S)
     PAIR_ZZZ_G1mul(&D,s);
     // compress output
     ECP_ZZZ_toOctet(SIG,&D,true);
+
     return BLS_OK;
 }
 
@@ -336,13 +338,8 @@ int BLS_ZZZ_RECOVER_SECRET(int k, octet* X, octet* Y, octet* SK)
 
     for(int i=0; i<k; i++)
     {
-        // TODO
-        // This is validating the input as we go, giving the opportunity
-        // for an attacker to forge a malicious input which would only
-        // fail after most of the computation is done.
-        //
-        // Might want to change this sacrificing some memory
         BIG_XXX_fromBytes(y,Y[i].val);
+
         BIG_XXX_modmul(prod,y,coefs[i],r);
         BIG_XXX_add(secret, secret, prod);
 
@@ -354,6 +351,7 @@ int BLS_ZZZ_RECOVER_SECRET(int k, octet* X, octet* Y, octet* SK)
 
     // Output secret
     BIG_XXX_toBytes(SK->val,secret);
+    SK->len = MODBYTES_XXX;
 
     return BLS_OK;
 }
@@ -370,12 +368,6 @@ int BLS_ZZZ_RECOVER_SIGNATURE(int k, octet* X, octet* Y, octet* SIG)
 
     for(int i=0; i<k; i++)
     {
-        // TODO
-        // This is validating the input as we go, giving the opportunity
-        // for an attacker to forge a malicious input which would only
-        // fail after most of the computation is done.
-        //
-        // Might want to change this sacrificing some memory
         if (!ECP_ZZZ_fromOctet(&y,&Y[i]))
         {
             return BLS_INVALID_G1;
@@ -389,5 +381,3 @@ int BLS_ZZZ_RECOVER_SIGNATURE(int k, octet* X, octet* Y, octet* SIG)
 
     return BLS_OK;
 }
-
-
diff --git a/src/bls192.c.in b/src/bls192.c.in
index 86d850b..97c631d 100644
--- a/src/bls192.c.in
+++ b/src/bls192.c.in
@@ -128,6 +128,7 @@ int BLS_ZZZ_KEY_PAIR_GENERATE(csprng *RNG,octet* S,octet *W)
 
     PAIR_ZZZ_G2mul(&G,s);
     ECP4_ZZZ_toOctet(W,&G);
+
     return BLS_OK;
 }
 
@@ -140,6 +141,7 @@ int BLS_ZZZ_SIGN(octet *SIG,char *m,octet *S)
     BIG_XXX_fromBytes(s,S->val);
     PAIR_ZZZ_G1mul(&D,s);
     ECP_ZZZ_toOctet(SIG,&D,true); /* compress output */
+
     return BLS_OK;
 }
 
@@ -171,6 +173,7 @@ int BLS_ZZZ_VERIFY(octet *SIG,char *m,octet *W)
     {
         return BLS_FAIL;
     }
+
     return BLS_OK;
 }
 
@@ -336,13 +339,8 @@ int BLS_ZZZ_RECOVER_SECRET(int k, octet* X, octet* Y, octet* SK)
 
     for(int i=0; i<k; i++)
     {
-        // TODO
-        // This is validating the input as we go, giving the opportunity
-        // for an attacker to forge a malicious input which would only
-        // fail after most of the computation is done.
-        //
-        // Might want to change this sacrificing some memory
         BIG_XXX_fromBytes(y,Y[i].val);
+
         BIG_XXX_modmul(prod,y,coefs[i],r);
         BIG_XXX_add(secret, secret, prod);
 
@@ -354,6 +352,7 @@ int BLS_ZZZ_RECOVER_SECRET(int k, octet* X, octet* Y, octet* SK)
 
     // Output secret
     BIG_XXX_toBytes(SK->val,secret);
+    SK->len = MODBYTES_XXX;
 
     return BLS_OK;
 }
@@ -370,12 +369,6 @@ int BLS_ZZZ_RECOVER_SIGNATURE(int k, octet* X, octet* Y, octet* SIG)
 
     for(int i=0; i<k; i++)
     {
-        // TODO
-        // This is validating the input as we go, giving the opportunity
-        // for an attacker to forge a malicious input which would only
-        // fail after most of the computation is done.
-        //
-        // Might want to change this sacrificing some memory
         if (!ECP_ZZZ_fromOctet(&y,&Y[i]))
         {
             return BLS_INVALID_G1;
@@ -389,5 +382,3 @@ int BLS_ZZZ_RECOVER_SIGNATURE(int k, octet* X, octet* Y, octet* SIG)
 
     return BLS_OK;
 }
-
-
diff --git a/src/bls256.c.in b/src/bls256.c.in
index ad528be..f847b3f 100644
--- a/src/bls256.c.in
+++ b/src/bls256.c.in
@@ -128,6 +128,7 @@ int BLS_ZZZ_KEY_PAIR_GENERATE(csprng *RNG,octet* S,octet *W)
 
     PAIR_ZZZ_G2mul(&G,s);
     ECP8_ZZZ_toOctet(W,&G);
+
     return BLS_OK;
 }
 
@@ -140,6 +141,7 @@ int BLS_ZZZ_SIGN(octet *SIG,char *m,octet *S)
     BIG_XXX_fromBytes(s,S->val);
     PAIR_ZZZ_G1mul(&D,s);
     ECP_ZZZ_toOctet(SIG,&D,true); /* compress output */
+
     return BLS_OK;
 }
 
@@ -172,6 +174,7 @@ int BLS_ZZZ_VERIFY(octet *SIG,char *m,octet *W)
     {
         return BLS_FAIL;
     }
+
     return BLS_OK;
 }
 
@@ -336,13 +339,8 @@ int BLS_ZZZ_RECOVER_SECRET(int k, octet* X, octet* Y, octet* SK)
 
     for(int i=0; i<k; i++)
     {
-        // TODO
-        // This is validating the input as we go, giving the opportunity
-        // for an attacker to forge a malicious input which would only
-        // fail after most of the computation is done.
-        //
-        // Might want to change this sacrificing some memory
         BIG_XXX_fromBytes(y,Y[i].val);
+
         BIG_XXX_modmul(prod,y,coefs[i],r);
         BIG_XXX_add(secret, secret, prod);
 
@@ -354,6 +352,7 @@ int BLS_ZZZ_RECOVER_SECRET(int k, octet* X, octet* Y, octet* SK)
 
     // Output secret
     BIG_XXX_toBytes(SK->val,secret);
+    SK->len = MODBYTES_XXX;
 
     return BLS_OK;
 }
@@ -370,12 +369,6 @@ int BLS_ZZZ_RECOVER_SIGNATURE(int k, octet* X, octet* Y, octet* SIG)
 
     for(int i=0; i<k; i++)
     {
-        // TODO
-        // This is validating the input as we go, giving the opportunity
-        // for an attacker to forge a malicious input which would only
-        // fail after most of the computation is done.
-        //
-        // Might want to change this sacrificing some memory
         if (!ECP_ZZZ_fromOctet(&y,&Y[i]))
         {
             return BLS_INVALID_G1;
@@ -389,5 +382,3 @@ int BLS_ZZZ_RECOVER_SIGNATURE(int k, octet* X, octet* Y, octet* SIG)
 
     return BLS_OK;
 }
-
-