Firefox 29: HTTP/2.0 (Draft) in Firefox aktivieren
Der aktuelle HTTP-Standard 1.1 ist schon ziemlich in die Tage gekommen, dieser datiert nämlich aus dem Jahr 1999. Ein neuer Standard HTTP/2.0 befindet sich allerdings in Entwicklung und Mozilla ist erwartungsgemäß ganz vorne mit dabei, wenn es um die Implementierung geht. In Firefox 29 kann die Unterstützung für einen aktuellen Entwurf des Standards per Konfiguration aktiviert werden.
HTTP/1.1 stammt aus dem Jahr 1999 und hat sich seit dem nicht verändert. Seit einiger Zeit arbeitet die Hypertext Transfer Protocol Bis-Arbeitsgruppe (HTTPbis) der IETF unter Mitwirkung aller großen Browserhersteller an einem Nachfolge-Protokoll auf Grundlage von Googles SPDY-Protokoll. Während sich HTTP/2.0 noch in Entwicklung befindet, haben die Browserhersteller bereits mit der Implementierung begonnen. So unterstützt Google Chrome beispielsweise Draft 5 und Firefox in Version 29 Draft 9 des kommenden HTTP-Standards (und Draft 5 des dazugehörigen Kompressionsstandards). Mozilla wird in Firefox ausschließlich HTTP/2.0 über TLS, nach aktuellem Stand der Dinge also nur URLs mit https://, implementieren.
Zum Testen benötigt es eine Nightly-Version von Firefox 30 oder Aurora-Version von Firefox 29. Die beiden Schalter network.http.spdy.enabled.http2draft sowie security.ssl.enable_alpn müssen über about:config per Doppelklick auf true geschaltet werden. Darüber hinaus gibt es spezielle Builds, welche ausdrücklich als experimenteller zu sehen sind und HTTP/2.0 über TLS für URLs mit http:// aktivieren. Der finale Entwurf des Protokolls wird für November 2014 erwartet.
Und was bringt das in der Praxis?
Das Testen zum jetzigen Zeitpunkt in Firefox für den durchschnittlichen Endanwender nicht viel, aber für Entwickler ist es unter Umständen interessant, ihre Projekte dahingehend zu überprüfen, ob sie mit HTTP/2.0 erwartungsgemäß funktionieren.
Schön dass dann alles über https läuft, aber hat dann jede Seite ohne Zertifikat eine Warnmeldung?
Da sich HTTP/2.0 noch in der Entwurfsphase befindet und gerade beim Thema Verschlüsselung bis vor kurzem noch viel Uneinigkeit herrschte, ist es glaub ich noch zu früh für finale Aussagen darüber, wie genau das aussieht, ich will da nichts Falsches sagen. 😉
Haben sie sich nicht mittlerweile darüber geeinigt, wie TLS 1.3 jetzt aussehen soll? Wird jedenfalls so langsam Zeit, immerhin stammt der Vorgänger aus 2008 und gut 6-7 Jahre später kann man schonmal ein kleines Update erwarten. 😉 (auch wenn mans bei HTTP auch hätte tun können…. 😀 )
Ich finds persönlich aber etwas schade, dass TLS 1.3 (ist zumindest mein letzter Informationsstand) keine Browserkomponente für Forward Secrecy beiliegen wird. In Sachen Verschlüsselung ist dieses Google-Projekt so ziemlich das beste, was man momentan bekommen kann, und angesichts der mehr oder weniger maroden Serverlandschaften (ja, es gibt heute noch Fraktionen, die hauptsächlich mit RC 4 auf Basis von TLS 1.0 verschlüsseln) wäre clientseitig mehr Sicherheit nicht verkehrt. Leider ist Forward Secrecy bisher nur für die Server bestimmt.
Besteht denn die Chance, dass mit HTTP/2.0 quasi alle Seiten per default verschlüsselt werden? Es also quasi kein http mehr gibt? So habe ich zumindest Googles SPDY bis jetzt immer verstanden…
Weiß ich nicht. Aber wie TLS 1.3 aussehen soll ist ja auch keine Antwort auf die Frage, wie mit Verschlüsselung im Allgemeinen in HTTP/2.0 einerseits für https:// und andererseits für http:// umgegangen werden soll. 😉
Bei diesem Thema gab es wie gesagt viel Uneinigkeit in den letzten Monaten, so dass ich noch nichts als sicher betrachten würde. Aber der Part, dass immer verschlüsselt wird, wurde extra nicht aus SPDY übernommen. Der letzte Stand im November war, dass man sich wohl darauf geeinigt hat, dass HTTP/2.0 in irgendeiner Form immer verschlüsselt sein wird – aber eben auch nur über https:// und dass URLs, welche mit http:// starten, über HTTP/1.1 abgewickelt werden. Eine opportunistische Verschlüsselung für http://, diese allerdings dann ohne Serverauthentifizierung, könnte später hinzugefügt werden, das ist noch vollkommen offen.
seit ich mit der Beta 8 vom FF 29 unterwegs bin, läd bei mir Twitter nicht mehr (about:blank). Bei Aurora das gleiche.
Da an Ostern ja eh nix läuft, hab ich mich heute mal auf die Suche gemacht. Kaum hatte ich network.http.spdy.enabled.http2draft wieder deaktivier, hat Twitter wieder funktioniert.
Wird ja interessant werden im November^^
Ich habe das mal in Beta, Aurora und Nightly in jeweils frischen Profilen getestet. Ich kann das für Beta und Aurora bestätigen – sofern ich vorher noch nicht auf Twitter war. Wenn ich Twitter aufgerufen habe und dann den HTTP/2.0-Draft aktiviere, dann funktioniert Twitter. Ich denke aber, dass das kein großes Problem ist, weil es im Nightly auf Anhieb mit aktiviertem HTTP/2.0-Draft funktioniert und bis die HTTP/2.0-Unterstützung standardmäßig aktiviert werden wird, dürfte die jetzige Nightly-Version bereits final sein.