HTTP and HTTPS

Also known as: HyperText Transfer Protocol, HTTP Secure

HTTP is the request-response protocol of the web; HTTPS is HTTP running inside a TLS-encrypted channel, providing confidentiality, integrity, and server authentication.

Last updated:

What are HTTP and HTTPS?

HTTP (HyperText Transfer Protocol) is the stateless request-response protocol that web browsers and servers use to exchange pages, images, API calls, and every other web asset. HTTPS is the same protocol running inside a TLS encrypted session, providing confidentiality, integrity, and server authentication. Every modern website uses HTTPS; browsers actively warn on the increasingly rare pages that still serve content over plain HTTP.

Ports, versions, and transport

HTTP traditionally uses TCP port 80; HTTPS uses TCP port 443. HTTP/1.1 (1997, text framing) was the dominant wire format through the mid-2010s. HTTP/2 (2015, binary multiplexed framing) and HTTP/3 (2022, running over QUIC instead of TCP) now carry the majority of production web traffic. HTTP/3 moves off TCP entirely to eliminate head-of-line blocking and cut connection setup time from multiple round trips to a single round trip or even zero on repeat connections.

HTTP in traffic analysis

Server logs, CDN logs, WAF logs, and IDS alerts all record the client IP, User-Agent, and request path for every HTTP request. Correlating those against IP reputation and ASN data catches a lot of abuse before it reaches the application layer — scraping from datacenter ASNs, credential stuffing from proxy pools, and vulnerability scans from known-bad /24s all leave distinctive fingerprints in HTTP logs. When investigating a request, the source IP's reputation tells you whether it's a human, a legitimate bot, or an attacker before you look at the payload.

Investigate the source IP behind any suspicious HTTP request with our IP lookup tool.

Frequently Asked Questions

HTTPS is HTTP wrapped in a TLS-encrypted session. The application protocol — request methods, headers, status codes — is identical; the difference is the transport. HTTP runs in plain text on TCP port 80, so anyone on the network path can read or modify the traffic. HTTPS encrypts everything between client and server, authenticates the server's identity via its TLS certificate, and protects against in-flight tampering. Every modern browser warns on plain-HTTP pages.
HTTP/3 is the latest version of HTTP (2022), running over QUIC instead of TCP. QUIC sits on UDP because UDP gave QUIC's designers a clean slate to implement their own congestion control, encryption, and connection migration without TCP's decades of ossified middlebox behavior. The result is faster handshakes (1-RTT or 0-RTT for resumed connections), no head-of-line blocking between independent streams on a single connection, and seamless migration when a phone switches Wi-Fi to cellular without dropping the connection.
Two big drivers: privacy (anyone on the path could read traffic and inject ads or malware) and authentication (no way to verify the server was who it claimed to be). Browsers now mark all plain-HTTP pages as "Not Secure" in the address bar, search engines penalize them in rankings, and many APIs and embedded content (mixed-content blocking) refuse to load over HTTP. Free TLS certificates from Let's Encrypt removed the last remaining cost barrier. As of 2025, more than 95% of page loads in major browsers are HTTPS.
It means the connection between your browser and the server is encrypted via TLS, the server presented a TLS certificate that chains to a CA your browser trusts, and the certificate names a domain that matches the URL you typed. The padlock icon represents this state. It does not mean the site is safe, legitimate, or operated by the brand it appears to be — phishing sites with free Let's Encrypt certificates show the same padlock as a real bank.
HTTP defines five classes of three-digit status codes: 1xx (informational, like 100 Continue), 2xx (success — 200 OK, 201 Created, 204 No Content), 3xx (redirection — 301 Moved Permanently, 302 Found, 304 Not Modified), 4xx (client error — 400 Bad Request, 401 Unauthorized, 403 Forbidden, 404 Not Found, 429 Too Many Requests), and 5xx (server error — 500 Internal Server Error, 502 Bad Gateway, 503 Service Unavailable, 504 Gateway Timeout). The IANA status-code registry has the full list of around 60 standardized codes.