El Protocolo de transferencia de hipertexto (http) es un sistema para transmitir y recibir información a través de Internet. Http sirve como un procedimiento de solicitud y respuesta que siguen todos los agentes en Internet para que la información se pueda difundir de manera rápida, fácil y precisa entre los servidores que contienen información y los clientes que intentan acceder a ella. Http se usa comúnmente para acceder a páginas html, pero también se pueden utilizar otros recursos a través de http. En muchos casos, los clientes pueden estar intercambiando información confidencial con un servidor, que debe estar protegido para evitar el acceso no autorizado. Por esta razón, Netscape Corporation desarrolló https, o http seguro, para permitir la autorización y transacciones seguras.
En muchos sentidos, https es idéntico a http, porque sigue los mismos protocolos básicos. El cliente http o https, como un navegador web, establece una conexión a un servidor en un puerto estándar. Cuando un servidor recibe una solicitud, devuelve un estado y un mensaje, que puede contener la información solicitada o indicar un error si parte del proceso no funciona correctamente. Ambos sistemas utilizan el mismo esquema de Identificador uniforme de recursos (URI), por lo que los recursos se pueden identificar universalmente. El uso de https en un esquema de URI en lugar de http indica que se desea una conexión cifrada.
Sin embargo, existen algunas diferencias principales entre http y https, comenzando con el puerto predeterminado, que es 80 para http y 443 para https. Https funciona transmitiendo interacciones http normales a través de un sistema encriptado, de modo que, en teoría, nadie más que el cliente y el servidor final puede acceder a la información. Hay dos tipos comunes de capas de cifrado: Seguridad de la capa de transporte (TLS) y Capa de sockets seguros (SSL), las cuales codifican los registros de datos que se intercambian.
Cuando se utiliza una conexión https, el servidor responde a la conexión inicial ofreciendo una lista de métodos de cifrado que admite. En respuesta, el cliente selecciona un método de conexión y el cliente y el servidor intercambian certificados para autenticar sus identidades. Una vez hecho esto, ambas partes intercambian la información encriptada después de asegurarse de que ambas estén usando la misma clave y la conexión esté cerrada. Para alojar conexiones https, un servidor debe tener un certificado de clave pública, que incluye información de clave con una verificación de la identidad del propietario de la clave. La mayoría de los certificados son verificados por un tercero para que los clientes estén seguros de que la clave es segura.
Https se utiliza en muchas situaciones, como páginas de inicio de sesión para banca, formularios, inicios de sesión corporativos y otras aplicaciones en las que los datos deben estar seguros. Sin embargo, si no se implementa correctamente, https no es infalible y, por lo tanto, es extremadamente importante que los usuarios finales tengan cuidado con la aceptación de certificados cuestionables y sean cautelosos con su información personal mientras usan Internet.