1. Einführung
Dieses Dokument beschreibt Ergänzungen zu TLS zur Unterstützung von ECC, die auf TLS-Versionen 1.0 [RFC2246], 1.1 [RFC4346] und 1.2 [RFC5246] anwendbar sind. Die Verwendung von ECC in TLS 1.3 ist in [TLS1.3] definiert und liegt ausdrücklich außerhalb des Geltungsbereichs dieses Dokuments. Insbesondere definiert dieses Dokument:
-
die Verwendung von ECDHE-Schlüsselvereinbarungsschemata mit ephemeren Schlüsseln zur Etablierung des TLS-Pre-Master-Secrets, und
-
die Verwendung von ECDSA- und EdDSA-Signaturen zur Authentifizierung von TLS-Peers.
Der Rest dieses Dokuments ist wie folgt aufgebaut. Abschnitt 2 gibt einen Überblick über die ECC-basierten Schlüsselaustauschalgorithmen für TLS. Abschnitt 3 beschreibt die Verwendung von ECC-Zertifikaten zur Client-Authentifizierung. Die TLS-Erweiterungen, die es einem Client ermöglichen, die Verwendung bestimmter Kurven und Punktformate auszuhandeln, werden in Abschnitt 4 vorgestellt. Abschnitt 5 spezifiziert verschiedene Datenstrukturen, die für einen ECC-basierten Handshake benötigt werden, ihre Kodierung in TLS-Nachrichten und die Verarbeitung dieser Nachrichten. Abschnitt 6 definiert ECC-basierte Cipher Suites und identifiziert eine kleine Teilmenge davon als empfohlen für alle Implementierungen dieser Spezifikation. Abschnitt 8 diskutiert Sicherheitsüberlegungen. Abschnitt 9 beschreibt IANA-Überlegungen für die Namensräume, die durch den Vorgänger dieses Dokuments erstellt wurden. Anhang B enthält die Unterschiede zu RFC 4492, dem Dokument, das dieses hier ersetzt.
Die Implementierung dieser Spezifikation erfordert Vertrautheit mit TLS, TLS-Erweiterungen [RFC4366] und ECC.
1.1. In diesem Dokument verwendete Konventionen
Die Schlüsselwörter "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY" und "OPTIONAL" in diesem Dokument sind so zu interpretieren, wie in BCP 14 [RFC2119] [RFC8174] beschrieben, wenn, und nur wenn, sie in Großbuchstaben erscheinen, wie hier gezeigt.