Posgrado → Matemáticas discretas ↓
Criptografía
La criptografía es un campo de estudio importante dentro de las matemáticas discretas y juega un papel vital en garantizar la seguridad en una variedad de plataformas hoy en día. En esencia, la criptografía es la práctica de comunicaciones seguras en presencia de adversarios. Tiene una larga historia, que data de miles de años atrás, pero en entornos contemporáneos, es una parte fundamental de la informática y la seguridad de la información.
Entendiendo la criptografía
La criptografía implica la creación de métodos para proteger las comunicaciones. Se utiliza para proteger la información del acceso no autorizado, asegurar la integridad de los datos, proporcionar autenticación e incluso garantizar que los datos no puedan ser negados una vez que han sido creados. Los conceptos principales giran en torno a la encriptación y el desencriptado:
Encriptación y desencriptado
Encriptación es un proceso en el que la información en texto plano se convierte en una forma ilegible llamada texto cifrado usando un algoritmo y una clave. La clave es una parte vital del proceso de encriptación, que determina cómo se transforma el texto.
Desencriptado es el proceso inverso, donde el texto cifrado se convierte nuevamente en texto plano legible. Este proceso requiere el conocimiento de la clave utilizada en la encriptación.
Ejemplo de encriptación básica: Cifrado César
Un ejemplo simple de un método de encriptación es el cifrado César. Este cifrado lleva el nombre de Julio César, quien, según la leyenda, lo usaba para comunicarse con sus generales.
En un cifrado César, cada letra del texto plano se 'desplaza' un cierto número hacia abajo en el alfabeto. Así es como funciona:
Texto Plano : HELLO Desplazamiento : 3 Cifrado : KHOOR
¿Cómo funciona? Considera el alfabeto:
ABCDEFGHIJKLMNOPQRSTUVWXYZ
Si nos movemos tres lugares a la derecha:
DEFGHIJKLMNOPQRSTUVWXYZABC
Así, 'H' se convierte en 'K', 'E' se convierte en 'H', 'L' se convierte en 'O', y así sucesivamente.
Tipos de criptografía
Los métodos criptográficos pueden clasificarse ampliamente en tres tipos:
1. Criptografía de clave simétrica
En la criptografía de clave simétrica, se utiliza la misma clave tanto para la encriptación como para el desencriptado. Esto es similar a una caja cerrada que ambas partes pueden abrir porque tienen la misma llave. Es eficiente y rápida, pero el desafío radica en compartir la clave de manera segura. Algunos algoritmos simétricos comunes incluyen:
- Estándar de Encriptación de Datos (DES)
- Estándar de Encriptación Avanzada (AES)
Ejemplo visual:
2. Criptografía de clave asimétrica
Los algoritmos asimétricos usan un par de claves: una clave pública y una clave privada. La clave pública se comparte abiertamente y se usa para encriptar, mientras que la clave privada se mantiene en secreto para desencriptar. Tiene ventajas significativas sobre la criptografía simétrica en términos de distribución de claves, pero es más intensiva computacionalmente.
- Rivest–Shamir–Adleman (RSA)
- Criptografía de Curva Elíptica (ECC)
Ejemplo visual:
3. Funciones de hash
Las funciones de hash no involucran claves. En cambio, toman una entrada (o 'mensaje') y devuelven una cadena de bytes de tamaño fijo. La salida, generalmente un 'resumen', es única para cada entrada única. Es casi imposible derivar la entrada original a partir de su salida hash.
Las funciones de hash se utilizan para asegurar la integridad de los datos y el almacenamiento de contraseñas, entre otras aplicaciones. Las funciones de hash populares incluyen:
- MD5 (ahora considerado inseguro para muchas aplicaciones)
- SHA-256
Ejemplo visual:
Fundamentos matemáticos de la criptografía
Las matemáticas son la base de la criptografía, siendo la teoría de números y el álgebra roles importantes. Algunos de los conceptos importantes son los siguientes:
1. Aritmética modular
Los algoritmos criptográficos a menudo usan aritmética modular. Esto es como la aritmética del reloj donde los números giran después de alcanzar un cierto punto: el 'módulo'. Por ejemplo, en aritmética módulo 12, 13 es igual a 1:
13 mod 12 = 1
La aritmética modular es esencial en muchos sistemas criptográficos, notablemente RSA, que utiliza propiedades de los números primos en sus operaciones.
2. Números primos
Los números primos, números que son divisibles solo por 1 y por ellos mismos, son fundamentales en la criptografía. Se utilizan para generar claves en algoritmos como RSA. La dificultad de factorizar números grandes en primos subyace en la seguridad de estos sistemas.
3. Función phi de Euler
La función phi de Euler, denotada φ(n)
, es importante en criptografía para calcular claves públicas y privadas. Cuenta el número de enteros hasta un entero dado n
que son coprimos con n
.
4. Logaritmo discreto
El problema del logaritmo discreto es otro concepto matemático utilizado en criptografía. Es similar al logaritmo regular, pero dentro del conjunto de los enteros. Este problema subyace en la seguridad de algunos sistemas criptográficos como el intercambio de claves Diffie-Hellman.
Aplicaciones de la criptografía
La criptografía juega un papel vital en la seguridad de los sistemas de información. Sus principales aplicaciones incluyen:
1. Comunicación segura
La encriptación permite conversaciones privadas a través de canales públicos. Los usos clásicos incluyen la navegación web segura (HTTPS), que depende de protocolos criptográficos para proteger los datos transmitidos a través de Internet.
2. Autenticación
La criptografía asegura que los datos provienen de una fuente verificada. Las técnicas como las firmas digitales permiten a los usuarios verificar la autenticidad de un mensaje, software o documento digital.
3. Firma digital
Estas son el equivalente criptográfico de las firmas manuscritas, pero son mucho más seguras. Las firmas digitales certifican la integridad y el origen del mensaje, asegurando que no ha sido alterado.
4. Funciones hash criptográficas en la seguridad de contraseñas
Las funciones hash almacenan contraseñas de manera segura. Cuando un usuario ingresa una contraseña, se hace un hash y se compara con el hash almacenado. Esto significa que incluso si se manipula la base de datos de hashes, las contraseñas no se exponen directamente.
Conclusión
La criptografía es un pilar de las prácticas de seguridad modernas, que permite transacciones y comunicaciones seguras en plataformas digitales. Sus fundamentos en matemáticas discretas, particularmente en teoría de números y álgebra, destacan las complejas relaciones entre la teoría matemática y las aplicaciones prácticas. Al proteger la información, la criptografía sigue siendo un campo esencial para mantener la privacidad y la confianza en un mundo cada vez más conectado.