9 puntos por GN⁺ 2024-05-03 | 1 comentarios | Compartir por WhatsApp

Resumen del curso de criptografía en línea

  • Instructor: Dan Boneh, Stanford University
  • Esta página incluye todas las clases del curso de criptografía gratuito.
  • Para inscribirte formalmente en el curso y seguirlo oficialmente (incluyendo tareas, proyectos y examen final), debes visitar la página del curso en Coursera.
  • Texto: un texto gratuito para este curso que profundiza con pruebas de seguridad y muchos ejercicios (A Graduate Course in Applied Cryptography de D. Boneh y V. Shoup)

Resumen del contenido del curso por semana

  • Semana 1: Visión general del curso y cifrado de flujo (capítulos 2-3 del texto)

    • Panorama de la criptografía e historia
    • Propiedades de la probabilidad discreta
    • One-time pad y cifrado de flujo
    • Ataques y errores en el cifrado de flujo
    • Casos reales de cifrado de flujo
    • Definición de cifrado seguro, seguridad de PRG y seguridad semántica
  • Semana 2: Cifrado por bloques (capítulos 4-5 del texto)

    • Resumen de cifrado por bloques
    • Cifrado DES, ataques de fuerza bruta, etc.
    • Cifrado de bloques AES, cifrado de bloques a partir de PRG
    • Uso de cifrados por bloques (clave de un solo uso, clave reutilizable)
    • Seguridad CPA, modos de operación CBC/CTR
  • Semana 3: Integridad de mensajes (capítulos 6-8 del texto)

    • Definición de MAC y MAC basado en PRF
    • Construcciones CBC-MAC, NMAC, PMAC, etc.
    • Visión general de funciones hash resistentes a colisiones
    • Ataque del cumpleaños, paradigma Merkle-Damgård
    • HMAC y ataque de temporización
  • Semana 4: Cifrado autenticado (capítulo 9 del texto)

    • Ataques activos contra cifrados seguros ante CPA
    • Ataque de texto cifrado elegido y composiciones a partir de cifrado y MAC
    • Estudio de caso de TLS 1.2, ataque de padding de CBC
    • Derivación de claves, cifrado determinista, cifrado con preservación de formato
  • Semana 5: Intercambio de claves básico (capítulo 10 del texto)

    • Tercero de confianza confiable, acertijo de Merkle
    • Protocolo Diffie-Hellman, cifrado de clave pública
    • Teoría básica de operaciones modulares (Fermat, Euler, etc.)
    • Problemas fáciles y difíciles (algoritmos aritméticos, problema de tiempo polinomial)
  • Semana 6: Criptografía de clave pública (capítulos 11-12 del texto)

    • Criptografía de clave pública basada en permutaciones trampa (definición, seguridad y construcción)
    • Permutación trampa RSA y PKCS1
    • Unidireccionalidad de RSA y uso real
    • Sistema RSA ElGamal y su seguridad
    • Resumen de la criptografía de clave pública
  • Semana 7: Firma digital (capítulos 13-14 del texto)

    • Firma digital y contenido de firmas basadas en hash

Opinión de GN⁺

  • Este curso combina la teoría base de la criptografía moderna con algoritmos usados en la práctica, por lo que parece un excelente punto de partida para quienes se inician en criptografía. En especial, el hecho de que lo imparta el reconocido profesor Dan Boneh aporta mucha confianza.

  • Además de la teoría criptográfica, también aborda consideraciones al diseñar criptografía segura, vulnerabilidades y técnicas de ataque que pueden surgir en escenarios reales, por lo que puede ser útil para desarrolladores.

  • Además del curso, ofrece un texto gratuito con contenidos más profundos y abundantes ejercicios, por lo que también parece útil para el estudio avanzado de criptografía.

  • Sin embargo, al haber mucho contenido centrado en teoría, puede haber cierta dificultad para principiantes que no tengan una base matemática suficiente. Un conocimiento previo de álgebra lineal o matemáticas discretas será de ayuda.

  • Dado que las áreas de aplicación de la criptografía como blockchain y activos digitales siguen expandiéndose, se espera que un dominio sólido de los fundamentos y su aplicación práctica pueda contribuir mucho al crecimiento profesional de un desarrollador.

1 comentarios

 
GN⁺ 2024-05-03
Comentario de Hacker News
  • La clase CS255 Intro to Cryptography de Stanford fue una de las clases más impresionantes que tomé. Dan Boneh tiene una forma de enseñanza sobresaliente.
    • También recomiendo otros cursos de Stanford como CS253 Web Security y CS356 Topics in Computer and Network Security.
  • Hace algunos años tomé su clase en línea de criptografía y fue realmente excelente.
    • Tenía formación en matemáticas, pero me di cuenta de que no quiero convertirme en un criptógrafo profesional.
    • Me sorprendió mucho la forma en que usaba demos y juegos para identificar un flujo de bits aleatorio dentro de un flujo de bytes cifrado.
  • Es un gran curso, pero el tiempo estimado para completarlo (23 horas) puede variar mucho según el nivel de conocimiento previo de cada persona, así que conviene prepararse bien y ajustar el ritmo.
  • Parece que muchas personas quieren aprender criptografía de forma práctica sin tanta teoría. A esas personas les recomiendo cryptopals.com.
  • Sería genial contar con material más práctico y orientado a ingeniería sobre cómo usar librerías criptográficas sin enfocarse tanto en las matemáticas.
    • Más allá de los detalles de RSA, necesitamos saber cómo componer otros elementos fundamentales y diseñar un sistema de forma segura con las propiedades que se deseen.
  • Si quieres practicar lo aprendido en formato "capture the flag", te recomiendo https://cryptohack.org/. Es un excelente sitio.
  • Dan Boneh también es asesor del equipo de investigación crypto de a16z y produce mucho contenido relacionado con blockchain con ellos.
  • El libro que coescribió, "A Graduate Course in Applied Cryptography", me fue de gran ayuda: https://toc.cryptobook.us/
  • Quisiera aprender criptografía de curva elíptica (ECC) y criptografía resistente a la computación cuántica (PQC), pero parece que la mayoría de los cursos se quedan en un nivel similar y me parece una lástima. Me gustaría que hubiera un curso de seguimiento.
  • Tomé su curso presencial y el de Coursera, y en ambos es un gran instructor. Lo recomiendo ampliamente.