Server mit TLS 1.3, die eine ältere Version aushandeln, müssen die letzten 8 Byte von ServerHello.random bei TLS 1.2 auf 44 4F 57 4E 47 52 44 01 (ASCII DOWNGRD plus 0x01) setzen, bei TLS 1.1 und älter auf …00; Clients mit TLS 1.3, die das empfangen, müssen den Verbindungsaufbau abbrechen (RFC 9846 §4.2.3). Weil der Server-Random-Wert von der Signatur des Servers abgedeckt ist, kann ein Angreifer ihn nicht entfernen.
Frühere Schutzmaßnahmen: der Signalisierungswert TLS_FALLBACK_SCSV (RFC 7507) gegen Browser, die es erneut mit niedrigeren Versionen versuchten (die Zeit von POODLE), und der Hash des Handshake-Transkripts in Finished, der Manipulationen an ausgehandelten Parametern erkennt. In TLS 1.2 waren Downgrades auf Export- oder RSA-Schlüsselaustausch erfolgreich (FREAK, Logjam), weil Server die schwachen Optionen noch unterstützten; die eigentliche Lösung ist, sie zu deaktivieren.
Dieselbe Idee gilt auch anderswo: HSTS und MTA-STS verhindern Downgrades von HTTPS oder STARTTLS auf Klartext, und ein hybrider Schlüsselaustausch darf einer Gegenstelle nicht erlauben, den Post-Quanten-Anteil zu entfernen – deshalb wird er als eine einzige Gruppe ausgehandelt.