STARTTLS bzw. StartTLS bezeichnet ein Verfahren zur sicheren Kommunikation auf der Transportschicht via Transport Layer Security und ermöglicht dadurch Authentifizierung, Integrität und Vertraulichkeit der übertragenen Nachrichten.
Inhaltsverzeichnis |
Bei der Erweiterung des Übertragungsprotokolls SMTP zu ESMTP wurde eine neue Serverantwort STARTTLS spezifiziert, die anzeigt, dass die weitere Kommunikation verschlüsselt erfolgen kann. Dieser Mechanismus wurde kurz darauf auch für POP3 (Keyword STLS) und IMAP (Keyword STARTTLS) spezifiziert.
Bei der älteren Vorgehensweise zur Verschlüsselung der Mailverbindung setzt diese bereits beim Verbindungsaufbau ein. Hier geschieht die Abstimmung zwischen Client und Server, ob eine Verschlüsselung erfolgen soll, häufig durch Ansprache unterschiedlicher Ports für unverschlüsselte bzw. verschlüsselte Kommunikation.
Beispiele für Standardports:
Im Gegensatz dazu beginnt eine Verbindung nach STARTTLS immer unverschlüsselt auf den normalen Ports und fährt auch nach Einigung und Umschaltung auf Verschlüsselung auf diesen fort. Ein essentieller Vorteil bei STARTTLS ist die Tatsache, dass die Peers die Fähigkeiten aushandeln können; wird auf einem dedizierten SSL-Port eine Klartextverbindung aufgebaut, kommt es zwangsläufig zum Abbruch, in umgekehrter Kombination ebenso. Dank STARTTLS kann zum Beispiel der Client (ohne Userinteraktion) wahrnehmen, dass der Server die Erweiterung bietet und automatisch Gebrauch davon machen. Im Alternativfall müsste der Client erst den dedizierten Port anvisieren, auf den Timeout warten und danach den Klartext-Port testen.
Ein essentieller Nachteil ist jedoch die Tatsache, dass beim Firewalling eine Analyse auf Anwendungsschicht nötig wird, um verschlüsselte und unverschlüsselte Verbindungen zu unterscheiden. Ähnliches trifft auf Proxys zu, die zwar auf Applikationsebene arbeiten, aber über die Portunterscheidung sehr viel leichter und schneller darüber entscheiden können, ob ein Caching ausgeführt werden soll.
Im RFC 2595, in dem STARTTLS für POP3, IMAP und ACAP spezifiziert wurde, wird von der Verwendung des älteren Verfahrens mit dedizierten Ports abgeraten.
Für HTTP gibt es mit RFC 2817 ein zu STARTTLS vergleichbares Verfahren, um TLS-Verbindungen aufzubauen. Üblicherweise wird hier aber HTTPS nach RFC 2818 verwendet.
Auch bei LDAP (RFC 4511) kann Mithilfe des STARTTLS-Kommandos die Verschlüsselung initiiert werden.