20 Cryptography

20 Cryptography

Nota importada desde Inbox durante consolidacion bulk.

20 - Cryptography

1. Resumen Ejecutivo

Este documento ofrece un análisis exhaustivo de la Criptografía, el arte y la ciencia de asegurar la información y las comunicaciones mediante el uso de códigos. Se exploran los conceptos fundamentales que sustentan la seguridad de los datos, incluyendo los objetivos de confidencialidad, integridad, autenticación y no repudio. El texto detalla una amplia gama de técnicas y algoritmos criptográficos, desde los cifrados simétricos como AES hasta los asimétricos como RSA, así como las funciones hash esenciales como SHA y MD5. Además, se presenta un catálogo de herramientas utilizadas para implementar estas técnicas, se describen las contramedidas necesarias para proteger los sistemas criptográficos contra diversos ataques y se explican los métodos de criptoanálisis empleados para detectar vulnerabilidades. El objetivo es proporcionar una comprensión integral de cómo la criptografía protege la infraestructura digital moderna y cuáles son las mejores prácticas para su implementación y defensa.

2. Conceptos de Criptografía

La criptografía es la práctica de ocultar información convirtiendo texto plano legible en un texto cifrado ilegible mediante un esquema de encriptación y una clave. Su propósito es proteger datos sensibles tanto en tránsito como en reposo.

  • Objetivos Fundamentales de la Criptografía
    • Confidencialidad: Asegura que la información solo sea accesible para las partes autorizadas.
    • Integridad: Garantiza que los datos no han sido alterados o modificados de forma no autorizada.
    • Autenticación: Confirma la identidad de las partes involucradas en la comunicación.
    • No Repudio: Proporciona pruebas de que el emisor envió el mensaje y el receptor lo recibió, impidiendo que cualquiera de ellos niegue la transacción. (p. 5)
  • Tipos de Criptografía
    • Criptografía Simétrica (de Clave Secreta): Utiliza una única clave tanto para el cifrado como para el descifrado. Es un método rápido y eficiente, ideal para grandes volúmenes de datos. Sin embargo, su principal desafío es el intercambio seguro de la clave secreta entre las partes. Ejemplos de algoritmos incluyen DES, AES y Blowfish. (p. 6)
    • Criptografía Asimétrica (de Clave Pública): Utiliza un par de claves matemáticamente relacionadas: una clave pública, que se distribuye libremente, y una clave privada, que se mantiene en secreto. Un mensaje cifrado con la clave pública solo puede ser descifrado con su clave privada correspondiente. Este método resuelve el problema de la distribución de claves y es la base de las firmas digitales y la infraestructura de clave pública (PKI). Ejemplos de algoritmos son RSA y ECC. (p. 6)
  • Conceptos Clave
    • Texto Plano (Plaintext): El mensaje original en formato legible.
    • Texto Cifrado (Ciphertext): El mensaje en formato codificado e ilegible.
    • Clave (Key): Información secreta que determina la salida del algoritmo criptográfico.
    • Cifrado (Cipher): El algoritmo utilizado para realizar la encriptación y desencriptación.
    • Infraestructura de Clave Pública (PKI): "Un conjunto de hardware, software, personas, políticas y procedimientos necesarios para crear, gestionar, distribuir, usar, almacenar y revocar certificados digitales." (p. 70). La PKI es fundamental para vincular identidades con claves públicas a través de Autoridades de Certificación (CA).
    • Firma Digital: Un esquema matemático que utiliza la criptografía asimétrica para verificar la autenticidad e integridad de un mensaje digital. Se crea cifrando un hash del mensaje con la clave privada del remitente. (p. 79)

3. Técnicas de Criptografía

