Tema 1
La criptografía estudia cómo proteger información para que solo pueda ser comprendida, verificada o validada por quienes corresponden. No se limita al cifrado: también abarca integridad, autenticación, firmas digitales, gestión de claves y mecanismos que permiten confiar en datos y comunicaciones.
Vivimos rodeados de información digital: mensajes, contraseñas, transferencias, documentos, claves de acceso, historiales médicos, contratos y credenciales. Gran parte de esos datos circula por redes públicas, se almacena en servidores remotos o se comparte entre sistemas que no siempre operan en entornos de confianza. La criptografía aparece precisamente para resolver ese problema.
Su función central es reducir la confianza ciega en el canal, en el almacenamiento y en los intermediarios. Si un atacante puede observar una comunicación, interceptar un archivo o modificar un mensaje, los mecanismos criptográficos bien aplicados deben seguir ofreciendo garantías concretas sobre qué puede leer, qué puede alterar y qué puede demostrar.
Por eso la criptografía es una pieza fundamental de la seguridad informática moderna. Está presente en HTTPS, en aplicaciones bancarias, en mensajería segura, en firmas electrónicas, en certificados digitales, en la protección de contraseñas y en casi cualquier sistema donde la confianza deba sostenerse con técnicas verificables.
La criptografía es la disciplina que diseña métodos matemáticos y algoritmos para proteger información frente a observación, alteración, suplantación o uso indebido. Su objetivo no es ocultar por completo la existencia de un dato, sino controlar qué operaciones pueden realizar terceros sobre ese dato aunque tengan acceso al medio de transmisión o almacenamiento.
En términos prácticos, la criptografía permite:
Sin criptografía, un tercero que intercepte un mensaje puede leerlo, modificarlo o reenviarlo haciéndose pasar por otro. También puede copiar bases de datos, obtener contraseñas mal almacenadas o negar haber emitido una orden si no existe un mecanismo que vincule de forma robusta la acción con su autor.
| Problema | Riesgo | Mecanismo criptográfico típico |
|---|---|---|
| Lectura no autorizada | Exposición de datos sensibles | Cifrado simétrico o asimétrico |
| Alteración de mensajes | Fraude, corrupción o manipulación | Hashes, MAC, firmas digitales |
| Suplantación de identidad | Acceso o emisión de mensajes falsos | Autenticación criptográfica, certificados |
| Negación de autoría | Imposibilidad de probar quién realizó una acción | Firmas digitales |
| Robo de contraseñas | Compromiso masivo de cuentas | Hashing con sal y algoritmos de derivación |
Los objetivos de seguridad indican qué garantía concreta queremos obtener. Son el corazón del tema y reaparecerán durante todo el curso.
En muchos sistemas reales estos objetivos deben coexistir. Cifrar un mensaje sin verificar su origen puede proteger su contenido, pero no impide que alguien inyecte datos falsos. Verificar integridad sin proteger confidencialidad deja la información expuesta. Diseñar seguridad exige entender qué combinación de propiedades se necesita.
La confidencialidad busca evitar que una persona no autorizada pueda comprender la información. El mecanismo más conocido para lograrlo es el cifrado, que transforma un texto legible en un texto cifrado utilizando un algoritmo y una clave.
Si el algoritmo es sólido y la clave permanece secreta, observar el tráfico o copiar un archivo no debería ser suficiente para conocer su contenido. Esta idea es esencial en correos, bases de datos, chats, discos cifrados, copias de seguridad y comunicaciones web seguras.
Sin embargo, confidencialidad no significa invisibilidad total. Un atacante puede no leer el contenido pero sí inferir metadatos: quién habla con quién, cuándo, cuánto volumen de datos se intercambia o qué servicio se está usando.
La integridad garantiza que el dato recibido o almacenado sea exactamente el mismo que fue emitido o guardado originalmente. Si un atacante modifica un importe en una transferencia, altera una actualización de software o cambia una instrucción dentro de una API, el sistema debe ser capaz de detectarlo.
Las funciones hash y los códigos de autenticación de mensajes son herramientas centrales para este objetivo. Un hash criptográfico produce una huella digital del contenido. Si cambia un solo bit del archivo o mensaje, la salida del hash cambia de forma drástica.
La autenticación responde a la pregunta: "¿quién está del otro lado?" o "¿quién produjo este dato?". En un sistema digital no alcanza con que un mensaje llegue correctamente; también importa saber si realmente proviene del usuario, servidor o aplicación que afirma haberlo enviado.
La autenticación puede apoyarse en claves compartidas, certificados digitales, firmas criptográficas o protocolos de desafío-respuesta. Es indispensable para evitar suplantaciones, fraudes y ataques donde un tercero se hace pasar por un actor legítimo.
Un navegador confía en un sitio HTTPS no porque vea un candado decorativo, sino porque existe un proceso criptográfico de autenticación del servidor basado en certificados y claves.
El no repudio busca que una persona o entidad no pueda negar de forma creíble una acción que realizó, como firmar un documento, aprobar una transacción o emitir una instrucción. Este objetivo es especialmente importante en entornos legales, financieros y administrativos.
La herramienta típica para proporcionar no repudio es la firma digital, siempre que esté correctamente implementada, vinculada a una identidad y respaldada por una gestión seria de claves. Si la clave privada está comprometida o compartida, el valor probatorio disminuye o desaparece.
Una confusión muy común es creer que hashing y cifrado son sinónimos. No lo son. El cifrado transforma datos de forma reversible si se posee la clave adecuada. El hashing, en cambio, transforma una entrada en una salida de longitud fija sin estar pensado para recuperar el original.
Una función hash criptográfica debe ser rápida de calcular, determinística y resistente a ataques como la búsqueda de colisiones o la inversión del proceso. Se usa para verificar integridad, proteger contraseñas de manera indirecta y construir otros mecanismos como HMAC, firmas y estructuras de verificación.
| Concepto | Propósito | Es reversible | Usa clave |
|---|---|---|---|
| Cifrado | Ocultar el contenido | Sí, con la clave correcta | Sí |
| Hashing | Resumir y verificar datos | No, en diseño normal | No |
| MAC/HMAC | Verificar integridad y autenticidad | No aplica | Sí |
La criptografía no es un concepto abstracto reservado a laboratorios o agencias estatales. Está integrada en herramientas que usamos todos los días.
Históricamente, la criptografía comenzó con métodos manuales o mecánicos como sustituciones, transposiciones y alfabetos desplazados. Eran útiles en su contexto, pero resultan débiles ante análisis sistemático y capacidad de cómputo moderna.
La criptografía moderna se apoya en matemáticas formales, modelos de seguridad, teoría de la complejidad y algoritmos diseñados para resistir ataques realistas. La diferencia no es solo tecnológica: también cambia la forma de razonar. Hoy no se busca "esconder el método", sino usar algoritmos públicos y revisados cuya seguridad dependa de la clave, no del secreto del diseño.
Uno de los principios más importantes en criptografía afirma que un sistema debe seguir siendo seguro aunque todo sea conocido públicamente excepto la clave. Esto evita depender de mecanismos oscuros o secretos frágiles.
En la práctica, esto significa que los algoritmos criptográficos confiables son públicos, analizados durante años por especialistas y adoptados por estándares abiertos. Confiar en un algoritmo casero porque nadie conoce su funcionamiento suele ser un error serio.
En casi todo sistema criptográfico, la clave es el activo más sensible. Un algoritmo fuerte con una clave débil o mal gestionada deja de ser seguro. Las claves deben generarse con suficiente aleatoriedad, almacenarse de forma protegida, rotarse cuando corresponde y limitarse a los usos previstos.
Muchos incidentes etiquetados como "fallas de criptografía" en realidad son fallas de gestión de claves: claves hardcodeadas en código fuente, reutilización indebida, almacenamiento sin protección, exposición en logs o distribución insegura.
La criptografía es poderosa, pero no mágica. No soluciona por sí sola todos los problemas de seguridad.
Por eso siempre debe entenderse como una capa dentro de un sistema más amplio de seguridad.
Aplicar criptografía incorrectamente puede ser tan peligroso como no aplicarla. Algunos errores frecuentes son usar algoritmos obsoletos, inventar protocolos propios, reutilizar claves o vectores de inicialización, elegir modos de cifrado inseguros, almacenar secretos en texto plano o usar hashes rápidos para contraseñas.
En seguridad real, la diferencia entre un sistema robusto y uno vulnerable rara vez está en haber oído hablar de AES o SHA-256. La diferencia suele estar en cómo se implementan, integran, parametrizan y operan esas herramientas.
Este curso recorrerá varias áreas complementarias de la criptografía.
Supongamos que un usuario entra a una plataforma de home banking. Varias propiedades criptográficas actúan al mismo tiempo:
Este ejemplo muestra una idea central: en la práctica, la seguridad no depende de una única técnica sino de varias piezas criptográficas coordinadas.
La criptografía es una de las herramientas más importantes para construir confianza en sistemas digitales. Permite que datos sensibles permanezcan reservados, que los cambios no pasen inadvertidos, que las identidades puedan verificarse y que ciertas acciones queden respaldadas de forma fuerte.
En el próximo tema recorreremos la historia de la criptografía, desde los cifrados clásicos hasta los esquemas modernos, para entender cómo evolucionaron las técnicas y por qué hoy confiamos en algoritmos públicos y formalmente analizados.