¿Qué es HTTP y HTTPS?

HTTP
Yuri_Arcurs / Getty Images

HTTP son las siglas en inglés de HiperText Transfer Protocol (en español, protocolo de transferencia de hipertexto). Es un protocolo de red—un protocolo se puede definir como un conjunto de reglas a seguir—que se utiliza para publicar páginas de web o HTML. HTTP es la base sobre la cual se fundamenta Internet o la WWW.

La primera versión documentada de HTTP es la versión 0.9, publicada en 1991. Puedes ver la especificación de la versión 0.9 de HTTP en esta página de WC3.

Cómo funciona el protocolo HTTP

El protocolo HTTP funciona a través de solicitudes y respuestas entre un cliente (por ejemplo un navegador de Internet) y un servidor (por ejemplo la computadora donde residen páginas web). A una secuencia de estas solicitudes se le conoce como sesión de HTTP.

Un cliente envía una solicitud al servidor (conocida como http request). El servidor le responde al cliente (http response) con información, que puede ser código HTML, una imagen o alguna otra cosa que el cliente sabe interpretar. Cuando visitas una página usando tu navegador de Internet, estás usando una sesión de http para obtener todo lo que ves como resultado final: código HTML, imágenes, código JavaScript, etc.

La URI (más conocida como URL) que muestra el navegador de internet en la llamada “barra de navegación” comienza con http, lo que está indicando que se está usando el protocolo http para que se te muestre la página que estás visitando.

Sesiones seguras HTTPS

Cuando un URI comienza con HTTPS en lugar de HTTP, significa que el navegador está usando un esquema seguro para proteger la información que está siendo transferida. Este esquema HTTPS es el que debe de usar toda transacción comercial en Internet. A este esquema se le conoce como TSL.

Una sesión segura se diferencia de una no segura en que la sesión segura agrega criptografía para codificar la información transmitida, de tal suerte que si alguien intercepta la comunicación el contenido de los mensajes no pueda ser descifrado sin contar con las llaves correctas.

Otro aspecto de una sesión segura es que durante ésta se emplean certificados para garantizar que la comunicación se está estableciendo con quien se debe, evitando así un intermediario impostor que intercepte la comunicación.

Son cada vez más las páginas en Internet que emplean conexiones seguras (HTTPS). Hacia el final de 2015 ya casi una tercera parte de las páginas web más populares cuentan con una versión segura.

Ejemplo de una comunicación HTTP

A continuación puedes ver un ejemplo simple de una solicitud de una página, hecha desde un navegador:

  • El cliente hace una solicitud (en este caso un navegador de Internet) para ver la página principal.
GET /principal.html HTTP/1.1
Host: www.pagina.com
  • El servidor envía una respuesta al cliente.
HTTP/1.1 200 OK
Date: Tue, 24 Feb 2016 22:38:34 GMT
Content-Type: text/html; charset=UTF-8
Content-Length: 75
Connection: close
<html>
<head>
<title>Título</title>
</head>
<body>
Nada aquí.
</body>
</html>

La respuesta está simplificada, pero pudiera llevar mucha más información referente a la versión de la página. Por ejemplo, es aquí donde el navegador puede comparar fechas de una página y así saber si una versión almacenada en caché es obsoleta o no.