HTTPS macht das Netz langsam
« | 27 Dec 2018 | »Nachdem wir gelernt haben, dass wir alle Webseiten verschlüsseln sollen, weil irgendwo werden immer Logins oder Cookies übertragen, merken wir, dass wir immer schnellere Rechner brauchen um die Tageszeitung zu lesen.
Natürlich sind daran auch die unerträglichen jQuery und Werbeplugin-Spielereien Schuld, aber einen Punkt übersieht man dabei gerne.
HTTPS macht es sowohl für den Browser als auch für das Internet schwerer, gleiche Daten nur einmal zu übertragen.
Als ich damals, vor 18 Jahren das Internet entdeckte, tat ich das unter der Berücksichtigung der Empfehlung meines damaligen Internetproviders, den Datenverkehr über einen Proxy Server des Anbieters zu leiten.
Heute wissen die wenigsten User, dass man im Browser (oder im Betriebssystem) eine oder mehrere Proxy-Server-Adressen konfigurieren kann.
Der Browser kontaktiert dann beim Aufruf einer Webseite nicht mehr den tatsächlichen Internetserver, sondern beauftragt den Proxy mit dieser Aufgabe. Und der Proxy liefert dann stellvertretend die Webseite, die er selbst abgerufen hat.
Das hatte einen Vorteil: Die Proxies konnten cache
-en, also Ergebnisse
zwischenspeichern. Wollen mehrere User die gleiche Seite lesen, lädt der
Proxy sie nur einmal und verteilt sein Ergebnis mehrfach an die Anfragesteller.
Somit “spart” er dem Internet jede Menge separate Zugriffe.
Zu Zeiten des Web 1.0 wurden Inhalte auch nicht im Sekundentakt aktualisiert,
womit es auch gar nicht notwendig war, immer den Quellserver direkt nach
neuen Inhalten zu befragen.
Aber auch heute gibt es immer noch genug Inhalte (z.B. Fotos aus Artikeln),
die genau einmal erzeugt werden und sich nachträglich nicht mehr ändern.
HTTPS funktioniert auch über Proxies, doch da die Anfrage verschlüsselt ist, kann der Proxy nur die Zieladresse, nicht aber die eigentliche Anfrage lesen. Somit kann kein Cache für statische Daten angelegt werden und jede Anfrage muss also separat ins Internet und wieder zurück geleitet werden.
Theoretisch wäre es jetzt für Webseiten möglich gewesen, dass sie ihre
Daten (HTML,
JSON)
verschlüsselt ausliefern, während Fotos weiter unverschlüsselt übertragen
werden.
Doch da Browser sich in der Vergangenheit mit zahlreichen Scripting-Bugs
und Sicherheitslücken einen Bärendienst erwiesen haben, herrscht seit
langem die Vorgabe, dass innerhalb einer Seite nicht zwischen HTTP
und HTTPS hin- und hergewechselt werden darf.
Proxies haben auch mit dem Ruf zu kämpfen, dass sie selbst der Überwachung von Usern dienen. Denn können natürlich über jeden Verbindungsversuch eines Benutzers Buch führen. Und gerade große Unternehmen tun das auch. Hier geht niemand direkt ins Netz, sondern alles läuft über die zentralen Proxies der Firma.
Ich will HTTPS natürlich auch nicht missen, denn seit dem immer mehr Spionageskandale öffentlich werden, sollte jeder im eigenen Interesse alles verschlüsseln und nur Seiten vertrauen, deren HTTPS Zertifikat auch gültig ist.
Nichts desto trotz gibt es Bereiche wie News und Fotos, deren Download durch klassisches HTTP schneller vonstatten geht, als durch einen HTTPS Kanal.
Und mal ehrlich, wer seine persönlichsten Daten Facebook und Konsorten anvertraut, dem kann auch ein Proxy-Eintrag über ein aktuelles Bild der Tageszeitung herzlich gleichgültig sein.
Seit 2015 ist ein Großteil des Internets auf HTTPS umgestellt. HTTP Anfragen führen automatisch zu einer Umleitung auf eine entsprechende HTTPS Seite.
Daraus ergaben sich für viele Hoster neue Probleme, denn während ein HTTP Server mehrere Domains verwalten konnte, ging dies bei HTTPS nicht. Schließlich muss ja das Zertifikat für eine bestimmte Domäne ausgehandelt werden, bevor man die Daten lesen kann. Wie die Domain heißt, wird aber verschlüsselt übertragen, weshalb nicht zwischen mehreren Zertifikaten ausgewählt werden kann.
Die Application-Layer-Protocol-Negotiation ist eine Erweiterung von TLS, wo der Domainname schon vorher übertragen wird, doch diese Lösung ist deshalb noch lange nicht auf allen Servern aktiv, vor allem weil sie von älteren Systemen noch gar nicht unterstützt wird.
Ein anderer Ansatz sind neue Zertifikate, die für mehrere Domains gelten.
… also … alles in allem löst HTTPS nicht alle Probleme des Netzes
besonders effizient.
Wie auch immer … leider haben wir nicht wirklich eine Alternative.
Oder möchte jemand ein ganz neues Internet erfinden (das auch Chancen auf Durchsetzung) hat?