FUNCIONAMIENTO DE LA CRIPTOGRAFÍA DE CLAVE PÚBLICA.
 
 
 
            Los algoritmos de clave pública, como el cifrado RSA (las siglas de sus desarrolladores), parecen causar múltiples trastornos, ya que desafían los convenios establecidos sobre el funcionamiento de los sistemas de doble clave. Todo el mundo sabe que las cajas de seguridad de los bancos necesitan dos llaves para abrise (aunque la que posee el banco es un tanto redundante si la cámara acorazada es buena). Pero, en los algoritmos de clave pública, las dos claves funcionan de forma distinta. La secreta se utiliza para crear una firma digital, mientras que la pública sirve para verificarla.

          La manera más sencilla de entender el cifrado RSA es recordar dos cuestiones de álgebra  básica: primero, todos los números tienen un multiplicador inverso, y segundo, (e^a)^b = e^(ab). El multiplicador  inverso de un número a es un número b tal que ab=1. De este modo, en aritmética regular el multiplicador inverso de 4 es 0,25.

          RSA utiliza aritmética modular que sólo opera con números enteros entre 0 y un cierto número n. A menudo, se compara con el residuo de una división. La ecuación ab mod n podría expresarse como mutiplicar a y b, luego dividir el resultado por n y restituir el resto. Por sorprendente que parezca, muchas de las reglas de la aritmética estándar siguen siendo válidas en este dominio. Los números pueden sumarse, restarse, multiplicarse y generalmente dividirse, y las ecuaciones obedecen a las reglas habituales de conmutación, asociatividad y transitividad.

          Para construir un par de claves para RSA, encuentre dos números primos p y q. Su producto es n. Las dos claves, e y d, son números aleatorios elegidos de forma que ed mod [(p-1)(q-1)] = 1. Es decir, d es el multiplicador inverso de e.

          El algoritmo funciona porque m^de = m mod n (el motivo de que opere también va más allá del propósito de esta explicación). Para cifrar un mensaje, conviértalo en un número m y calcule m^e mod n. Sólo la persona que conoce d puede descifrarlo calculando (m^e mod n)^d mod n = m^de mod n = m.

          Puede pensar en el proceso de clave pública como si fuera un collar de perlas . Suponga que una perla es el mensaje. La calve pública es algún número  menor que n, y la clave privada correspondiente es n-a = b. Un mensaje se cifra contando a perlas y se descifra contando a b perlas, lo que conduce de nuevo al principio. Este planteamiento es tan sólo una metáfora, y evidentemente no está exento de riesgos. Cualquiera  que conozca a y n puede determinar b. Pero esto no ocurre con RSA o el Digital Signature Algorithm. Con estos algoritmos, es imposible averiguar la clave privada a partir de la clave pública.

                       

  volver atrás