Criptografía

 CRIPTOGRAFÍA: Protegiendo las Comunicaciones


En el ámbito de la seguridad de las comunicaciones, las organizaciones deben implementar medidas para salvaguardar los datos mientras se transmiten a través de diversos enlaces. Especial atención se debe dar a proteger la información que viaja fuera de la organización hacia sitios de sucursales, teletrabajadores y socios.


Los cuatro elementos clave para garantizar la seguridad en las comunicaciones son:

1. Integridad de los datos: Se asegura de que el mensaje no haya sido alterado durante su tránsito. Cualquier cambio en los datos será detectado gracias a la utilización de Algoritmos de Seguridad de Hash, como SHA-2 o SHA-3. En contraposición, el algoritmo MD5 es desaconsejado debido a su falta de seguridad y posibles vulnerabilidades.

2. Autenticación de origen: Garantiza que el mensaje provenga del remitente legítimo y no sea falsificado. Se emplean algoritmos de autenticación basados en códigos de autenticación de mensajes con clave (HMAC) y hash.

3. Confidencialidad de los datos: Asegura que solo los usuarios autorizados puedan acceder y leer el mensaje. Se implementan algoritmos de encriptación simétrica y asimétrica para lograr este propósito.

4. Imposibilidad de Negación de los Datos: Se asegura de que el remitente no pueda negar ni refutar el envío del mensaje. Esta garantía se basa en la presencia de características o firmas únicas relacionadas con el tratamiento del mensaje, que solo el remitente legítimo posee.


Funciones del Hash Criptográfico:


Las funciones de hash criptográfico desempeñan un papel fundamental en verificar y garantizar la integridad de los datos. Estas funciones matemáticas unidireccionales son computacionalmente fáciles de calcular pero extremadamente difíciles de invertir. Se pueden comparar a la analogía del café molido, donde es fácil moler los granos pero imposible reconstruir los granos originales. Además, se utilizan como huellas digitales para detectar duplicados y cambios en los archivos de datos.




Entre las funciones de hash más conocidas están MD5 (obsoleta y desaconsejada), SHA-1 (también obsoleta y con defectos conocidos), SHA-2 (recomendada, incluye SHA-256, SHA-384 y SHA-512) y SHA-3 (la próxima generación de algoritmos hash, incluye SHA3-224, SHA3-256, SHA3-384 y SHA3-512).


Autenticación de Origen con HMAC:


Para agregar autenticación y control de integridad, se emplea el código de autenticación de mensajes hash con clave (HMAC). Los HMAC utilizan una clave secreta adicional como entrada a la función de hash. Solo el emisor y el receptor conocen esta clave secreta, lo que permite que solo ellos puedan calcular el HMAC correctamente. De esta manera, se derrotan los ataques man-in-the-middle y se logra una autenticación segura del origen de los datos transmitidos.


Confidencialidad de los datos: Encriptación Simétrica y Asimétrica


Para asegurar la confidencialidad de los datos, se emplean dos clases de encriptación: la simétrica y la asimétrica. Estas difieren en la forma en que utilizan las claves.


En la encriptación simétrica, como el Estándar de Encriptación de Datos (DES), Triple DES (3DES) y el Estándar Avanzado de Encriptación (AES), se parte del supuesto de que ambas partes que se comunican comparten una clave secreta previamente acordada. Por otro lado, la confidencialidad de los datos también se puede lograr mediante algoritmos asimétricos, como el RSA (Rivest, Shamir, Adleman) y la Infraestructura de Clave Pública (PKI).


Encriptación Simétrica:


Los algoritmos simétricos utilizan la misma clave compartida para encriptar y desencriptar los datos. Antes de iniciar cualquier comunicación encriptada, tanto el emisor como el receptor conocen esta clave, también conocida como clave secreta. Los algoritmos de encriptación simétrica se emplean comúnmente en el tráfico de VPN (Red Privada Virtual) debido a su menor consumo de recursos de CPU en comparación con los algoritmos de encriptación asimétrica, lo que permite una rápida encriptación y desencriptación durante el uso de una VPN.


Para garantizar una encriptación segura, es recomendable usar claves de longitud mínima de 128 bits. Los algoritmos de encriptación simétrica se clasifican en cifrados por bloque y cifrados de flujo. Los cifrados por bloque transforman bloques de texto plano de longitud fija en bloques de texto cifrado, mientras que los cifrados de flujo encriptan el texto plano byte por byte o bit por bit.


Encriptación Asimétrica:


Los algoritmos asimétricos, también conocidos como algoritmos de claves públicas, emplean una clave de encriptación y una clave de desencriptación diferentes. Es computacionalmente inviable calcular la clave de desencriptación a partir de la clave de encriptación, y viceversa, en un plazo razonable. Estos algoritmos utilizan una clave pública y una privada, ambas capaces de encriptar y desencriptar, pero se requiere la clave complementaria para el proceso contrario.


Debido a que ninguna de las partes comparte un secreto previo, se deben utilizar longitudes de clave muy prolongadas en la encriptación asimétrica. Las longitudes de clave seguras van desde 2048 bits hasta 4096 bits. Los algoritmos asimétricos son más lentos que los simétricos debido a problemas computacionales más complejos que involucran números grandes. Por tanto, se utilizan en criptografía de bajo volumen, como firmas digitales e intercambio de claves.


