La criptografía asimétrica (que usamos a medias)

La criptografía asimétrica, como ya hemos hablado en el blog, es la que necesita de dos llaves diferentes, una pública y otra privada. Se basa prácticamente que lo que encriptamos con la privada se desencripta con la pública y lo que encriptamos con la pública se desencripta con la privada, aunque en el primer caso cualquiera puede descencriptar el mensaje, pues la llave pública está a la vista de todos.

Pero realmente ¿Cómo se se supone que se debería usar?

La idea de la criptografía asimétrica es que ambos lados tengan un par de llaves, o sea, ejemplificándolo debería ser así:

Criptografía Asimetrica

Imaginemos que se va a enviar un mensaje, entonces primero la computadora A encripta el mensaje con su llave privada, y después lo encripta con la pública de la computadora B, luego le manda el mensaje; y, cuando la computadora B recibe dicho mensaje, lo desencripta con su llave privada primero (lo cual asegura que él es el destinatario correcto) y el resultado luego lo desencripta con la llave pública del emisor (lo cual asegura que el único que la pudo haber encriptado fué el emisor que nosotros conocemos). Todo esto suponiendo que las computadoras conocen la verdadera llave pública del otro.

De esa manera si alguien intercepta la comunicación no podrá obtener su contenido, y estamos seguros que tanto el emisor como el receptor son quienes dicen ser.

Ahora veamos cómo lo usamos cotidianamente

En el protocolo SSL, por ejemplo, el servidor le manda su llave pública al cliente y el cliente manda su llave pública al servidor, con ellas se ponen de acuerdo para usar algún sistema de criptografía simétrica y la llave que van a usar en él; así se logra que la comunicación de ahora en adelante esté cifrada con una sola llave, y se resuelve el problema que presenta la criptografía simétrica cuando no se sabe si el medio de transmisión es seguro.

¿Por qué no usamos criptografía asimétrica en toda la comunicación? Principalmente porque es muy tardado el proceso de crifrar y descrifrar algo con las llaves públicas y privadas, mientras que los algoritmos de criptografía simétrica son más rápidos.

Ahora ¿Cómo sabemos que el servidor realmente es el servidor con el que nosotros queremos comunicarnos?, ésto no lo podemos saber mediante más criptografía. Lo que se hace para resolver el problema es que se usa un tercero confiable (Autoridad Certificadora) que nos asegura que realmente alguien es quien dice ser; y, ¿cómo funciona una autoridad certificadora? lo veremos después en otro post.

Un commentario
  1. [...] Como vimos anteriormente la criptografía asimétrica necesita de cuatro llaves para ser segura y realmente el SSL usa dos, entonces, para aumentar la seguridad se recurre a certificados de seguridad, los clásicos son VeriSign y Geotrust, los cuales para mi punto de vista son muy caros, pero a veces la seguridad cuesta. [...]

Deja un comentario