Skip to content

Commit 515e795

Browse files
committed
Improve checks at top of _fe_negate methods
1 parent be6944a commit 515e795

File tree

2 files changed

+7
-0
lines changed

2 files changed

+7
-0
lines changed

src/field_10x26_impl.h

+4
Original file line numberDiff line numberDiff line change
@@ -391,6 +391,10 @@ SECP256K1_INLINE static void secp256k1_fe_negate(secp256k1_fe *r, const secp256k
391391
#ifdef VERIFY
392392
VERIFY_CHECK(a->magnitude <= m);
393393
secp256k1_fe_verify(a);
394+
VERIFY_CHECK(0x3FFFC2FUL * 2 * (m + 1) >= 0x3FFFFFFUL * 2 * m);
395+
VERIFY_CHECK(0x3FFFFBFUL * 2 * (m + 1) >= 0x3FFFFFFUL * 2 * m);
396+
VERIFY_CHECK(0x3FFFFFFUL * 2 * (m + 1) >= 0x3FFFFFFUL * 2 * m);
397+
VERIFY_CHECK(0x03FFFFFUL * 2 * (m + 1) >= 0x03FFFFFUL * 2 * m);
394398
#endif
395399
r->n[0] = 0x3FFFC2FUL * 2 * (m + 1) - a->n[0];
396400
r->n[1] = 0x3FFFFBFUL * 2 * (m + 1) - a->n[1];

src/field_5x52_impl.h

+3
Original file line numberDiff line numberDiff line change
@@ -377,6 +377,9 @@ SECP256K1_INLINE static void secp256k1_fe_negate(secp256k1_fe *r, const secp256k
377377
#ifdef VERIFY
378378
VERIFY_CHECK(a->magnitude <= m);
379379
secp256k1_fe_verify(a);
380+
VERIFY_CHECK(0xFFFFEFFFFFC2FULL * 2 * (m + 1) >= 0xFFFFFFFFFFFFFULL * 2 * m);
381+
VERIFY_CHECK(0xFFFFFFFFFFFFFULL * 2 * (m + 1) >= 0xFFFFFFFFFFFFFULL * 2 * m);
382+
VERIFY_CHECK(0x0FFFFFFFFFFFFULL * 2 * (m + 1) >= 0x0FFFFFFFFFFFFULL * 2 * m);
380383
#endif
381384
r->n[0] = 0xFFFFEFFFFFC2FULL * 2 * (m + 1) - a->n[0];
382385
r->n[1] = 0xFFFFFFFFFFFFFULL * 2 * (m + 1) - a->n[1];

0 commit comments

Comments
 (0)