Pasar al contenido principal

Cifrado Asimétrico

Método criptográfico que utiliza dos claves para el envío de información. Ambas pertenecen al receptor del mensaje: una de ellas es pública y por lo tanto puede ser conocida por todo el mundo, y la otra clave es privada, por lo que solamente será conocida por su propietario.

El sistema de cifrado asimétrico surgió para solucionar el problema de intercambio de claves que existe en los cifrados simétricos. Con este sistema, los interlocutores deben asegurarse de proteger su clave privada ya que la clave pública puede ser conocida por todo el mundo. Es necesario un algoritmo que permita generar una clave privada única a partir de una clave pública conocida por todos. Para ello existen una serie de algoritmos que resuelven este problema gracias a fundamentos matemáticos:

  • RSA: La seguridad de este algoritmo se basa principalmente en la factorización de números enteros. La clave privada de este sistema son dos números primos grandes elegidos al azar y la clave pública, el producto de estos. De esta forma, generar la clave pública es sencillo puesto que únicamente se ha de multiplicar los dos números que conforman la clave privada, pero descomponer un número tan grande (clave pública) en sus factores primos es un problema muy complejo que no tiene una solución viable hoy en día.
  • Curvas Elípticas: Este algoritmo se basa en las matemáticas de curvas elípticas. Las ventajas que ofrece este sistema frente a otros como el RSA es que genera claves más cortas y tarda menos tiempo en procesarlas. Una curva elíptica tiene una forma concreta que no se cruza sobre sí misma ni presenta picos, además en criptografía se utilizan números enteros para evitar problemas de redondeo en los ordenadores. Puesto que un punto Q puede obtenerse como el producto de un entero n por otro punto P, el problema es encontrar el entero n (clave privada) siendo conocidos los puntos P y Q (clave pública)

Si una persona que emite un mensaje a un destinatario usa la clave pública de este último para cifrarlo, una vez cifrado sólo la clave privada del destinatario podrá descifrar el mensaje, ya que es el único que debería conocerla. Por tanto, se logra la confidencialidad del envío del mensaje y es extremadamente difícil que lo descifre alguien salvo el destinatario. Cualquiera, usando la clave pública del destinatario, puede cifrarle mensajes, que serán descifrados por el destinatario usando su clave privada.

Además del intercambio de claves, el cifrado asimétrico permite desarrollar firmas digitales. Las firmas digitales funcionan de la misma forma que una firma manuscrita, permitiendo autenticar los datos que se transmiten. Si un emisor cifra los datos y el receptor es capaz de descifrarlos con su clave pública asociada, el receptor tiene seguridad de que ese mensaje ha sido cifrado con una clave privada y por lo tanto es auténtico.

La principal ventaja de este sistema frente al cifrado simétrico es que garantiza una distribución de claves fácil y segura. Esto proporciona un alto nivel de confidencialidad e integridad y por eso es utilizado por herramientas o tecnologías como PGP, SSH, DSA, TLS o SSL para el intercambio de claves simétricas.

No obstante, el principal problema de este cifrado es la generación de las claves. Deben ser de un gran tamaño y se requiere un tiempo de proceso elevado, además el mensaje que generan suele ocupar más espacio que el original. Es por ello que el intercambio de claves sólo se realiza una única vez en cada comunicación.