summaryrefslogtreecommitdiff
path: root/xtr.cpp
diff options
context:
space:
mode:
authorJeffrey Walton <noloader@gmail.com>2016-09-16 11:27:15 -0400
committerJeffrey Walton <noloader@gmail.com>2016-09-16 11:27:15 -0400
commit399a1546de71f41598c15edada28e7f0d616f541 (patch)
tree530160789358a3303be180df2d8529c82782156b /xtr.cpp
parentfca5fbb36169a7522e6c533df9c322d47e3dc6bb (diff)
downloadcryptopp-git-399a1546de71f41598c15edada28e7f0d616f541.tar.gz
Add CRYPTOPP_ASSERT (Issue 277, CVE-2016-7420)
trap.h and CRYPTOPP_ASSERT has existed for over a year in Master. We deferred on the cut-over waiting for a minor version bump (5.7). We have to use it now due to CVE-2016-7420
Diffstat (limited to 'xtr.cpp')
-rw-r--r--xtr.cpp12
1 files changed, 6 insertions, 6 deletions
diff --git a/xtr.cpp b/xtr.cpp
index 9819b81d..0de51f80 100644
--- a/xtr.cpp
+++ b/xtr.cpp
@@ -18,8 +18,8 @@ const GFP2Element & GFP2Element::Zero()
void XTR_FindPrimesAndGenerator(RandomNumberGenerator &rng, Integer &p, Integer &q, GFP2Element &g, unsigned int pbits, unsigned int qbits)
{
- assert(qbits > 9); // no primes exist for pbits = 10, qbits = 9
- assert(pbits > qbits);
+ CRYPTOPP_ASSERT(qbits > 9); // no primes exist for pbits = 10, qbits = 9
+ CRYPTOPP_ASSERT(pbits > qbits);
const Integer minQ = Integer::Power2(qbits - 1);
const Integer maxQ = Integer::Power2(qbits) - 1;
@@ -30,11 +30,11 @@ void XTR_FindPrimesAndGenerator(RandomNumberGenerator &rng, Integer &p, Integer
do
{
bool qFound = q.Randomize(rng, minQ, maxQ, Integer::PRIME, 7, 12);
- CRYPTOPP_UNUSED(qFound); assert(qFound);
+ CRYPTOPP_UNUSED(qFound); CRYPTOPP_ASSERT(qFound);
bool solutionsExist = SolveModularQuadraticEquation(r1, r2, 1, -1, 1, q);
- CRYPTOPP_UNUSED(solutionsExist); assert(solutionsExist);
+ CRYPTOPP_UNUSED(solutionsExist); CRYPTOPP_ASSERT(solutionsExist);
} while (!p.Randomize(rng, minP, maxP, Integer::PRIME, CRT(rng.GenerateBit()?r1:r2, q, 2, 3, EuclideanMultiplicativeInverse(p, 3)), 3*q));
- assert(((p.Squared() - p + 1) % q).IsZero());
+ CRYPTOPP_ASSERT(((p.Squared() - p + 1) % q).IsZero());
GFP2_ONB<ModularArithmetic> gfp2(p);
GFP2Element three = gfp2.ConvertIn(3), t;
@@ -50,7 +50,7 @@ void XTR_FindPrimesAndGenerator(RandomNumberGenerator &rng, Integer &p, Integer
if (g != three)
break;
}
- assert(XTR_Exponentiate(g, q, p) == three);
+ CRYPTOPP_ASSERT(XTR_Exponentiate(g, q, p) == three);
}
GFP2Element XTR_Exponentiate(const GFP2Element &b, const Integer &e, const Integer &p)