Early-Data header

Limited availability

This feature is not Baseline because it does not work in some of the most widely-used browsers.

Experimentell: Dies ist eine experimentelle Technologie
Überprüfen Sie die Browser-Kompatibilitätstabelle sorgfältig vor der Verwendung auf produktiven Webseiten.

Der HTTP-Early-Data-Request-Header wird von einem Zwischenserver gesetzt, um anzuzeigen, dass die Anfrage in TLS-Frühdaten übermittelt wurde und dass der Zwischenserver den 425 Too Early-Statuscode versteht.

Wenn ein Client kürzlich mit einem Server interagiert hat, ermöglicht es Frühdaten (auch bekannt als null-Round-Trip-Time-(0-RTT)-Daten) dem Client, Daten an einen Server in der ersten Round-Trip-Zeit einer Verbindung zu senden, ohne auf den Abschluss des TLS-Handshakes zu warten. Dies reduziert die Latenzzeit bei erneuten Verbindungen zwischen einem Client und einem Server, hat jedoch Sicherheitsimplikationen, da Frühdaten anfällig für Replay-Angriffe sind.

Der Early-Data-Header wird nicht vom Urheber der Anfrage (d.h. von einem Browser) gesetzt.

Headertyp Request-Header
Verbotener Request-Header Nein

Syntax

http
Early-Data: 1

Beispiele

Eine GET-Anfrage mit einem Early-Data-Header

Ein Client, der Frühdaten verwenden möchte, kann HTTP-Anfragen unmittelbar nach dem Senden des TLS-ClientHello senden. Das Senden einer Anfrage in Frühdaten impliziert, dass der Client bereit ist, eine Anfrage als Antwort auf einen 425 Too Early-Statuscode zu wiederholen, sodass der Early-Data-Header nicht enthalten ist:

http
GET /resource HTTP/1.1
Host: example.com

Ein Zwischenserver, der eine Anfrage vor Abschluss des TLS-Handshakes mit seinem Client weiterleitet, sendet sie mit dem Early-Data-Header, der auf 1 gesetzt ist:

http
GET /resource HTTP/1.1
Host: example.com
Early-Data: 1

Spezifikationen

Specification
Using Early Data in HTTP
# header

Browser-Kompatibilität

Siehe auch