Alles Wissenswerte, nichts Unwissendes.
Was wurde entfernt?
TLS 1.3 verzichtet auf RSA-Schlüsselaustausch, statisches DH, CBC-Modus-Verschlüsselungen, MD5 und SHA-1 im Handshake, Komprimierung (die für Angriffe der CRIME-Klasse relevant ist) und Neuverhandlung. Verbleibend sind: ECDHE für Forward Secrecy, AES-GCM/ChaCha20-Poly1305 für AEAD und SHA-256/384 für das Transkript-Hashing. Die Anzahl der Verschlüsselungssuiten reduzierte sich von Dutzenden auf fünf. Dies ist eine beabsichtigte Funktion.
Was hat sich beim Händedruck geändert?
TLS 1.3 benötigt für den vollständigen Handshake nur noch einen Roundtrip (statt bisher zwei) und unterstützt die Wiederaufnahme von Verbindungen ohne Roundtrip (0-RTT). Bei einem SMPP-Transceiver, der sich alle paar Stunden neu verbindet, summiert sich die eingesparte Roundtrip-Zeit (RTT). Noch wichtiger ist jedoch, dass der einfachere Handshake die Angriffsfläche für Downgrade-Attacken beseitigt, die TLS 1.2 so stark beeinträchtigten (POODLE, FREAK, Logjam).
Was SMPP-Kunden überprüfen sollten
Drei Dinge: Ihre Clientbibliothek unterstützt TLS 1.3 (die meisten tun dies seit 2022; prüfen Sie OpenSSL >= 1.1.1, JSSE ab JDK 11 und Go 1.12+). Der SMSC akzeptiert TLS 1.3. Die Liste der unterstützten Verschlüsselungsverfahren auf Ihrer Seite enthält mindestens eines der folgenden: `TLS_AES_128_GCM_SHA256` oder `TLS_CHACHA20_POLY1305_SHA256`.
Wo TLS 1.2 noch immer existiert
Einige ältere SMSC-Stacks (Acision unter RHEL 5, bestimmte Huawei-Knoten) unterstützen maximal TLS 1.2, da die zugrundeliegende OpenSSL-Bibliothek nicht mehr unterstützt wird. Wir verhandeln bei Bedarf eine niedrigere Sicherheitsstufe, setzen aber für jede neue Verbindung TLS 1.3 voraus. Aus Gründen der PDPL-Prüfung läuft bei BroadNet das gesamte produktive SMPP über TLS 1.3 mit Cipher Pinning.