Las técnicas criptográficas se basan en diferentes algoritmos matemáticos diseñados para cumplir con los objetivos de seguridad. Se pueden clasificar de la siguiente manera:

  • Algoritmos de Cifrado Simétrico
    • AES (Advanced Encryption Standard): Es el estándar de cifrado actual utilizado por el gobierno de EE. UU. Es un cifrado por bloques con un tamaño de bloque de 128 bits y tamaños de clave de 128, 192 o 256 bits. Es altamente seguro y eficiente tanto en hardware como en software. (p. 16)
    • DES (Data Encryption Standard): Un antiguo estándar de cifrado por bloques con un tamaño de clave de 56 bits. Hoy en día se considera inseguro debido a su pequeña longitud de clave, siendo vulnerable a ataques de fuerza bruta. Su variante, 3DES, aplica el algoritmo DES tres veces con claves diferentes para aumentar la seguridad, pero es considerablemente más lenta. (p. 15)
    • Blowfish y Twofish: Blowfish es un cifrado por bloques rápido y flexible con una longitud de clave variable de 32 a 448 bits. Twofish fue uno de los finalistas del concurso AES y opera con bloques de 128 bits y claves de hasta 256 bits. (p. 19-20)
    • RC4, RC5 y RC6: RC4 es un cifrado de flujo, mientras que RC5 y RC6 son cifrados por bloques. Son conocidos por su velocidad y simplicidad. RC4 se ha utilizado ampliamente en protocolos como SSL y WEP, pero se han descubierto vulnerabilidades significativas en él. (p. 17-18)
  • Algoritmos de Cifrado Asimétrico
    • RSA (Rivest-Shamir-Adleman): Es el algoritmo asimétrico más utilizado. Su seguridad se basa en la dificultad de factorizar el producto de dos números primos grandes. Se utiliza para el cifrado, la firma digital y el intercambio de claves. (p. 28)
    • Diffie-Hellman: Un protocolo de intercambio de claves que permite a dos partes establecer una clave secreta compartida a través de un canal de comunicación inseguro. No cifra ni autentica mensajes por sí mismo, pero es fundamental para crear canales seguros. (p. 33)
    • Criptografía de Curva Elíptica (ECC): Una alternativa moderna a RSA que ofrece el mismo nivel de seguridad con claves mucho más cortas, lo que la hace ideal para dispositivos con recursos limitados, como los teléfonos móviles. (p. 45)
  • Funciones Hash (Message Digest)
    • MD5 (Message Digest 5): Produce un valor hash de 128 bits. Es muy rápido, pero se ha demostrado que es vulnerable a colisiones, lo que significa que diferentes entradas pueden producir el mismo hash. Ya no se considera seguro para aplicaciones como las firmas digitales. (p. 38)
    • SHA (Secure Hash Algorithm): Una familia de funciones hash desarrollada por el NIST.
      • SHA-1: Produce un hash de 160 bits. Al igual que MD5, también se ha demostrado que es vulnerable a colisiones y su uso está obsoleto.
      • SHA-2: Incluye variantes como SHA-256 y SHA-512, que producen hashes de 256 y 512 bits, respectivamente. Actualmente se consideran seguras y se utilizan ampliamente.
      • SHA-3: Es el estándar más reciente, con un diseño interno diferente a SHA-2 para diversificar los algoritmos disponibles. (p. 40)
    • HMAC (Hash-based Message Authentication Code): Un mecanismo para verificar tanto la integridad como la autenticidad de un mensaje. Combina una función hash (como SHA-256) con una clave secreta. (p. 42)

4. Herramientas de Criptografía

El documento describe varias herramientas que permiten a los usuarios y profesionales implementar funciones criptográficas para proteger datos.

  • Herramientas de Cifrado de Archivos y Texto
    • BCTextEncoder: Una utilidad para cifrar texto confidencial utilizando algoritmos simétricos y de clave pública. El resultado es un bloque de texto que se puede enviar de forma segura. (p. 66)
    • AxCrypt: Herramienta popular para el cifrado de archivos en Windows, que se integra con el menú contextual para facilitar su uso.
    • Secret Space Encryptor: Una aplicación móvil que integra un gestor de contraseñas con cifrado de texto y archivos, utilizando algoritmos como AES, RC6 y Twofish. (p. 68)
  • Toolkits de Criptografía
    • OpenSSL: Un robusto kit de herramientas de código abierto que implementa los protocolos SSL/TLS. Es una librería fundamental en la mayoría de los sistemas operativos tipo Unix y servidores web para gestionar certificados, claves y realizar operaciones criptográficas. (p. 87)
    • wolfSSL: Una librería ligera de SSL/TLS diseñada para sistemas embebidos y dispositivos IoT, priorizando la velocidad y un bajo consumo de recursos. (p. 87)
    • PyCrypto: Una librería para el lenguaje de programación Python que proporciona implementaciones de algoritmos de cifrado y hash. (p. 87)
  • Herramientas de Cifrado de Disco
    • VeraCrypt: Software de código abierto para el cifrado de disco en tiempo real ("on-the-fly"). Permite crear volúmenes cifrados (contenedores) o cifrar particiones y discos duros completos. (p. 114)
    • BitLocker: La solución de cifrado de disco completo integrada en las versiones profesionales de Microsoft Windows. Utiliza el chip TPM (Trusted Platform Module) para proteger las claves de cifrado. (p. 116)
    • FileVault: La solución de cifrado de disco completo nativa de macOS de Apple. (p. 119)
  • Calculadoras de Hash
    • HashMyFiles: Una utilidad que permite calcular los hashes MD5, SHA1, SHA-256 y otros para uno o más archivos, facilitando la verificación de su integridad. (p. 62)
    • MD5 & SHA1 Hash Generator: Herramientas en línea o aplicaciones de escritorio que generan rápidamente el valor hash de un archivo o texto. (p. 39)

