Descifrando la Criptografía
Criptografía
Bienvenido a este curso de criptografía. La criptografía es un método de protección de la información y las comunicaciones mediante el uso de códigos, de modo que solo aquellos a quienes está destinada la información puedan leerla y procesarla. El prefijo «cripta-» significa «oculto» o «bóveda» – y el sufijo «-grafía» significa «escritura».
En informática, la criptografía se refiere a técnicas de comunicación e información seguras derivadas de conceptos matemáticos y cálculos basados en reglas llamados algoritmos, para transformar los mensajes en formas difíciles de descifrar.
Estos algoritmos deterministas se utilizan para la generación de claves criptográficas, firma digital, verificación para proteger la privacidad de los datos, navegación web en Internet y comunicaciones confidenciales como transacciones con tarjetas de crédito y correo electrónico.
Haciendo un poco de historia
El término criptología proviene del griego krypto: ‘oculto’ y logos: ‘palabra’. Es la ciencia de la escritura secreta (criptografía), de la escritura oculta (esteganografía) y de su revelación no autorizada (criptoanálisis). Por lo que podemos representar estos tres términos como en la siguiente imagen.

Como ves, la criptología engloba a la criptografía y al criptoanálisis:
- La criptografía diseña algoritmos de cifrado para proteger la información.
- El criptoanálisis intenta romper dichos métodos de cifrado para recuperar la información original.
Existe otro término no menos importante que también debes manejar y son los criptogramas:

Los elementos que forman parte de un criptosistema son:
- M: que representa el mensaje o texto en claro, que por sí solo es legible o interpretable por cualquier que tenga acceso a él.
- C: que representa al criptograma, esto es el texto cifrado que se trasmitirá por el canal de comunicación, el cual por definición es inseguro y por ello es necesario cifrar la información.
- E: que representa la función de cifrado que se aplica al texto en claro. La letra E proviene del inglés Encrypt.
- D: que representa la función de descifrado que se aplica al texto cifrado para recuperar el texto en claro. La letra D proviene del inglés Decrypt.
- K: que representa la clave empleada para cifrar el texto en claro M, o bien para descifrar el criptograma C. En los sistemas modernos de cifra asimétrica o de clave pública, estas claves K serán diferentes en ambos extremos.
Hay que destacar que, a pesar de los siglos, los sistemas de cifra clásicos y los modernos o actuales se diferencian muy poco entre sí. En el fondo, hacen las mismas operaciones, si bien los primeros estaban orientados a letras o caracteres, y los segundos lógicamente a bits y bytes. Pero los principios en los que se basan para conseguir su objetivo de enmascarar la información siguen siendo los mismos, la difusión y la confusión.
- La difusión pretende difundir las características del texto en claro en todo el criptograma, ocultando así la relación entre el texto en claro y el texto cifrado, y se logra mediante técnicas de cifra por permutación o transposición.
- Por su parte, la confusión pretende confundir al atacante, de manera que no le sea sencillo establecer una relación entre el criptograma y la clave de cifrado, y se logra mediante técnicas de cifra por sustitución.
Los cuatro servicios de seguridad que te proporciona la criptografía
La criptografía puede utilizarse para ayudar a proporcionar los siguientes servicios de seguridad:
- Confidencialidad: se ocupa de detectar y disuadir la divulgación no autorizada de información, vamos, de mantener los secretos en secreto: tengo información y no quiero que nadie más la descubra a menos que yo se la revele. Los algoritmos de cifrado abordan directamente el problema de la confidencialidad. Estos algoritmos aceptan una clave secreta y luego proceden a cifrar el mensaje original, conocido como texto claro, y lo convierten en una información ininteligible conocida como texto cifrado, de tal manera que sólo el destinatario previsto, y nadie más, puede leerlo.
- Integridad: se ocupa de detectar e impedir la modificación no autorizada de la información. Con criptografía se realiza una firma digital de la información y basta que un solo bit de los datos cambie para que la firma sea diferente. Esto permite a las partes que se comunican realizar comprobaciones de integridad con respecto a su información y asegurarse de que nada ha cambiado durante el trayecto o una vez almacenada. Las funciones de hash suelen constituir una pieza clave de las firmas digitales.
- Autenticación: es la propiedad de atribuir una identidad al remitente de un mensaje o al autor de una acción. Uno de los métodos criptográficos preferidos para autenticar a las partes es mediante certificados digitales. Se basan en dos bloques de construcción básicos: las funciones de hash y el cifrado de clave pública, que se verán más adelante.
- El no repudio asegura que el remitente no puede negar haber enviado el mensaje.
Una de las finalidades de la criptografía es mantener la confidencialidad del mensaje, esto es, garantizar que la información es accesible únicamente para aquellos autorizados a tener acceso. Otra es garantizar la integridad del criptograma, es decir, que éste no sufra ningún tipo de alteración o modificación. Así como garantizar la autenticidad del emisor y receptor, que se refiere a verificar que efectivamente se trata de las personas o entes que envían el mensaje o lo reciben.