La encriptación es una forma de ocultar información alterándola para que parezca un dato aleatorio. La encriptación es fundamental para la seguridad en Internet.
Después de leer este artículo podrás:
Contenido relacionado
Suscríbete a theNET, el resumen mensual de Cloudflare sobre las ideas más populares de Internet.
Copiar el enlace del artículo
La encriptación es una forma de codificar los datos para que solo las partes autorizadas puedan entender la información. En términos técnicos, es el proceso de convertir un texto plano legible para seres humanos en un texto incomprensible, también conocido como texto encriptado. Si usamos términos más sencillos, la encriptación coge datos legibles y los altera para que parezcan aleatorios. La encriptación requiere el uso de una clave criptográfica: un conjunto de valores matemáticos pactados tanto por el emisor como por el receptor de un mensaje encriptado.
La encriptación es un proceso matemático que altera los datos al usar un algoritmo de encriptación y una clave. Imagina que Alicia envía el mensaje "Hola" a Bob, pero sustituye cada letra de su mensaje por la letra que le sigue dos lugares más adelante en el alfabeto. En lugar de "Hola," su mensaje ahora dice "Jgnnq". Afortunadamente, Bob sabe que la clave es "2" y puede descifrar su mensaje a "Hola."
Alice utilizó un algoritmo de encriptación muy sencillo para codificar su mensaje a Bob. Los algoritmos de encriptación más complicados pueden codificar el mensaje aún más:
Aunque los datos encriptados parezcan aleatorios, la encriptación procede de una forma lógica y predecible, lo que permite que una parte que reciba los datos encriptados y posea la clave adecuada pueda desencriptarlos y convertirlos de nuevo en texto plano. Una encriptación verdaderamente segura usará claves lo suficientemente complejas como para que sea muy improbable que un tercero pueda desencriptar o descifrar el texto encriptado con fuerza bruta — es decir, adivinando la clave. (El primer método de encriptación de Alice se rompería muy rápidamente).
Los datos pueden estar encriptados "en reposo," cuando están almacenados, o "en tránsito," mientras se están transmitiendo a otro lugar.
Una clave criptográfica es una cadena de caracteres que se utiliza en de un algoritmo de encriptación para alterar los datos de forma que parezcan aleatorios. Como sucede con una llave física, esta bloquea (encripta) los datos para que solo el que tenga la llave correcta pueda abrirlos (desencriptarlos).
Los dos tipos principales de encriptación son la encriptación simétrica y la encriptación asimétrica. La encriptación asimétrica también se conoce como encriptación de clave pública.
En la encriptación simétrica, solo hay una clave, y todas las partes que se comunican usa la misma clave (secreta) tanto para la encriptación como para la desencriptación. En la encriptación asimétrica, o de clave pública, hay dos claves: una clave se utiliza para la encriptación y otra distinta para la desencriptación. La clave de desencriptación se mantiene en privado (de ahí el nombre de "clave privada" ), mientras que la clave de encriptación se comparte públicamente, para que la utilice cualquiera (de ahí el nombre de "clave pública" ). La encriptación asimétrica es una tecnología fundamental para TLS (con frecuencia conocida como SSL).
Privacidad: la encriptación garantiza que nadie pueda leer las comunicaciones o los datos en reposo, excepto el destinatario previsto o el propietario legítimo de los datos. Esto evita que los atacantes, las redes publicitarias, los proveedores de acceso a Internet y, en algunos casos, los gobiernos intercepten y lean los datos confidenciales, protegiendo la privacidad del usuario.
Seguridad: La encriptación ayuda a prevenir las fugas de datos, tanto si los datos están en tránsito como en reposo. Si un dispositivo de la empresa se pierde o ha sido robado, y su disco duro está encriptado correctamente, los datos de ese dispositivo seguirán siendo seguros. Del mismo modo, las comunicaciones encriptadas permiten que las partes en comunicación intercambien datos confidenciales sin que se filtren los datos.
Integridad de los datos: la encriptación también ayuda a evitar comportamientos maliciosos como ataques en ruta. Cuando los datos se transmiten a través de Internet, la encriptación garantiza que lo recibido por el destinatario no haya sido visto ni manipulado por el camino.
Regulaciones: Por todas estas razones, muchas normativas del sector y gubernamentales exigen que las empresas que manejan datos de los usuarios los mantengan encriptados. Algunos ejemplos de estándares regulatorios y de cumplimiento que exigen la encriptación son HIPAA, PCI-DSS y RGPD.
Un algoritmo de encriptación es el método utilizado para transformar los datos en texto encriptado. Un algoritmo utilizará la clave de encriptación para alterar los datos de forma predecible, para que aunque los datos encriptados parezcan aleatorios, puedan volver a convertirse en texto plano mediante el uso de la clave de desencriptación.
Los algoritmos de encriptación simétrica más utilizados son:
Los algoritmos de encriptación asimétrica más utilizados son:
Un ataque de fuerza bruta es cuando un atacante que no conoce la clave de desencriptación intenta determinar la clave haciendo millones o miles de millones de conjeturas. Los ataques de fuerza bruta son mucho más rápidos con los ordenadores modernos, por lo que la encriptación tiene que ser extremadamente fuerte y compleja. La mayoría de los métodos modernos de encriptación, junto con las contraseñas de alta calidad, son resistentes a los ataques de fuerza bruta, aunque pueden llegar a ser vulnerables a estos ataques en el futuro, a medida que los ordenadores se vuelven cada vez más potentes. Las contraseñas débiles siguen siendo susceptibles de sufrir ataques de fuerza bruta.
La encriptación es fundamental para diversas tecnologías, pero es especialmente importante para mantener seguras las peticiones y respuestas de HTTP. El protocolo responsable de esto se conoce como HTTPS (Protocolo seguro de transferencia de hipertexto). Un sitio web servido mediante HTTPS en lugar de HTTP tendrá una URL que empieza con https:// en lugar de http://, y se representará normalmente con un candado cerrado en la barra de direcciones.
HTTPS utiliza el protocolo de encriptación conocido como Transport Layer Security (TLS). En el pasado, un protocolo de encriptación anterior llamado Secure Sockets Layer (SSL) era el estándar, pero TLS ha sustituido a SSL. Un sitio web que implementa HTTPS tendrá un certificado TLS instalado en su servidor de origen. Más información sobre TLS y HTTPS.
Para ayudar a mantener la seguridad de Internet, Cloudflare ofrece una encriptación TLS/SSL gratuita para cualquier sitio web que utilice los servicios de Cloudflare. Más información sobre Universal SSL de Cloudflare.