HTTP und HTTPS
HTTP (Hypertext Tranfer Protocol) ist das zugrunde liegende Protokoll für das World Wide Web. Es läuft über den Port 80 und übermittelt Daten von einem Webserver zum Web-Browser und umgekehrt; als Transportprotokoll wird - wie bei FTP - TCP/IP verwendet. Dabei werden HTML-Dokumente übertragen, aber ebenso auch Bilder, Audio- und Videodaten. Wie und womit diese zusätzlichen Daten dargestellt werden, wird über die MIME-Typen auf dem Client ermittelt. HTTP gibt es in den Versionen 1.0 und 1.1. Diese unterscheiden sich in einigen Funktionen. So wird etwa in Version 1.0 die Verbindung beendet, sobald die Daten übertragen wurden. In Version 1.1 kann man mit dem Header-Eintrag keep-alive die Verbindung aufrechterhalten. Version 1.1 kann darüber hinaus abgebrochene Übertragungen wieder aufnehmen.
Für verschlüsselte Übertragungen steht HTTPS zur Verfügung - standardmäßig läuft die Kommunikation über den Port 443. Das von Netscape entwickelte Protokoll schiebt eine Schicht zwischen HTTP und TCP. HTTPS ist identisch mit HTTP; die Verschlüsselung erfolgt mittels TLS (Trasnport Layer Security), bis dato als SSL (Secure Socket Layer) bekannt. In HTTPS findet zunächst eine gesicherte Authentifizierung von Server und Client statt. Dann wird ein Sitzungsschlüssel erzeugt und ausgetauscht, der zum Verschlüsseln der übertragenen Daten dient. Wer einen HTTPS-Server einsetzen will, benötigt SSL-Routinen. Diese werden beispielsweise im Apache-Webserver als Modul geladen. Weiterhin benötigt man ein digitales Zertifikat, das üblicherweise von einer Zertifizierungsstelle ausgestellt wird. Die Kosten dafür betragen zwischen rund 40 US-Dollar bis über 1000 US-Dollar pro Jahr. Einige Organisationen wie Startcom und Cacert stellen auch kostenlos Zertifikate aus.