¿Que es HTTPs y como funciona?

Descubre todo sobre HTTPS y su funcionamiento en nuestro último artículo. No dejes que te lo pregunten en tu proxima entrevista y te quedes sin saber más sobre el tema

2024-05-08

HTTPS, por sus siglas en inglés "Hypertext Transfer Protocol Secure" (Protocolo de Transferencia de Hipertexto Seguro), es una extensión del protocolo HTTP diseñada para mejorar la seguridad de la transferencia de datos en la web.

HTTPS utiliza un protocolo de seguridad llamado TLS (Transport Layer Security) o su predecesor SSL (Secure Sockets Layer) para cifrar los datos transmitidos entre el cliente (como un navegador web) y el servidor web. Esta encriptación protege la privacidad e integridad de los datos, lo que dificulta que los hackers intercepten y manipulen la información durante la comunicación en línea.

Cuando se utiliza HTTPS, los datos transmitidos están encriptados, lo que significa que incluso si alguien intercepta la comunicación, sólo verán datos cifrados que son difíciles de descifrar sin la clave de cifrado adecuada. Esto proporciona una capa adicional de seguridad para actividades en línea que involucran el intercambio de información sensible, como iniciar sesión en cuentas, realizar transacciones financieras o enviar datos personales.

Que es la encriptación simétrica

La encriptación simétrica implica el uso de una sola clave tanto para encriptar como para desencriptar los datos. Esta clave se comparte entre el remitente y el destinatario. Algunos ejemplos de algoritmos de encriptación simétrica son AES (Advanced Encryption Standard) y DES (Data Encryption Standard).

Que es la encriptación asimétrica

La encriptación asimétrica utiliza un par de claves distintas pero relacionadas: una clave pública y una clave privada. La clave pública se utiliza para encriptar los datos, mientras que la clave privada se utiliza para desencriptarlos. Este método permite que la clave pública se comparta ampliamente mientras que la clave privada se mantiene en secreto. Algunos ejemplos de algoritmos de encriptación asimétrica son RSA (Rivest-Shamir-Adleman) y ECC (Elliptic Curve Cryptography).

¿Cómo se encriptan y desencriptan los datos?

1)  El cliente (navegador) y el servidor establecen una conexión TCP.

2) El cliente envía un "hola del cliente" al servidor. El mensaje contiene un conjunto de algoritmos de encriptación necesarios (conjuntos de cifrado) y la última versión de TLS que puede admitir. El servidor responde con un "hola del servidor" para que el navegador sepa si puede admitir los algoritmos y la versión de TLS.

El servidor luego envía el certificado SSL al cliente. El certificado contiene la clave pública, el nombre del host, las fechas de vencimiento, etc. El cliente valida el certificado.

3) Después de validar el certificado SSL, el cliente genera una clave de sesión y la encripta usando la clave pública. El servidor recibe la clave de sesión encriptada y la desencripta con la clave privada.

4) Ahora que tanto el cliente como el servidor tienen la misma clave de sesión (encriptación simétrica), los datos encriptados se transmiten en un canal bidireccional seguro.

¿Cómo ha evolucionado HTTPs a través de los años?

ha experimentado varias versiones a lo largo de los años, cada una con mejoras en funcionalidad, eficiencia y seguridad. Aquí tienes un resumen de las versiones principales:

1) HTTP/0.9: Esta fue la primera versión del protocolo HTTP, introducida en 1991. Era una versión simple diseñada para la transferencia de texto sin formato, sin soporte para encabezados HTTP, como los que conocemos hoy en día.

2) HTTP/1.0: Introducida en 1996, esta versión incluyó mejoras significativas, como la adición de encabezados para permitir la transferencia de datos más complejos, la compatibilidad con proxies y la posibilidad de especificar la versión de HTTP en los mensajes de solicitud y respuesta.

3) HTTP/1.1: Lanzada en 1997, esta versión fue una revisión importante de HTTP/1.0. Introdujo mejoras en la eficiencia, como la persistencia de la conexión (keep-alive), la compresión de datos y la capacidad de enviar múltiples solicitudes en una única conexión TCP.

4) HTTP/2: Introducido en 2015, HTTP/2 representa una evolución significativa sobre HTTP/1.1. Incluye características como la multiplexación de flujo, la compresión de encabezados, el servidor push y la priorización de flujo, lo que mejora significativamente el rendimiento y la eficiencia de la transferencia de datos.

5) HTTP/3: Esta es la versión más reciente de HTTP, que aún está en desarrollo. HTTP/3 se basa en el protocolo QUIC (Quick UDP Internet Connections) y está diseñado para mejorar aún más el rendimiento y la seguridad mediante la transferencia de datos sobre UDP en lugar de TCP.

Últimas publicaciones

Lo que Todo Desarrollador Debe Saber sobre Algoritmos

12/11/2024

Ver articulo

Patrones de Software de Optimización y Eficiencia

10/10/2024

Ver articulo

Red Flags en tu trabajo y como saber cuando debes irte

02/09/2024

Ver articulo
Whatsapp Mentores Tech