X-Git-Url: https://www.bearssl.org/gitweb//home/git/?p=BearSSL;a=blobdiff_plain;f=src%2Fec%2Fec_p256_m31.c;h=d57ef7b097fff4a59924b97f4ca6707246134486;hp=b9826c3a655d8cc4a93a4ede1be95155f25fb9fc;hb=946f5bad7683aa79a9f4fcab760206e2aad8c555;hpb=79eec9d9e36f9406cba99a1eb328d408f6f2d1ee diff --git a/src/ec/ec_p256_m31.c b/src/ec/ec_p256_m31.c index b9826c3..d57ef7b 100644 --- a/src/ec/ec_p256_m31.c +++ b/src/ec/ec_p256_m31.c @@ -535,17 +535,17 @@ square_f256(uint32_t *d, const uint32_t *a) } for (i = 17; i >= 9; i --) { - uint64_t x; - - x = s[i]; - s[i - 1] += ARSHW(x, 2); - s[i - 2] += (x << 28) & 0x3FFFFFFF; - s[i - 2] -= ARSHW(x, 4); - s[i - 3] -= (x << 26) & 0x3FFFFFFF; - s[i - 5] -= ARSHW(x, 10); - s[i - 6] -= (x << 20) & 0x3FFFFFFF; - s[i - 8] += ARSHW(x, 16); - s[i - 9] += (x << 14) & 0x3FFFFFFF; + uint64_t y; + + y = s[i]; + s[i - 1] += ARSHW(y, 2); + s[i - 2] += (y << 28) & 0x3FFFFFFF; + s[i - 2] -= ARSHW(y, 4); + s[i - 3] -= (y << 26) & 0x3FFFFFFF; + s[i - 5] -= ARSHW(y, 10); + s[i - 6] -= (y << 20) & 0x3FFFFFFF; + s[i - 8] += ARSHW(y, 16); + s[i - 9] += (y << 14) & 0x3FFFFFFF; } /* @@ -1089,7 +1089,7 @@ p256_decode(p256_jacobian *P, const void *src, size_t len) memcpy(P->y, ty, sizeof ty); memset(P->z, 0, sizeof P->z); P->z[0] = 1; - return NEQ(bad, 0) ^ 1; + return EQ(bad, 0); } /*