comparison libtommath/bn_mp_montgomery_setup.c @ 511:582cb38e4eb5 insecure-nocrypto

propagate from branch 'au.asn.ucc.matt.dropbear' (head cdcc3c729e29544e8b98a408e2dc60e4483dfd2a) to branch 'au.asn.ucc.matt.dropbear.insecure-nocrypto' (head 0ca38a1cf349f7426ac9de34ebe4c3e3735effab)
author Matt Johnston <matt@ucc.asn.au>
date Thu, 06 Nov 2008 13:16:55 +0000
parents 5ff8218bcee9
children 60fc6476e044
comparison
equal deleted inserted replaced
361:461c4b1fb35f 511:582cb38e4eb5
10 * additional optimizations in place. 10 * additional optimizations in place.
11 * 11 *
12 * The library is free for all purposes without any express 12 * The library is free for all purposes without any express
13 * guarantee it works. 13 * guarantee it works.
14 * 14 *
15 * Tom St Denis, [email protected], http://math.libtomcrypt.org 15 * Tom St Denis, [email protected], http://math.libtomcrypt.com
16 */ 16 */
17 17
18 /* setups the montgomery reduction stuff */ 18 /* setups the montgomery reduction stuff */
19 int 19 int
20 mp_montgomery_setup (mp_int * n, mp_digit * rho) 20 mp_montgomery_setup (mp_int * n, mp_digit * rho)
46 #ifdef MP_64BIT 46 #ifdef MP_64BIT
47 x *= 2 - b * x; /* here x*a==1 mod 2**64 */ 47 x *= 2 - b * x; /* here x*a==1 mod 2**64 */
48 #endif 48 #endif
49 49
50 /* rho = -1/m mod b */ 50 /* rho = -1/m mod b */
51 *rho = (((mp_word)1 << ((mp_word) DIGIT_BIT)) - x) & MP_MASK; 51 *rho = (unsigned long)(((mp_word)1 << ((mp_word) DIGIT_BIT)) - x) & MP_MASK;
52 52
53 return MP_OKAY; 53 return MP_OKAY;
54 } 54 }
55 #endif 55 #endif
56
57 /* $Source: /cvs/libtom/libtommath/bn_mp_montgomery_setup.c,v $ */
58 /* $Revision: 1.4 $ */
59 /* $Date: 2006/12/04 21:34:03 $ */