5. Contramedidas de Criptografía

La seguridad de un sistema criptográfico no solo depende de la fortaleza del algoritmo, sino también de su correcta implementación y de la protección contra ataques específicos. Las contramedidas se centran en prevenir el criptoanálisis exitoso.

  • Defensa General contra Ataques a la Criptografía
    • Uso de Algoritmos Robustos y Estándares: Emplear algoritmos que hayan sido examinados públicamente y estandarizados por organismos como el NIST (ej. AES, SHA-2, SHA-3). Evitar algoritmos obsoletos (DES, MD5) o propietarios ("security through obscurity").
    • Longitud de Clave Adecuada: Utilizar longitudes de clave que sean resistentes a los ataques de fuerza bruta con la tecnología actual. Por ejemplo, para RSA se recomiendan claves de 2048 bits o más, y para AES, 128 bits como mínimo.
    • Gestión Segura de Claves: Proteger las claves criptográficas durante todo su ciclo de vida (generación, almacenamiento, distribución, rotación y destrucción). El uso de Módulos de Seguridad de Hardware (HSM) es una práctica recomendada para almacenar claves críticas. (p. 1157)
    • Implementación de Protocolos Seguros: Utilizar protocolos de alto nivel como TLS para asegurar la comunicación en tránsito, ya que gestionan la negociación de algoritmos, la autenticación y el intercambio de claves de manera segura.
  • Defensa contra Criptoanálisis de Canal Lateral (Side-Channel)
    • Este tipo de ataque explota la información filtrada por la implementación física de un criptosistema, en lugar de atacar el algoritmo directamente.
    • Contramedidas:
      • Implementar protocolos a prueba de Análisis de Potencia Diferencial (DPA) que eviten la correlación entre el consumo de energía y los datos procesados.
      • Añadir ruido o aleatoriedad temporal para ofuscar el tiempo de ejecución de las operaciones.
      • Utilizar blindaje físico para bloquear las emisiones electromagnéticas.
      • Implementar técnicas de cegado (blinding) que aleatorizan los valores intermedios antes de una operación con clave privada. (p. 137)
  • Defensa contra Ataques de Colisión de Hash
    • Estos ataques buscan encontrar dos entradas diferentes que produzcan el mismo valor hash, lo que puede utilizarse para falsificar firmas digitales.
    • Contramedidas: Utilizar funciones hash resistentes a colisiones, como SHA-256 o superiores. El documento establece que para MD5 y SHA-1, "se han encontrado colisiones". (p. 1077)

6. Técnicas de Detección de Criptografía

Las técnicas de detección en el contexto de la criptografía se enfocan en identificar debilidades en los algoritmos (criptoanálisis), detectar implementaciones vulnerables o reconocer el uso de criptografía en actividades maliciosas.

  • Criptoanálisis
    • Es el estudio de los métodos para descifrar información sin acceso a la clave. Es la principal forma de "detectar" vulnerabilidades en un sistema criptográfico.
    • Criptoanálisis Lineal y Diferencial: Métodos avanzados utilizados para analizar cifrados por bloques. El análisis lineal utiliza una aproximación lineal para describir el comportamiento del cifrado, mientras que el análisis diferencial examina cómo las diferencias en la entrada afectan las diferencias resultantes en la salida. La detección de correlaciones estadísticas permite deducir la clave. (p. 122)
    • Análisis de Frecuencia: Una técnica básica de criptoanálisis que funciona analizando la frecuencia de las letras o grupos de letras en un texto cifrado. Es eficaz contra cifrados de sustitución simples, pero ineficaz contra algoritmos modernos. (p. 124)
  • Análisis de Canal Lateral (Side-Channel Analysis)
    • Más que un ataque, es una técnica de detección que consiste en monitorear factores físicos para obtener información sobre claves o datos secretos.
    • Métodos de Detección:
      • Análisis de Consumo de Energía: Medir las fluctuaciones de energía de un dispositivo mientras realiza operaciones criptográficas.
      • Análisis de Temporización (Timing Attack): Medir el tiempo que tarda un dispositivo en realizar diferentes cálculos. Las variaciones pueden filtrar información sobre la clave.
      • Análisis Electromagnético: Detectar las emisiones electromagnéticas de un dispositivo. (p. 136)
  • Detección de Implementaciones Inseguras
    • Consiste en escanear sistemas y aplicaciones para identificar el uso de protocolos y algoritmos criptográficos débiles o vulnerables.
    • Herramientas de Escaneo SSL/TLS: Herramientas como SSL Labs de Qualys o escáneres de vulnerabilidades pueden analizar un servidor web para detectar el uso de versiones obsoletas de SSL/TLS, cifrados débiles (como RC4), o longitudes de clave cortas.

