Skip to content

Commit e491d06

Browse files
Use bit ops instead of int mult for constant-time logic in gej_add_ge
1 parent f8c0b57 commit e491d06

File tree

1 file changed

+1
-1
lines changed

1 file changed

+1
-1
lines changed

src/group_impl.h

+1-1
Original file line numberDiff line numberDiff line change
@@ -591,7 +591,7 @@ static void secp256k1_gej_add_ge(secp256k1_gej *r, const secp256k1_gej *a, const
591591
secp256k1_fe_cmov(&n, &m, degenerate); /* n = M^3 * Malt (2) */
592592
secp256k1_fe_sqr(&t, &rr_alt); /* t = Ralt^2 (1) */
593593
secp256k1_fe_mul(&r->z, &a->z, &m_alt); /* r->z = Malt*Z (1) */
594-
infinity = secp256k1_fe_normalizes_to_zero(&r->z) * (1 - a->infinity);
594+
infinity = secp256k1_fe_normalizes_to_zero(&r->z) & ~a->infinity;
595595
secp256k1_fe_mul_int(&r->z, 2); /* r->z = Z3 = 2*Malt*Z (2) */
596596
secp256k1_fe_negate(&q, &q, 1); /* q = -Q (2) */
597597
secp256k1_fe_add(&t, &q); /* t = Ralt^2-Q (3) */

0 commit comments

Comments
 (0)