
La criptografía es la disciplina que protege información mediante técnicas matemáticas capaces de transformar datos legibles en datos no legibles para personas o sistemas no autorizados. En informática y ciberseguridad, se utiliza para proteger comunicaciones, archivos, contraseñas, transacciones, identidades digitales, aplicaciones web, sistemas en la nube y registros distribuidos.
Una forma práctica de entender qué es la criptografía consiste en partir de un mensaje legible. Ese mensaje original se denomina texto plano. Un algoritmo criptográfico utiliza una clave para convertir ese texto plano en texto cifrado, que no debería poder interpretarse sin la clave o el proceso criptográfico correspondiente. Dependiendo del caso, el destinatario puede descifrar el mensaje, verificar una firma digital o comparar un valor hash para comprobar que los datos no han sido alterados.
La criptografía moderna no se limita a ocultar mensajes. También permite verificar identidad, comprobar integridad, proteger sesiones web, validar software, asegurar pagos electrónicos y reducir riesgos asociados al acceso no autorizado. ISO relaciona la criptografía con la protección de datos en reposo y en tránsito dentro de la seguridad de la información.
Antes de analizar los tipos, usos y riesgos de la criptografía, es necesario definir varios conceptos básicos. Estos términos ayudan a comprender cómo se transforma la información y cómo los sistemas digitales verifican confianza, autenticidad e integridad.
Texto plano: Es la información en formato legible antes de aplicar una técnica criptográfica. Puede ser un mensaje, archivo, contraseña, transacción, solicitud de API o cualquier dato que necesite protección.
Texto cifrado: Es el resultado no legible generado después de aplicar cifrado. Su función es impedir que el contenido pueda interpretarse sin la clave o el proceso de descifrado adecuado.
Clave criptográfica: Es un valor utilizado por un algoritmo para cifrar, descifrar, firmar o verificar datos. Su seguridad depende de factores como longitud, aleatoriedad, almacenamiento, control de acceso y uso correcto.
Algoritmo criptográfico: Es un procedimiento matemático diseñado para cumplir una función de seguridad. AES, RSA, ECC, SHA-2 y SHA-3 son ejemplos de algoritmos o familias de algoritmos usados en distintos contextos.
Hash: Es una salida de longitud fija generada a partir de datos de entrada. Las funciones hash se utilizan para verificar integridad, almacenar valores derivados de contraseñas y apoyar firmas digitales.
La criptografía es el conjunto de métodos matemáticos y computacionales utilizados para proteger información y comunicaciones. Su objetivo no es únicamente ocultar datos, sino también ayudar a comprobar que un mensaje no fue modificado, que proviene de una fuente esperada o que una acción digital puede asociarse a una entidad determinada.
En ciberseguridad, la criptografía se relaciona con cuatro objetivos principales: confidencialidad, integridad, autenticación y no repudio. La confidencialidad limita el acceso a la información; la integridad permite detectar cambios no autorizados; la autenticación ayuda a verificar identidades u origen de datos; y el no repudio aporta evidencia de que una acción fue realizada por una parte determinada. IBM identifica estos principios como funciones centrales de la criptografía moderna.
La criptografía es más amplia que el cifrado. El cifrado es una técnica criptográfica, pero la criptografía también incluye hashing, firmas digitales, intercambio de claves, certificados digitales, códigos de autenticación de mensajes y protocolos seguros. Por ejemplo, una conexión HTTPS puede combinar criptografía de clave pública, cifrado simétrico, certificados digitales y funciones hash dentro de un mismo flujo técnico.
La criptografía moderna integra matemáticas, informática, ingeniería de software y seguridad de la información. En sistemas reales, suele operar dentro de bibliotecas, protocolos y servicios de gestión de claves, no como una operación aislada realizada directamente por el usuario final.
La criptografía funciona aplicando un algoritmo y una o varias claves sobre determinados datos. El proceso exacto cambia según se utilice cifrado simétrico, cifrado asimétrico, hashing, firmas digitales o un protocolo híbrido.
Un flujo básico de cifrado puede explicarse en cinco pasos:
Por ejemplo, cuando un navegador se conecta a un sitio web mediante HTTPS, la criptografía ayuda a establecer una sesión protegida entre el navegador y el servidor. En este tipo de proceso, la criptografía de clave pública puede intervenir en el intercambio inicial de claves, mientras que el cifrado simétrico puede proteger los datos enviados durante la sesión.
Este enfoque por capas es importante porque los sistemas modernos rara vez dependen de una sola operación criptográfica. Una aplicación puede usar un mecanismo para intercambiar claves, otro para cifrar datos, otro para verificar integridad y otro para autenticar entidades.
La criptografía cumple varias funciones dentro de sistemas digitales. Estas funciones explican su uso en navegación web, pagos electrónicos, autenticación, mensajería, servicios en la nube, firmas digitales, software empresarial y cadenas de bloques.
La confidencialidad significa que solo las partes autorizadas pueden acceder al contenido de la información. El cifrado es la técnica más utilizada para este objetivo. Si un atacante intercepta tráfico cifrado o accede a un archivo cifrado sin la clave adecuada, el contenido debería permanecer no legible.
Este objetivo se aplica en conexiones HTTPS, bases de datos cifradas, copias de seguridad protegidas, túneles VPN, mensajería cifrada y almacenamiento de archivos sensibles. ISO vincula el cifrado con la protección de confidencialidad en datos en reposo y en tránsito.
La integridad significa que los datos no han sido modificados de forma no autorizada. Las funciones hash, los códigos de autenticación de mensajes y las firmas digitales pueden ayudar a detectar cambios durante el almacenamiento o la transmisión.
Este objetivo es importante en descargas de software, registros financieros, documentos electrónicos, solicitudes de API, logs de sistemas y archivos compartidos. Sin mecanismos de integridad, un sistema podría recibir datos alterados sin identificar la modificación.
La autenticación permite comprobar que una persona, servidor, dispositivo o aplicación es quien afirma ser. En criptografía, puede apoyarse en certificados digitales, firmas digitales, secretos compartidos, claves públicas y privadas, o mecanismos de desafío-respuesta.
En la práctica, la autenticación criptográfica ayuda a que un navegador verifique la identidad de un sitio web, que una API valide una solicitud autorizada o que un sistema confirme que una actualización de software proviene de una fuente legítima.
El no repudio proporciona evidencia técnica de que una entidad realizó una acción, como firmar un documento, aprobar una transacción o emitir un mensaje. Las firmas digitales son uno de los mecanismos más comunes para este objetivo porque relacionan una clave privada con una operación verificable mediante una clave pública.
En documentos electrónicos, transacciones financieras, certificados y distribución de software, el no repudio ayuda a reducir disputas sobre el origen o aprobación de una acción digital.
La criptografía se suele clasificar según el tipo de clave utilizada y la función de seguridad que cumple. Las categorías más comunes son criptografía simétrica, criptografía asimétrica, funciones hash y firmas digitales.
La criptografía simétrica utiliza la misma clave secreta para cifrar y descifrar información. El emisor y el receptor deben tener acceso a esa misma clave, y la clave debe mantenerse protegida frente a terceros.
Este tipo de criptografía se utiliza con frecuencia porque permite proteger grandes volúmenes de datos de forma eficiente. Es habitual en cifrado de discos, bases de datos, copias de seguridad, túneles VPN y sesiones seguras después de que se establece una clave de sesión.
AES es uno de los algoritmos simétricos más conocidos. NIST especifica AES-128, AES-192 y AES-256, con bloques de datos de 128 bits y claves de 128, 192 o 256 bits, respectivamente.
La criptografía asimétrica, también llamada criptografía de clave pública, utiliza un par de claves relacionadas matemáticamente: una clave pública y una clave privada. La clave pública puede compartirse, mientras que la clave privada debe mantenerse protegida.
Este modelo permite que dos partes establezcan comunicación segura sin haber compartido previamente una misma clave secreta por un canal privado. En un uso típico, una parte puede cifrar o verificar con una clave pública, mientras que la clave privada correspondiente se utiliza para descifrar o firmar.
La criptografía asimétrica se utiliza en TLS, certificados digitales, correo seguro, firmas digitales, intercambio de claves, firma de software y sistemas basados en blockchain.
Una función hash criptográfica convierte datos de cualquier tamaño en una salida de longitud fija. Un cambio pequeño en la entrada debe producir una salida muy diferente. A diferencia del cifrado, el hashing no está diseñado para ser reversible.
Las funciones hash se utilizan en comprobaciones de integridad, almacenamiento de valores derivados de contraseñas, firmas digitales, autenticación de mensajes y estructuras de datos. ISO describe las funciones hash como técnicas que convierten datos en una salida fija y las relaciona con firmas digitales, códigos de autenticación y verificaciones de integridad.
Una firma digital utiliza criptografía para verificar autenticidad e integridad. En un flujo habitual, el emisor firma datos con una clave privada y otras partes verifican esa firma con la clave pública correspondiente.
Las firmas digitales se utilizan en documentos electrónicos, certificados, actualizaciones de software, pagos, contratos digitales, sistemas de identidad y transacciones blockchain. Su función no es ocultar el contenido, sino verificar origen e integridad.
| Tipo | Función principal | Estructura de claves | Ejemplos comunes |
|---|---|---|---|
| Criptografía simétrica | Cifrar y descifrar datos de forma eficiente | Misma clave secreta | AES, ChaCha20 |
| Criptografía asimétrica | Intercambio de claves, autenticación y firmas | Par de clave pública y privada | RSA, ECC |
| Funciones hash | Verificar integridad y generar resúmenes fijos | No usa clave de descifrado | SHA-2, SHA-3 |
| Firmas digitales | Probar autenticidad, integridad y no repudio | Clave privada firma, clave pública verifica | RSA signatures, ECDSA, EdDSA |
Criptografía, cifrado, hashing y codificación son términos relacionados, pero no equivalentes. Diferenciarlos es importante porque cada técnica cumple una función distinta y no todas proporcionan seguridad.
La criptografía es el campo general. Incluye cifrado, hashing, firmas digitales, intercambio de claves, autenticación de mensajes, certificados y protocolos seguros.
El cifrado transforma datos legibles en texto cifrado para que luego puedan recuperarse mediante un proceso de descifrado autorizado. Es reversible cuando se dispone de la clave correcta. Se utiliza cuando los datos deben volver a su estado original, como archivos, mensajes, bases de datos o copias de seguridad.
El hashing genera una salida fija a partir de datos de entrada. Está diseñado como un proceso unidireccional, por lo que no debe permitir reconstruir la entrada original. Se utiliza para verificación de integridad, firmas digitales y almacenamiento seguro de valores derivados de contraseñas.
OWASP indica que las contraseñas no deben almacenarse mediante cifrado reversible y que deben utilizarse algoritmos seguros de hashing de contraseñas.
La codificación transforma datos a otro formato para facilitar compatibilidad, transmisión o almacenamiento. No es una técnica de seguridad. Base64, URL encoding y codificaciones de caracteres son ejemplos de codificación.
La diferencia principal es que los datos codificados suelen poder recuperarse sin una clave secreta. Por ello, la codificación no debe tratarse como sustituto del cifrado.
La criptografía está integrada en numerosos sistemas digitales. Muchas personas la utilizan indirectamente a través de navegadores, aplicaciones móviles, sistemas bancarios, plataformas de mensajería, servicios en la nube y sistemas operativos.
HTTPS utiliza protocolos criptográficos para proteger la comunicación entre navegadores y sitios web. Esto reduce el riesgo de interceptación o modificación de datos cuando un usuario envía contraseñas, datos personales, información de pago o formularios.
Los sistemas seguros no necesitan almacenar contraseñas en texto plano. En su lugar, almacenan valores derivados mediante funciones de hashing diseñadas para contraseñas. Cuando el usuario inicia sesión, el sistema calcula nuevamente el valor derivado y lo compara con el valor almacenado.
Las aplicaciones de mensajería pueden usar cifrado de extremo a extremo para que solo los participantes previstos puedan leer los mensajes. La criptografía también puede ayudar a autenticar participantes y detectar alteraciones del contenido.
La criptografía protege datos de tarjetas, transacciones, flujos de autenticación y comunicaciones entre usuarios, comercios, procesadores de pago y entidades financieras. ISO relaciona la criptografía con la protección de comercio electrónico, transacciones y datos personales.
Los sistemas operativos, navegadores y aplicaciones utilizan firmas digitales para verificar que una actualización proviene de una fuente confiable y que no fue modificada. Este uso reduce el riesgo de instalar software alterado.
Las plataformas en la nube utilizan criptografía para proteger datos almacenados, copias de seguridad, secretos, tráfico de API y accesos administrativos. En este contexto, la gestión de claves es especialmente importante porque los datos cifrados dependen de la protección y control de sus claves.
Los sistemas blockchain utilizan funciones hash, firmas digitales y pares de claves públicas y privadas. ISO indica que las criptomonedas usan técnicas criptográficas para asegurar transacciones y que los registros blockchain se enlazan mediante criptografía.
Un algoritmo criptográfico es un procedimiento matemático utilizado para cifrar, descifrar, firmar, verificar, calcular hashes o intercambiar claves. En sistemas reales, los algoritmos suelen estar integrados dentro de protocolos, bibliotecas o servicios, no implementados manualmente desde cero.
AES, o Advanced Encryption Standard, es un cifrador simétrico por bloques utilizado para proteger datos electrónicos. NIST define AES con longitudes de clave de 128, 192 y 256 bits.
AES se utiliza en cifrado de discos, bases de datos, VPN, sesiones seguras y protección de archivos. Su seguridad depende no solo del algoritmo, sino también del modo de operación, la generación de claves, la aleatoriedad y la implementación.
RSA es un algoritmo asimétrico utilizado históricamente para cifrado, intercambio de claves y firmas digitales. Se basa en propiedades matemáticas asociadas a números primos grandes. Aunque sigue presente en muchos sistemas, varias implementaciones modernas utilizan criptografía de curva elíptica por eficiencia y tamaño de clave.
ECC, o criptografía de curva elíptica, es una familia de técnicas de clave pública basada en curvas elípticas. Se utiliza en certificados, TLS, dispositivos móviles, criptomonedas y sistemas donde el tamaño de clave y el rendimiento son factores relevantes.
Diffie-Hellman es un método de intercambio de claves que permite a dos partes establecer un secreto compartido a través de un canal no confiable. Su uso principal no es cifrar grandes volúmenes de datos, sino ayudar a crear claves que luego pueden utilizar algoritmos simétricos.
SHA-2 y SHA-3 son familias de funciones hash criptográficas utilizadas para generar salidas de longitud fija. Se aplican en comprobaciones de integridad, certificados, firmas digitales, almacenamiento de valores derivados de contraseñas y protocolos de seguridad.
Los algoritmos de firma digital se utilizan para probar que un dato fue firmado por quien posee una clave privada y que no fue modificado desde la firma. Se emplean en certificados, documentos electrónicos, firma de código, blockchain y distribución segura de software.
Las claves criptográficas suelen ser el elemento más sensible de un sistema criptográfico. Un algoritmo fuerte no protege adecuadamente los datos si las claves son débiles, predecibles, expuestas, reutilizadas de forma incorrecta o almacenadas junto a la información que protegen.
La gestión de claves cubre el ciclo de vida completo de una clave: generación, distribución, almacenamiento, uso, rotación, revocación, respaldo, destrucción y recuperación. OWASP incluye la gestión del ciclo de vida, almacenamiento, recuperación, acuerdo de claves y eliminación segura entre los aspectos que deben documentarse y controlarse.
Las claves deben generarse mediante fuentes de aleatoriedad adecuadas. Una clave predecible puede debilitar incluso un algoritmo fuerte, porque un atacante podría reproducirla o reducir el espacio de búsqueda.
Las claves deben protegerse separadamente de los datos cifrados. Según el contexto, esto puede implicar servicios de gestión de claves, módulos de seguridad de hardware, bóvedas de secretos, enclaves seguros o mecanismos del sistema operativo.
La rotación reemplaza claves según políticas, riesgo o eventos operativos. Puede ser necesaria cuando una clave se ha utilizado durante un periodo prolongado, cuando cambia el personal autorizado o cuando existe sospecha de exposición.
Cuando una clave deja de ser necesaria, debe eliminarse mediante un proceso controlado. Si las claves antiguas continúan accesibles, pueden exponer datos históricos.
El uso de claves debe limitarse a sistemas y cuentas autorizadas. Los registros de auditoría deben permitir revisar creación, acceso, uso, rotación y eliminación de claves.
Muchos fallos criptográficos no se producen porque un algoritmo moderno sea débil, sino por errores de implementación, configuración o gestión. Los problemas más frecuentes están relacionados con claves mal protegidas, algoritmos obsoletos, aleatoriedad insuficiente o uso incorrecto de técnicas criptográficas.
Una clave debe tener suficiente fortaleza para el tipo de información que protege y para el tiempo durante el cual esa información debe permanecer protegida. La longitud de clave, la aleatoriedad y el contexto de uso influyen en el nivel de protección.
Usar una misma clave para demasiadas funciones aumenta el riesgo. Una clave destinada a cifrado no debería reutilizarse automáticamente para firma, autenticación u otros propósitos sin un diseño criptográfico adecuado.
Si una clave se almacena junto a los datos cifrados, una intrusión puede exponer tanto la información protegida como el medio para descifrarla. Esta situación reduce de forma significativa la utilidad del cifrado.
Los algoritmos y protocolos pueden perder seguridad con el tiempo debido a avances en investigación, capacidad computacional o descubrimiento de vulnerabilidades. Por ello, los sistemas deben evitar algoritmos retirados o configuraciones antiguas.
Diseñar algoritmos o protocolos criptográficos sin revisión especializada introduce riesgo elevado. En entornos de producción, se utilizan algoritmos estandarizados, protocolos revisados y bibliotecas mantenidas.
Las contraseñas no deberían almacenarse con cifrado reversible. Si la clave de cifrado se compromete, las contraseñas podrían recuperarse. OWASP indica que deben usarse algoritmos seguros de hashing de contraseñas en lugar de cifrado reversible para este caso.
El cifrado por sí solo no siempre prueba que los datos provienen del emisor esperado ni que no fueron modificados. Según el sistema, puede ser necesario utilizar cifrado autenticado, códigos de autenticación de mensajes o firmas digitales.
La computación cuántica afecta a la criptografía porque algunos sistemas de clave pública dependen de problemas matemáticos que computadoras cuánticas suficientemente avanzadas podrían resolver con mayor eficiencia que computadoras clásicas. Esto no implica que toda la criptografía quede obsoleta, pero sí genera presión para migrar ciertos sistemas vulnerables.
La criptografía cuántica utiliza principios de la mecánica cuántica para proteger comunicaciones o distribuir claves. Es diferente de la criptografía poscuántica, porque depende de propiedades físicas de sistemas cuánticos.
La criptografía poscuántica se enfoca en algoritmos que pueden ejecutarse en computadoras convencionales y están diseñados para resistir ataques conocidos de computadoras clásicas y cuánticas.
En agosto de 2024, NIST aprobó los estándares FIPS 203, FIPS 204 y FIPS 205 relacionados con criptografía poscuántica. FIPS 203 especifica ML-KEM, mientras que FIPS 204 y FIPS 205 especifican esquemas de firma digital.
La planificación poscuántica es relevante para organizaciones que protegen datos con largos periodos de confidencialidad. Un riesgo asociado es que datos cifrados puedan ser capturados actualmente y atacados en el futuro si aparecen capacidades cuánticas suficientes.