7. Conclusión

La criptografía es un pilar indispensable de la seguridad digital, proporcionando las herramientas esenciales para garantizar la confidencialidad, integridad y autenticidad en un mundo interconectado. Como se ha demostrado, su alcance abarca desde algoritmos simétricos rápidos y eficientes como AES hasta sistemas de clave pública robustos como RSA y ECC, cada uno con un propósito específico. Sin embargo, la seguridad no se logra simplemente eligiendo un algoritmo fuerte. Los riesgos asociados con una mala gestión de claves, implementaciones defectuosas y ataques sofisticados como el criptoanálisis de canal lateral son significativos. Por lo tanto, es crucial que los profesionales de la seguridad no solo comprendan los principios teóricos de la criptografía, sino que también apliquen rigurosamente las contramedidas y técnicas de detección para construir sistemas verdaderamente resilientes y proteger la información contra las amenazas en constante evolución.

Guía de Estudio: Principios de Criptografía y Seguridad de Datos

Esta guía de estudio proporciona una visión estructurada y completa de los conceptos, técnicas y herramientas fundamentales de la criptografía. Su propósito es servir como un recurso de aprendizaje y repaso para estudiantes y profesionales que se preparan para certificaciones de seguridad o que desean consolidar su conocimiento en la protección de la información. Se cubrirán los objetivos de la criptografía, los diferentes tipos de algoritmos de cifrado, la infraestructura de clave pública (PKI), los métodos de ataque y las contramedidas esenciales para garantizar la seguridad de los datos en el mundo digital.


I. Resumen de Conceptos Fundamentales

Esta sección define los pilares sobre los que se construye la criptografía moderna.

  • Criptografía
    • Es la práctica de ocultar información convirtiendo datos legibles ( plaintext) en un código ilegible (ciphertext) mediante el uso de algoritmos y claves. Su nombre proviene del griego kryptos ("oculto") y graphia ("escritura"). Se utiliza para proteger datos confidenciales como correos electrónicos, transacciones web y datos corporativos.
  • Objetivos de la Criptografía
    • Confidencialidad: Garantiza que la información solo sea accesible para las personas autorizadas.
    • Integridad: Asegura que los datos no han sido alterados de forma no autorizada.
    • Autenticación: Confirma que una comunicación, documento o dato es genuino y proviene de una fuente legítima.
    • No repudio: Proporciona una garantía de que el emisor no puede negar haber enviado un mensaje y el receptor no puede negar haberlo recibido.
  • Tipos de Cifrado
    • Cifrado Simétrico (de clave secreta)
      • Utiliza una única clave tanto para el proceso de cifrado como para el de descifrado. Esta clave debe ser compartida de forma segura entre el emisor y el receptor.
      • Fortalezas: Es más rápido y computacionalmente menos intensivo que el cifrado asimétrico.
      • Debilidades: La gestión y distribución segura de las claves es un desafío significativo, especialmente a gran escala.
      • Ejemplos: DES, 3DES, AES, Blowfish, RC5.
    • Cifrado Asimétrico (de clave pública)
      • Utiliza un par de claves matemáticamente relacionadas: una clave pública (que se puede compartir libremente) para cifrar y una clave privada (que se mantiene en secreto) para descifrar.
      • Fortalezas: Resuelve el problema de la distribución de claves y permite el uso de firmas digitales para garantizar la autenticidad y el no repudio.
      • Debilidades: Es computacionalmente más lento y costoso que el cifrado simétrico.
      • Ejemplos: RSA, Diffie-Hellman, Criptografía de Curva Elíptica (ECC).
  • Funciones Hash (Message Digest)
    • Son algoritmos que calculan una representación de cadena de bits de tamaño fijo y único, llamada message digest (resumen del mensaje), a partir de un bloque de información de cualquier tamaño.
    • Son funciones de un solo sentido (one-way), lo que significa que es computacionalmente inviable revertir el proceso para obtener la entrada original a partir del hash.
    • Su principal objetivo es garantizar la integridad de los datos. Un cambio mínimo en la entrada produce un hash drásticamente diferente.
  • Cifrados (Ciphers)
    • Un cifrado es un algoritmo utilizado para realizar el cifrado y descifrado. Se clasifican en:
      • Cifrados Clásicos: Operan sobre letras del alfabeto. Incluyen cifrados de sustitución (reemplazan letras) y cifrados de transposición (reordenan letras).
      • Cifrados Modernos: Se basan en el tipo de clave utilizada (clave privada o clave pública) y en el tipo de datos de entrada (cifrado de bloque o cifrado de flujo).