Los algoritmos asimétricos permiten lograr confidencialidad y autenticidad, lo que los hace útiles en protocolos como IKE (Intercambio de Claves de Internet), SSL (Capa de Puertos Seguros), SSH (Shell Seguro) y PGP (Pretty Good Privacy).


Clave Pública (Encriptar) + Clave Privada (Desencriptar) = Confidencialidad y Autenticación


La encriptación asimétrica utiliza un par de claves: la clave pública y la clave privada. Cuando se utiliza la clave pública para encriptar los datos, solo la clave privada correspondiente pu



ede desencriptarlos. Esto garantiza la confidencialidad, ya que solo el host que posee la clave privada puede acceder a los datos encriptados. Si la clave privada se ve comprometida, se debe generar un nuevo par de claves para reemplazarla y mantener la confidencialidad.


Además, la encriptación asimétrica también proporciona autenticación. Cuando se utiliza la clave privada para encriptar los datos, la clave pública correspondiente se utiliza para desencriptarlos. Como solo un host tiene la clave privada, el proceso de encriptación puede demostrar la autenticidad del remitente. Cuando un host desencripta correctamente un mensaje con la clave pública, se confía en que la clave privada del remitente encriptó el mensaje, lo que permite verificar la identidad del remitente. Esto asegura que los datos provienen realmente del remitente esperado y evita el rechazo de mensajes mediante la negación del envío.


El algoritmo Diffie-Hellman (DH) es un ejemplo de encriptación asimétrica que permite a dos computadoras generar un secreto compartido sin comunicarse previamente. Utiliza números increíblemente grandes en sus cálculos para garantizar la seguridad.


La criptografía de clave pública se aplica en situaciones como el intercambio de claves en VPN con IPsec, SSH y otros protocolos de seguridad.


Las firmas digitales son otra aplicación de la criptografía de clave pública. Proporcionan autenticidad, integridad y no repudio en las comunicaciones. Se utilizan para verificar la autenticidad del remitente y asegurar que los datos no han sido modificados. Los certificados digitales verifican la identidad de un dominio o usuario en Internet, y las terceras partes de confianza emiten estos certificados después de una investigación exhaustiva. La PKI (Infraestructura de Claves Públicas) es un sistema que se utiliza para crear, administrar, almacenar, distribuir y revocar certificados digitales y salvaguardar las identidades digitales contra el hacking y otros riesgos de seguridad.


Algunos ejemplos de Autoridades de Certificación (CA) son IDentrust, DigiCert, Sectigo, GlobalSign y GoDaddy. Estas CA pueden cobrar una tarifa por sus servicios. Por otro lado, Let's Encrypt es una CA sin fines de lucro que ofrece certificados de forma gratuita.


La Infraestructura de Claves Públicas (Public Key Infrastructure PKI) es esencial para permitir la distribución e identificación a gran escala de claves de encriptación públicas. La PKI consiste en hardware, software, personas, políticas y procedimientos para crear, administrar, almacenar, distribuir y revocar certificados digitales, asegurando una relación de confianza altamente escalable.


Las CA pueden ser proporcionadas por diferentes proveedores como Symantec Group (VeriSign), Comodo, Go Daddy Group, GlobalSign y DigiCert, entre otros. Además, las organizaciones pueden implementar PKI privadas utilizando Microsoft Server u Open SSL.Las CA emiten certificados basados en clases que determinan el nivel de confianza del certificado. Cuanto mayor sea el número de clase, más confiable será el certificado. Por ejemplo, un certificado de clase 5 es más confiable que uno de una clase inferior.

Las topologías de confianza de la PKI pueden ser de raíz única, donde una sola CA emite todos los certificados a los usuarios finales, o jerárquicas y de certificación cruzada, donde varias CA establecen relaciones de confianza entre sí. Estas topologías pueden combinarse para crear una infraestructura híbrida.

Para asegurar la interoperabilidad entre diferentes proveedores de PKI, se han establecido estándares como el Marco de trabajo de prácticas y políticas de certificación de PKI, de Internet X.509 (RFC 2527) y el estándar X.509 versión 3 (X.509v3) que define el formato de un certificado digital.

La PKI tiene diversas aplicaciones en una empresa, como la autenticación de pares basada en certificados SSL/TLS, la seguridad de redes VPN IPsec, el tráfico web HTTPS, el control de acceso a la red mediante autenticación 802.1x, la protección de correo electrónico con S/MIME, entre otras.







El aumento del tráfico SSL/TLS puede plantear desafíos para el monitoreo de seguridad, pero los analistas especializados deben implementar medidas para sortear estos problemas, como configurar reglas para distinguir el tráfico SSL y no SSL o utilizar dispositivos de desencriptación de tráfico SSL.


La criptografía es dinámica y siempre cambia, lo que afecta las investigaciones de seguridad. Los ataques pueden dirigirse específicamente a los algoritmos de encriptación, y los analistas deben comprender bien los algoritmos y operaciones criptográficas para investigar incidentes de seguridad relacionados con la criptografía.

Comentarios