Contenido del curso

Criptografía Asimétrica

Qué es criptografía y para qué sirve

Resumen

La criptografía es el conjunto de técnicas y prácticas que permiten la comunicación segura en ambientes adversariales, donde múltiples partes podrían intentar descifrar tus mensajes. Si trabajas en desarrollo de software, seguridad informática o sistemas distribuidos, entender sus fundamentos te ayuda a proteger información sensible y diseñar protocolos confiables.

Piensa en la criptografía como las cartas cifradas de María de Escocia: una conspiración solo funciona si nadie más puede leerla. Esa misma lógica sigue vigente cuando proteges contraseñas, transacciones o comunicaciones digitales.

¿Qué significa que la criptografía opere en un ambiente adversarial?

Un ambiente adversarial es aquel donde no puedes confiar en todas las partes que tienen acceso al canal de comunicación. Cualquiera puede intentar interceptar, modificar o suplantar el mensaje, y por eso necesitas herramientas que te protejan sin depender de la buena fe de los participantes.

¿Qué es un ambiente adversarial en criptografía? Es un entorno donde múltiples actores pueden intentar descifrar o manipular la comunicación, y no debes confiar por defecto en ninguno de ellos.

Las técnicas criptográficas se enfrentan a este escenario mediante la composición de primitivas criptográficas, que funcionan como pequeños Legos: piezas pequeñas que conectas entre sí para garantizar propiedades específicas sobre la información [0:45].

¿Cuáles son las cuatro propiedades que garantiza la criptografía?

Cada primitiva apunta a asegurar al menos una de estas cuatro propiedades fundamentales de la información:

  • Confidencialidad: si alguien no tiene permiso para leer un mensaje, no debería poder leerlo.
  • Integridad: si un archivo o pieza de datos se presentó de cierta forma, no debe haber sido modificada cuando vuelve a presentarse.
  • Autenticidad: garantiza que una entidad específica fue quien emitió la información.
  • No repudio: el emisor no puede negar después haber realizado una afirmación o emitido un resultado [1:15].

Estas cuatro propiedades son la base sobre la que construyes cualquier sistema seguro. Y aquí viene lo interesante: rara vez una sola primitiva cubre todo, por eso las combinas.

¿Qué diferencia hay entre una primitiva y un criptosistema?

Una primitiva es la pieza individual; un criptosistema es la composición de varias primitivas para alcanzar objetivos de seguridad concretos. También se conocen como protocolos criptográficos, y suelen apuntar a un conjunto definido de metas de seguridad usando esas piezas básicas como bloques de construcción [2:00].

¿Qué es un criptosistema? Es un protocolo criptográfico que combina varias primitivas para cumplir objetivos de seguridad como confidencialidad, integridad, autenticidad o no repudio.

La diferencia es práctica: una primitiva sola te da una propiedad puntual, pero un criptosistema bien diseñado te entrega garantías completas sobre toda una comunicación.

¿Qué vas a aprender y qué necesitas para empezar?

A lo largo del recorrido vas a desarrollar cuatro capacidades concretas:

  1. Reconocer y utilizar las principales primitivas criptográficas.
  2. Desarrollar estrategias basadas en esas primitivas para construir sistemas y protocolos.
  3. Familiarizarte con el funcionamiento de criptosistemas reales y las propiedades que entregan.
  4. Identificar vectores de ataque y riesgos en sistemas criptográficos [2:30].

Requisitos técnicos previos

Necesitas dos cosas para seguir el ritmo sin tropiezos:

  • Manejo intermedio de un lenguaje de programación que cuente con una librería estándar de criptografía. La mayoría ya incluye una, solo verifica cuál corresponde al tuyo.
  • Comodidad con conceptos algebraicos y matemáticos básicos. No son exageradamente complejos, pero sí necesitas familiaridad para seguir las explicaciones [3:00].

Las tres categorías de primitivas que vas a explorar

Las primitivas criptográficas se agrupan según cómo manejan las llaves o contraseñas:

  • Primitivas sin llave ni contraseña.
  • Primitivas que usan una sola llave o contraseña.
  • Primitivas que usan dos contraseñas (una pública y una privada).

Esta clasificación te va a servir como mapa mental cuando empieces a combinarlas para armar tus propios criptosistemas [3:30].

Tu primer reto práctico de cifrado

Antes de avanzar, hay un ejercicio que vale la pena hacer. Usa el link de la descripción para escribir tus expectativas del curso, y luego ciframos esas expectativas de alguna forma que sea predecible para tus compañeros, es decir, que tengan pistas para descifrarlas.

Deja tu mensaje cifrado en los comentarios junto con la pista de cómo resolverlo, y revisa los de otras personas para intentar romper su cifrado. ¿Qué método elegiste tú para encriptar?