II. Técnicas / Métodos / Procesos Clave

Esta sección detalla los algoritmos y marcos de trabajo más importantes en criptografía.

  • Algoritmos de Cifrado Simétrico Notables
    • Data Encryption Standard (DES): Un cifrado de bloque que procesa datos en bloques de 64 bits utilizando una clave de 56 bits. Hoy en día se considera inseguro debido a su pequeña longitud de clave, vulnerable a ataques de fuerza bruta.
    • Triple DES (3DES): Una solución provisional que aplica el algoritmo DES tres veces con tres claves diferentes para aumentar la seguridad.
    • Advanced Encryption Standard (AES): El estándar actual del gobierno de EE. UU. Es un cifrado de bloque con un tamaño de bloque de 128 bits y longitudes de clave de 128, 192 o 256 bits. Es eficiente tanto en software como en hardware.
    • Familia RC (RC4, RC5, RC6): RC4 es un cifrado de flujo, mientras que RC5 y RC6 son cifrados de bloque. RC5 es notable por su variabilidad en el tamaño del bloque, el tamaño de la clave y el número de rondas.
    • Blowfish: Un cifrado de bloque simétrico diseñado para ser rápido y una alternativa a DES. Opera en bloques de 64 bits y tiene una longitud de clave variable de 32 a 448 bits.
  • Algoritmos y Protocolos de Clave Pública
    • Rivest-Shamir-Adleman (RSA): El criptosistema de clave pública más utilizado, tanto para cifrado como para firmas digitales. Su seguridad se basa en la dificultad computacional de factorizar dos números primos grandes.
    • Diffie-Hellman: Un protocolo de intercambio de claves que permite a dos partes establecer una clave secreta compartida a través de un canal inseguro. No cifra los datos directamente y es vulnerable a ataques Man-in-the-Middle si no se utiliza con un método de autenticación.
    • Criptografía de Curva Elíptica (ECC): Un enfoque moderno de la criptografía de clave pública que puede proporcionar el mismo nivel de seguridad que RSA pero con claves mucho más cortas, lo que la hace más eficiente.
  • Funciones Hash Populares
    • MD5 (Message Digest 5): Produce un hash de 128 bits. Es rápido pero ya no se considera seguro para aplicaciones criptográficas debido a que se han encontrado colisiones, lo que compromete su resistencia.
    • SHA (Secure Hash Algorithm): Es una familia de funciones hash.
      • SHA-1: Produce un hash de 160 bits. Aunque fue muy popular, también se ha demostrado que es vulnerable a colisiones y su uso ha sido desaconsejado.
      • SHA-2: Incluye variantes como SHA-256 (256 bits) y SHA-512 (512 bits). Actualmente son los estándares recomendados para la mayoría de las aplicaciones.
      • SHA-3: Es el estándar más reciente y utiliza una estructura interna diferente (construcción de esponja) para ofrecer una alternativa segura a SHA-2.
    • HMAC (Hash-based Message Authentication Code): Un tipo de código de autenticación de mensajes que combina una función hash criptográfica con una clave secreta para verificar simultáneamente la integridad de los datos y la autenticación del mensaje.
  • Infraestructura de Clave Pública (PKI)
    • Es un sistema de hardware, software, políticas y procedimientos para crear, gestionar, distribuir y revocar certificados digitales.
    • Su propósito es vincular de forma fiable las claves públicas a identidades específicas.
    • Componentes Clave:
      • Autoridad de Certificación (CA): Emite y verifica los certificados digitales.
      • Autoridad de Registro (RA): Verifica la identidad de los solicitantes de certificados antes de que la CA los emita.
      • Autoridad de Validación (VA): Almacena y proporciona información sobre el estado de los certificados (validez o revocación).
      • Certificado Digital: Un documento electrónico que utiliza una firma digital para vincular una clave pública con una identidad.

III. Herramientas / Recursos / Ejemplos Notables

