Pero es peligroso mandar este número 17 por internet, ya que alguien lo puede interceptar y luego puede entrar a la cuenta del cliente indebidamente. Ni el cliente ni el banco quieren que pase esto. Hay que ocultar, o codificar, esta información. Entonces el banco le da al cliente (o mas bien a su PC) las siguientes instrucciones para codificar su mensaje:
Ahora, ¿cómo recupera el banco, desde del mensaje codificado (8), el mensaje original del cliente (17)?
Para esto el banco tiene una ``potencia decodificadora'': el número 23. El banco calcula el residuo modulo 55 de 8 elevado a la 23ava potencia, y le sale 17. O sea, multiplicando 8 por su mismo 23 veces y dividir el resultado entre 55, lo que sobra es 17, el mensaje original del cliente.
Ahora el banco puede verificar si el cliente mandó la contraseña correcta y decidir si le deja entrar a su cuenta.
En fórmulas: M=17 (el mensaje secreto del cliente), N=55 y c=7 (los números que el banco manda al cliente, publicamente, para codificar su mensaje, el ``modulus'' y la ``llave pública''). M'= Mc(mod N)= 8 (el mensaje codificado que manda el cliente al banco). El banco recupera el mensaje secreto del cliente al usar d=23 (la potencia decodificadora, o la ``llave privada'') y calcula M= M'd (mod N).
El punto de todo esto es que las instrucciones para el cliente, incluyendo los números N y c, son públicas; por ejemplo, pueden aparecer en la misma página internet del banco. Sin embargo, la ``potencia decodificadora'' d (en nuestro caso 23) es secreta, y sin ella es practicamente imposible recuperar el mensaje original M (el número 17 en nuestro caso).
Para entender esto mejor, tenemos que entender la manera en que el banco diseña los números N, c y d. La receta es la siguiente: escoje dos primos distintos p y q (5 y 11 en nuestro caso, pero en realidad tienen que ser muchos mas grande, con cientos de dígitos). Define N=pq (55 en nuestro caso) y f=(p-1)(q-1) (40 en nuestro caso). Escoje ahora c entre 1 y f que no tenga factor común con f (7 en nuestro caso, no tiene factor común con 40). Encuentra un d entre 1 y f tal que cd= 1 (mod f) (23 en nuestro caso, ya que 7 x 23 =161= 1 (mod 40). Los números N y c son públicos. El resto, p, q, f y d, son secretos. El exito de este sistema está basado en que la única manera (que conocemos ahora) de decodificar el mensaje C es encontrar los factores primos p y q de N, para luego poder determinar el f (esto es fácil) y luego d (tambien fácil). Pero resulta que si p y q son muy grandes (digamos de 200 dígitos cada uno), es practicamente imposible (hoy en día) de encontrar los factores p y q de N=pq.