Re: RSA decryption exponent d (c++)
Available news archives: comp.lang.tcl - comp.lang.python - comp.security.firewalls - sci.crypt - comp.lang.php - comp.lang.javascript
Google
 
Web news.hping.org


sci.crypt archive

Re: RSA decryption exponent d (c++)

From: bert <bert.hutchings@btinternet.com>
Date: Fri Mar 31 2006 - 10:33:39 CEST

TJakobsen wrote:
> I have used the following numbers:
> p = 37
> q = 89
> n = p*q = 37*89 = 3293
> phi(n) = (p-1)(q-1) =3168
> e = 25
and
> hehe sorry but i dont really understand how to use this in my program
> as im only a high school student (last year though). We don't have
> advanced mathematics yet and we haven't really worked with any of the
> mathematics related to RSA such as modulo etc.
>
> could someone be so kind as to go through this Extended Euclidian
> algorithn using the numbers i've used in my program please?
> so we can calculate d.

3168 / 25 = 126 remainder 18
  25 / 18 = 1 remainder 7
  18 / 7 = 2 remainder 4
   7 / 4 = 1 remainder 3
   4 / 3 = 1 remainder 1

Now build up the inverse from (126, 1, 2, 1, 1) like this:
a0 = 0, a1 = 1, a2 = 126 * a1 + a0, a3 = 1 * a2 + a1,
a4 = 2 * a3 + a2, . . .

a0 = 1, a1 = 1, a2 = 126, a3 = 127, a4 = 380, a4 = 507,
a5 = 887. See how, for each n, 25 * a_n mod 3168 is
related to the remainders in the first sequence. To get
the correct inverse in this case we have to go back to
the division sequence and add "3 / 1 = 2 remainder 1"
to get a6 = 2281, which is the required d.

--
Received on Mon May 1 01:54:09 2006