Esta sección enumera software, servicios y aplicaciones prácticas de la criptografía.

  • Herramientas y Toolkits de Criptografía
    • OpenSSL: Un robusto toolkit de código abierto para implementar los protocolos SSL/TLS. Incluye una amplia biblioteca de funciones criptográficas y una herramienta de línea de comandos.
    • HashMyFiles: Una utilidad que permite calcular los hashes MD5 y SHA1 de uno o más archivos para verificar su integridad.
    • BCTextEncoder: Una herramienta para cifrar y codificar texto utilizando algoritmos simétricos y de clave pública.
    • VeraCrypt: Un software de código abierto para el cifrado de discos sobre la marcha (on-the-fly) que permite crear volúmenes cifrados.
    • GnuPG (GPG): Una implementación libre del estándar OpenPGP que permite cifrar y firmar datos y comunicaciones. Es un reemplazo de PGP.
  • Aplicaciones de la Criptografía
    • Pretty Good Privacy (PGP): Un programa de software para el cifrado y la autenticación de correos electrónicos. Es un criptosistema híbrido porque combina la velocidad del cifrado simétrico para los mensajes con la comodidad del cifrado de clave pública para la distribución de claves.
    • Secure Sockets Layer (SSL) y Transport Layer Security (TLS): Protocolos criptográficos diseñados para proporcionar comunicaciones seguras a través de una red informática. Son la base de HTTPS. Utilizan un proceso de handshake para autenticar al servidor (y opcionalmente al cliente) y negociar una clave de sesión simétrica.
    • Blockchain: Una tecnología de registro distribuido que utiliza la criptografía de forma intensiva. Cada bloque está vinculado al anterior mediante el hash criptográfico del bloque previo, creando una cadena segura e inmutable. También utiliza firmas digitales para validar las transacciones.
  • Autoridades de Certificación (CAs) Comerciales
    • Son entidades de confianza que emiten certificados digitales para sitios web, empresas e individuos.
    • Ejemplos: DigiCert , Comodo (ahora Sectigo) , IdenTrust , GoDaddy.

IV. Contramedidas / Soluciones / Buenas Prácticas

Esta sección aborda cómo se rompen los sistemas criptográficos y cómo defenderse.

  • Criptoanálisis
    • Es el estudio de los métodos para obtener el significado de la información cifrada sin acceso a la clave secreta. Se enfoca en explotar vulnerabilidades en algoritmos, protocolos o implementaciones.
  • Tipos de Ataques Criptográficos
    • Ataque de solo texto cifrado (Ciphertext-only Attack): El atacante solo tiene acceso a una colección de textos cifrados.
    • Ataque de texto plano conocido (Known-plaintext Attack): El atacante posee muestras tanto del texto plano como de su correspondiente texto cifrado.
    • Ataque de texto plano elegido (Chosen-plaintext Attack): El atacante puede elegir textos planos arbitrarios para ser cifrados y obtener los textos cifrados correspondientes. Este es un ataque muy potente.
    • Ataque de fuerza bruta (Brute-Force Attack): Consiste en probar sistemáticamente todas las claves posibles hasta encontrar la correcta. Su viabilidad depende directamente de la longitud de la clave.
    • Ataque Man-in-the-Middle (MITM): El atacante se interpone secretamente en la comunicación entre dos partes, pudiendo interceptar, leer y modificar los mensajes sin que ninguna de las partes lo sepa. Diffie-Hellman es vulnerable a este ataque si no se autentican los participantes.
    • Ataque de cumpleaños (Birthday Attack): Un ataque basado en la probabilidad que se utiliza para encontrar colisiones en funciones hash. Requiere menos intentos de lo que se podría esperar para encontrar dos entradas que produzcan el mismo hash.
    • Ataque de canal lateral (Side-channel Attack): No ataca el algoritmo directamente, sino su implementación física. Explota información como el consumo de energía, el tiempo de ejecución o las emisiones electromagnéticas del dispositivo que realiza el cifrado.
  • Buenas Prácticas y Contramedidas
    • Usar algoritmos fuertes y modernos: Reemplazar algoritmos obsoletos como DES, MD5 y SHA-1 por estándares actuales como AES, SHA-256 o SHA-3.
    • Utilizar longitudes de clave adecuadas: La seguridad de muchos algoritmos depende del tamaño de la clave. Claves más largas aumentan exponencialmente el tiempo necesario para un ataque de fuerza bruta.
    • Implementar correctamente los protocolos: Una implementación defectuosa de un protocolo seguro (como TLS) puede introducir vulnerabilidades graves.
    • Utilizar modos de cifrado autenticado: Modos como Encrypt-then-MAC (EtM) proporcionan confidencialidad e integridad de forma conjunta, protegiendo contra ciertos tipos de ataques de manipulación de texto cifrado.
    • Proteger las claves privadas: La seguridad de los sistemas asimétricos y las firmas digitales depende del secreto absoluto de la clave privada. Deben almacenarse de forma segura, preferiblemente en hardware especializado como un Hardware Security Module (HSM).

