From: Bodo Möller Date: Thu, 30 Nov 2000 12:53:53 +0000 (+0000) Subject: Corrections to the comments in BN_mod_inverse. X-Git-Tag: OpenSSL_0_9_6a-beta1~107^2~90 X-Git-Url: https://git.librecmc.org/?a=commitdiff_plain;h=19cda70045acb6e8deba2278c7f9d82c21269826;p=oweals%2Fopenssl.git Corrections to the comments in BN_mod_inverse. --- diff --git a/crypto/bn/bn_gcd.c b/crypto/bn/bn_gcd.c index a61ba5ee11..d5caf5136f 100644 --- a/crypto/bn/bn_gcd.c +++ b/crypto/bn/bn_gcd.c @@ -240,7 +240,7 @@ BIGNUM *BN_mod_inverse(BIGNUM *in, /* From B = a mod |n|, A = |n| it follows that * * 0 <= B < A, - * X*a == B (mod |n|), + * sign*X*a == B (mod |n|), * -sign*Y*a == A (mod |n|). */ @@ -250,7 +250,7 @@ BIGNUM *BN_mod_inverse(BIGNUM *in, /* * 0 < B < A, - * (*) X*a == B (mod |n|), + * (*) sign*X*a == B (mod |n|), * -sign*Y*a == A (mod |n|) */ @@ -314,15 +314,15 @@ BIGNUM *BN_mod_inverse(BIGNUM *in, * i.e. * -sign*Y*a - D*A == B (mod |n|). * Similarly, (*) translates into - * X*a == A (mod |n|). + * sign*X*a == A (mod |n|). * * Thus, - * -sign*Y*a - D*X*a == B (mod |n|), + * -sign*Y*a - D*sign*X*a == B (mod |n|), * i.e. - * -sign*(Y + D*X)*a == B (mod |n|). + * -sign*(Y + D*X)*a == B (mod |n|). * * So if we set (X, Y, sign) := (Y + D*X, X, -sign), we arrive back at - * X*a == B (mod |n|), + * sign*X*a == B (mod |n|), * -sign*Y*a == A (mod |n|). * Note that X and Y stay non-negative all the time. */ @@ -361,7 +361,7 @@ BIGNUM *BN_mod_inverse(BIGNUM *in, } /* - * The while loop ends when + * The while loop (Euclid's algorithm) ends when * A == gcd(a,n); * we have * -sign*Y*a == A (mod |n|),