diff options
author | Jeffrey Walton <noloader@gmail.com> | 2018-03-26 13:31:18 -0400 |
---|---|---|
committer | Jeffrey Walton <noloader@gmail.com> | 2018-03-26 13:31:18 -0400 |
commit | a665e0825fa2b23adbd8ec3173da512b553e86f4 (patch) | |
tree | 120bf0cf55dafb716ac51769da7ba805601f03f4 /integer.cpp | |
parent | 302d210ceb46ea9dab34499912dd4c29232cb076 (diff) | |
download | cryptopp-git-a665e0825fa2b23adbd8ec3173da512b553e86f4.tar.gz |
Use '*this >= m' for InverseMod reduction
The previous test used '*this > m', which did not capture 'm'
Diffstat (limited to 'integer.cpp')
-rw-r--r-- | integer.cpp | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/integer.cpp b/integer.cpp index e89aee5e..3246fb53 100644 --- a/integer.cpp +++ b/integer.cpp @@ -4386,13 +4386,13 @@ Integer Integer::Gcd(const Integer &a, const Integer &b) Integer Integer::InverseMod(const Integer &m) const
{
CRYPTOPP_ASSERT(m.NotNegative());
- CRYPTOPP_ASSERT(m != 0);
+ CRYPTOPP_ASSERT(m.NotZero());
if (IsNegative())
return Modulo(m).InverseModNext(m);
// http://github.com/weidai11/cryptopp/issues/602
- if (*this > m)
+ if (*this >= m)
return Modulo(m).InverseModNext(m);
return InverseModNext(m);
@@ -4401,7 +4401,7 @@ Integer Integer::InverseMod(const Integer &m) const Integer Integer::InverseModNext(const Integer &m) const
{
CRYPTOPP_ASSERT(m.NotNegative());
- CRYPTOPP_ASSERT(m != 0);
+ CRYPTOPP_ASSERT(m.NotZero());
if (m.IsEven())
{
|