Criptografía: Fundamentos, Métodos y Aplicaciones
Definiciones Clave
- Criptografía: Arte de ocultar mensajes mediante codificación para que solo el destinatario pueda entenderlos. Usa claves para transformar el texto en un mensaje cifrado.
- Criptoanálisis: Ciencia para descifrar mensajes sin conocer la clave.
- Criptosistema: Conjunto de claves, algoritmos y herramientas usadas para cifrar y descifrar.
Métodos Históricos de Cifrado
- Escítala: Dispositivo espartano que cifraba mensajes enrollando una tira de papel en un cilindro.
- Cifrado César: Sustituye cada letra por otra desplazada un número fijo de posiciones.
- Cifrado Vigenère: Usa una palabra clave para cambiar las letras según una tabla.
- Esteganografía: Esconde mensajes dentro de objetos o textos sin que sean evidentes.
Limitaciones de los Métodos Antiguos
- Los patrones en los idiomas pueden facilitar deducir el método de cifrado.
- Solución moderna: Los algoritmos son públicos, pero las claves son secretas.
Criptografía Simétrica
Características Clave
- Usa una única clave para cifrar y descifrar.
- La clave debe mantenerse secreta y segura.
Ventajas
Fácil y rápido de implementar. Ideal para cifrar grandes volúmenes de datos.
Inconvenientes
Necesita una clave diferente para cada par de usuarios. Si la clave es interceptada, el sistema queda comprometido.
Ataques Comunes
- Criptoanálisis: Se estudian patrones del texto cifrado y texto plano.
- Fuerza bruta: Se prueban todas las combinaciones posibles hasta encontrar la clave. Es más difícil cuanto más larga y compleja sea la clave.
Algoritmos de Cifrado Simétrico
- DES: Bloques de 64 bits y claves de 56 bits. Obsoleto debido a su vulnerabilidad.
- AES: Bloques de 128 bits con claves de 128, 192 o 256 bits. Usado en transacciones bancarias y discos duros.
- RC5: Tamaño de bloques y claves variable, altamente seguro.
- IDEA: Propone reemplazar DES con bloques de 64 bits y claves de 128 bits.
Criptografía Asimétrica
Características Clave
- Utiliza un par de claves:
- Clave pública: Conocida por todos, para cifrar.
- Clave privada: Solo el propietario la conoce, para descifrar.
- Garantiza autenticidad y confidencialidad.
Ejemplos de Uso
- Autenticación: Mensajes cifrados con la clave privada del remitente. Solo quien tenga la clave pública puede verificar la autenticidad.
- Confidencialidad: Mensajes cifrados con la clave pública del destinatario. Solo él puede descifrarlos con su clave privada.
Ventajas
No es necesario compartir claves privadas, solo requiere un par de claves por usuario.
Inconvenientes
Más lento que el cifrado simétrico, genera mensajes cifrados más largos, requiere claves más grandes para mantener la seguridad.
Algoritmos Destacados
- RSA: Usa números primos grandes, permite cifrar y firmar digitalmente.
- DSA: Más seguro para firmas digitales.
- ElGamal: Libre, cifrado y firma con tiempos similares a RSA.
Criptosistema Híbrido
Combina lo mejor de ambos sistemas:
- Usa cifrado asimétrico para intercambiar una clave simétrica.
- Usa esa clave simétrica para el resto de la comunicación.
Cifrado Hash
Características
Generan una huella digital de tamaño fijo a partir de un mensaje. Cambiar un solo bit del mensaje genera una huella completamente distinta. Es imposible reconstruir el mensaje original desde el hash.
Aplicaciones
- Protección de contraseñas: Se almacena el hash de la clave, no la clave en sí.
- Integridad de datos: Garantiza que los datos no han sido modificados.
- Firmas digitales: Asegura autenticidad e integridad.
Algoritmos Destacados
- SHA-256: Amplio uso en la actualidad.
- MD5: Obsoleto, no es seguro.
- SHA-3: Diseñado para resistir ataques futuros.
Firma Digital
Concepto
Garantiza que el mensaje proviene del remitente y no ha sido alterado. Usa funciones hash y cifrado asimétrico.
Tipos
- Con árbitro: Un intermediario verifica y redistribuye el mensaje.
- Ordinaria: El emisor firma el hash del mensaje con su clave privada.
- Sellado de tiempo: Añade la hora exacta de la firma para trámites oficiales o facturas.
Certificados Digitales
Definición
Documento emitido por una Autoridad de Certificación (CA) que vincula una clave pública con una entidad. Garantiza la identidad del titular y la integridad del mensaje.
Usos
- Identificación de usuarios y servidores, cifrado de comunicaciones, firma digital.
Ejemplo
DNI electrónico: Incluye datos del titular, certificados y claves para autenticación y firma.
Protocolos SSL/TLS
Funcionamiento
- Aseguran la comunicación en redes inseguras como Internet.
SSL: Versión más antigua.
- TLS: Versión mejorada, usada en HTTPS.
Fases
- Saludo: Cifrado asimétrico para intercambiar claves públicas.
- Comunicación: Cifrado simétrico con claves de sesión dinámicas.