V. Resumen del Módulo

La criptografía es una disciplina esencial para la seguridad de la información en la era digital, proporcionando confidencialidad, integridad, autenticación y no repudio. Se basa en el uso de algoritmos de cifrado, que pueden ser simétricos (una clave) o asimétricos (un par de claves), cada uno con sus propias fortalezas y casos de uso. Las funciones hash son cruciales para verificar la integridad de los datos, mientras que la Infraestructura de Clave Pública (PKI) proporciona un marco de confianza para gestionar certificados digitales y autenticar identidades en línea. A pesar de la robustez de los algoritmos modernos, el criptoanálisis y diversos tipos de ataques demuestran que la seguridad criptográfica requiere una implementación cuidadosa, una gestión de claves adecuada y la adopción constante de buenas prácticas.


Cuestionario de Preguntas Cortas

Responde cada pregunta en 2-3 oraciones.

  1. ¿Cuáles son los cuatro objetivos principales de la criptografía?
  2. Explique la diferencia fundamental entre el cifrado simétrico y el asimétrico.
  3. ¿Qué es una función hash y cuál es su propósito principal en seguridad?
  4. Describa el rol de una Autoridad de Certificación (CA) en una Infraestructura de Clave Pública (PKI).
  5. ¿Por qué el algoritmo DES ya no se considera seguro para la mayoría de las aplicaciones?
  6. ¿Qué es un ataque de canal lateral (Side-channel Attack)?
  7. ¿Cuál es la función principal del protocolo de intercambio de claves Diffie-Hellman?
  8. ¿Qué es PGP y por qué se considera un criptosistema híbrido?
  9. Mencione dos tipos de cifrados modernos basados en cómo procesan los datos de entrada.
  10. ¿Qué es un ataque de cumpleaños (Birthday Attack) y contra qué tipo de primitiva criptográfica se usa comúnmente?

Clave de Respuestas del Cuestionario

  1. Los cuatro objetivos principales de la criptografía son

    confidencialidad (solo los autorizados pueden acceder a la información), integridad (la información no ha sido alterada), autenticación (se verifica la identidad del origen) y no repudio (el remitente no puede negar el envío).

  2. El cifrado simétrico utiliza una sola clave compartida para cifrar y descifrar, lo que lo hace muy rápido. El cifrado asimétrico utiliza un par de claves (pública para cifrar, privada para descifrar), lo que resuelve el problema de la distribución de claves pero es más lento computacionalmente.

  3. Una función hash es un algoritmo que convierte una entrada de cualquier tamaño en una salida de tamaño fijo llamada "hash" o "message digest". Su propósito principal es garantizar la integridad de los datos, ya que cualquier cambio en la entrada produce un hash completamente diferente.

  4. Una Autoridad de Certificación (CA) es una entidad de confianza dentro de una PKI responsable de emitir certificados digitales. La CA verifica la identidad del solicitante y firma su certificado, vinculando así una clave pública a una entidad específica y creando una base de confianza.

  5. DES ya no se considera seguro porque utiliza una longitud de clave de solo 56 bits. Esta longitud de clave es demasiado corta para resistir los ataques de fuerza bruta con la capacidad de cómputo moderna, lo que permite a un atacante encontrar la clave en un tiempo relativamente corto.

  6. Un ataque de canal lateral es un método de criptoanálisis que no ataca el algoritmo criptográfico directamente, sino su implementación. El atacante explota información física que se filtra del dispositivo, como su consumo de energía, tiempo de procesamiento o emisiones electromagnéticas, para deducir información sobre la clave secreta.

  7. La función principal de Diffie-Hellman es permitir que dos partes que no tienen conocimiento previo entre sí establezcan conjuntamente una clave secreta compartida a través de un canal de comunicación inseguro. Esta clave compartida se puede usar luego para el cifrado simétrico.

  8. PGP (Pretty Good Privacy) es un software utilizado principalmente para cifrar y firmar correos electrónicos. Se considera un sistema híbrido porque combina el cifrado simétrico (rápido) para el cuerpo del mensaje y el cifrado asimétrico (seguro para la gestión de claves) para cifrar la clave de sesión simétrica.

  9. Los cifrados modernos, según cómo procesan los datos, pueden ser

    cifrados de bloque (Block Cipher), que operan en bloques de datos de tamaño fijo, o cifrados de flujo (Stream Cipher), que cifran los datos bit a bit o byte a byte de forma continua.

  10. Un ataque de cumpleaños es una técnica de criptoanálisis que explota la matemática detrás de la paradoja del cumpleaños para encontrar colisiones en funciones hash. Es mucho más eficiente que un ataque de fuerza bruta para encontrar dos entradas diferentes que generen el mismo hash.


