Criptografía: simétrica, asimétrica e hibrida.

Cifrado

La criptografía se ha definido tradicionalmente como la técnica o conjunto de técnicas usadas para cifrar o codificar datos, alterándolos para que dejen de ser semánticamente interpretables y de esta manera evitar que sean legibles a receptores no autorizados. Existen múltiples protocolos criptográficos y cada día aparecen mas, todo esto con el fin de fortificar la seguridad necesaria para afrontar la creciente ola de problemas de seguridad en la transmisión de datos a nivel mundial. Si no existiera la criptografía cada cosa  que hiciéramos en internet viajaría en texto plano, es decir, tal y como lo escribimos desde nuestro teclado. Ahora vamos a echarle un vistazo a los diferentes tipos de criptografía que existen.

Criptografía Simétrica o Criptografía de Clave Secreta 

 

 

Es un protocolo de cifrado en el cual se usa una misma clave (Que debe ser conocida por el emisor y receptor) para descifrar los datos previamente cifrados. Con algo de crítica podemos ver fácilmente los puntos débiles de este tipo de criptografía, los cuales no se encuentran en la seguridad del cifrado exactamente, sino en otros aspectos entre los cuales se destacan: 

  • La seguridad de los datos dependen un 100% de la clave asignada durante el proceso de encriptación.  
  • Es vulnerable a ataques de fuerza bruta. Un ataque de fuerza bruta es aquel donde el atacante prueba el mayor número de combinaciones posibles para hallar la clave correcta.  
  • Durante el intercambio de la clave, se pueden correr riesgos de que la clave sea interceptada si no se usan los protocolos de seguridad correctos.  
  • Otro problema es el número de claves que se necesitan. Si tenemos un número n de personas que necesitan comunicarse entre sí, se necesitan en total n(n-1)/2 claves para todas las parejas de personas que tengan que comunicarse de modo privado. Esto puede funcionar con un grupo reducido de personas, pero sería imposible llevarlo a cabo con grupos más grandes.

Criptografía Asimetrica o Criptografía de Doble Clave

Es el método criptográfico que usa un par de claves para el envío de mensajes. Las dos claves pertenecen a la misma persona que ha enviado el mensaje. Una clave es pública y se puede entregar a cualquier persona, la otra clave es privada y el propietario debe guardarla de modo que nadie tenga acceso a ella. Además, los métodos criptográficos garantizan que esa pareja de claves solo se puede generar una vez, de modo que se puede asumir que no es posible que dos personas hayan obtenido casualmente la misma pareja de claves. Una vez el remitente cifra el mensaje usando la clave publica del destinatario, este solo puede ser descifrado  por la clave privada del mismo. Con esto se logra que nadie, salvo el destinatario pueda descifrar el mensaje.  

  1. Ana redacta un mensaje.
  2. Ana cifra el mensaje con la clave pública de David.  
  3. Ana envía el mensaje cifrado a David a través de internet, ya sea por correo electrónico, mensajería instantánea o cualquier otro medio.  
  4. David recibe el mensaje cifrado y lo descifra con su clave privada.
  5. David ya puede leer el mensaje original que le mandó Ana.  

A simple vista parece no tener desventajas, y a pesar de que es uno de los métodos mas sofisticados que existen actualmente, trae consigo algunas desventajas las cuales no se relacionan con su seguridad durante el cifrado, sino en otros aspectos como son:

  • Para una misma longitud de clave y mensaje se necesita mayor tiempo de proceso.
  • Las claves deben ser de mayor tamaño que las simétricas. (Generalmente son cinco o más veces de mayor tamaño que las claves simétricas).
  • El mensaje cifrado ocupa más espacio que el original.

Criptografía Híbrida

Es un método criptográfico que usa tanto la criptografía simétrica como la criptografía asimétrica, es la unión de los dos tipos de criptografía explicados anteriormente. Esto no significa que sea mas seguro o menos seguro que algunos de los métodos anteriores, solo que al ser la unión de los dos, brinda algunos "toques" extra de seguridad. Su procedimiento de cifrado es el siguiente:  

  1. Emplea el cifrado de clave pública para compartir una clave para el cifrado simétrico.  
  2. El mensaje que se esté enviando en el momento, se cifra usando su propia clave privada.  
  3. Luego el mensaje cifrado se envía al destinatario.  
  4. Ya que compartir una clave simétrica no es seguro, ésta es diferente para cada sesión.  
  5. La clave de sesión (clave simétrica) es cifrada con la clave pública del destinatario.  
  6. El mensaje saliente es cifrado con la clave simétrica, todo combinado automáticamente en un sólo paquete.  
  7. El destinatario usa su clave privada para descifrar la clave de sesión (clave simétrica) y acto seguido usa ésta para descifrar el mensaje.

Cabe la pena destacar que en este tipo de criptografía, si un atacante logra interceptar o descifrar una clave de sesión (simétrica) solo serviría para descifrar el mensaje cifrado con la clave usada en esa sesión, puesto que todas las claves simétricas generadas son diferentes para cada mensaje.

Recomendaciones:  

1) Use GPG  (GNU Privacy Guard) con cifrado asimétrico o híbrido.

2) Use PGP (Pretty Good Privacy) con cifrado asimétrico o híbrido.

Síguenos en FacebookTwitterunete a nuestra charla en Riotúnete a IRC o únete a Telegram y no olvides compartirnos en las redes sociales. También puede hacernos una donación.

Acerca del autor

Especialista en Seguridad Informática bajo certificación OSCP, experto en técnicas de privacidad y seguridad en la red, analista de criptografía, Fundador de Security Hack Labs. Desarrollador de BlackArch Linux. Twitter: @edu4rdshl XMPP: edu4rdshl@conversations.im Threema ID: 736WU8VV