Preguntas de Ensayo

  1. Compare y contraste las fortalezas y debilidades de los sistemas de cifrado simétrico y asimétrico. ¿En qué escenarios del mundo real preferiría utilizar uno sobre el otro y por qué es común utilizar ambos en un sistema híbrido como TLS o PGP?
  2. Discuta la importancia de la Infraestructura de Clave Pública (PKI) para el comercio electrónico y las comunicaciones seguras en Internet. Describa el flujo de trabajo completo, desde que una empresa solicita un certificado SSL/TLS para su sitio web hasta que el navegador de un usuario final verifica dicho certificado para establecer una conexión HTTPS.
  3. El criptoanálisis es una carrera armamentista constante contra la criptografía. Explique en detalle tres métodos de ataque criptográfico (por ejemplo, fuerza bruta, análisis de frecuencia en cifrados de sustitución, y Man-in-the-Middle) y describa los principios de diseño o contramedidas específicas que los criptógrafos han desarrollado para mitigar cada uno de estos ataques.
  4. Los algoritmos de hash como MD5 y SHA-1 se consideran "rotos" o inseguros para propósitos como la firma de software o la emisión de certificados. Explique qué es una "colisión" en el contexto de las funciones hash, por qué una colisión es catastrófica para la seguridad y por qué algoritmos como SHA-256 son los recomendados actualmente.
  5. Explique el concepto de "Web of Trust" (WoT) utilizado por PGP y cómo se diferencia fundamentalmente del modelo de confianza jerárquico y centralizado de una PKI tradicional. Discuta las ventajas y desventajas de cada modelo de confianza.

Glosario de Términos Clave

  • AES (Advanced Encryption Standard): El estándar de cifrado simétrico de bloque actual, utilizado a nivel mundial y aprobado por el gobierno de EE. UU..
  • Algoritmo: Una serie de pasos o reglas bien definidas que se siguen para realizar un cálculo o resolver un problema, como cifrar datos.
  • Ataque de Canal Lateral (Side-channel Attack): Un ataque que explota las características físicas de la implementación de un criptosistema en lugar de atacar el algoritmo en sí.
  • Autoridad de Certificación (CA): Una entidad que emite certificados digitales que vinculan una clave pública a una identidad.
  • Certificado Digital: Un archivo electrónico utilizado para probar la propiedad de una clave pública.
  • Cifrado Asimétrico: Un sistema de cifrado que utiliza un par de claves: una clave pública para el cifrado y una clave privada para el descifrado.
  • Cifrado de Bloque (Block Cipher): Un algoritmo que cifra un bloque de datos de tamaño fijo a la vez.
  • Cifrado de Flujo (Stream Cipher): Un algoritmo que cifra los datos de forma continua, generalmente bit a bit o byte a byte.
  • Cifrado Simétrico: Un sistema de cifrado que utiliza la misma clave para cifrar y descifrar datos.
  • Ciphertext (Texto Cifrado): Los datos después de haber sido cifrados, en un formato ilegible.
  • Criptoanálisis: La ciencia de analizar y descifrar comunicaciones cifradas sin conocer la clave.
  • DES (Data Encryption Standard): Un antiguo estándar de cifrado simétrico, ahora considerado inseguro debido a su corta longitud de clave.
  • Diffie-Hellman: Un protocolo de intercambio de claves que permite a dos partes establecer una clave secreta compartida.
  • Firma Digital: Un esquema matemático para verificar la autenticidad de mensajes o documentos digitales.
  • Función Hash: Un algoritmo que produce una cadena de bits de tamaño fijo (hash) a partir de datos de entrada de tamaño variable.
  • HMAC (Hash-based Message Authentication Code): Un código de autenticación de mensajes que utiliza una función hash y una clave secreta.
  • PKI (Public Key Infrastructure): Un marco de políticas y tecnologías para gestionar el cifrado de clave pública y los certificados digitales.
  • Plaintext (Texto Plano): Los datos originales en formato legible, antes del cifrado.
  • PGP (Pretty Good Privacy): Un popular programa de software utilizado para cifrar y descifrar correos electrónicos.
  • RSA (Rivest-Shamir-Adleman): Un algoritmo de cifrado asimétrico ampliamente utilizado para la transmisión segura de datos y firmas digitales.
  • SSL/TLS (Secure Sockets Layer / Transport Layer Security): Protocolos para establecer enlaces cifrados entre un servidor web y un cliente.

Themes