Die Entwickler des OpenSSH-Projekts haben einen Plan zur Einstellung der Unterstützung für auf dem DSA-Algorithmus basierenden Schlüsseln vorgestellt. Nach heutigen Maßstäben bieten DSA-Schlüssel nicht das erforderliche Schutzniveau, da sie eine private Schlüsselgröße von nur 160 Bit und den SHA1-Hash verwenden, was in Bezug auf die Sicherheit etwa einem 80-Bit symmetrischen Schlüssel entspricht.
Die Verwendung von DSA-Schlüsseln wurde standardmäßig 2015 eingestellt, jedoch blieb die Unterstützung für DSA als Option verfügbar, da dieser Algorithmus der einzig verpflichtend in Protokoll SSHv2 implementierte ist. Diese Anforderung wurde hinzugefügt, weil während der Erstellung und Genehmigung des Protokolls SSHv2 alle alternativen Algorithmen unter Patentschutz standen. Seitdem hat sich die Situation geändert: Die Patente, die mit RSA verbunden waren, sind abgelaufen, der Algorithmus ECDSA wurde hinzugefügt, der DSA in Bezug auf Leistung und Sicherheit erheblich überlegen ist, sowie EdDSA, der sicherer und schneller als ECDSA ist. Der einzige Grund für die Fortsetzung der Unterstützung von DSA war die Aufrechterhaltung der Kompatibilität mit veralteten Geräten.
Die Entwickler von OpenSSH sind zu dem Schluss gekommen, dass die Kosten für die Fortführung der Unterstützung des unsicheren DSA-Algorithmus nicht gerechtfertigt sind, und seine Abschaffung wird dazu beitragen, die Unterstützung von DSA in anderen SSH-Implementierungen und kryptografischen Bibliotheken einzustellen. In der für April geplanten Version von OpenSSH wird die DSA-Build beibehalten, aber die Möglichkeit geboten, DSA während der Kompilierung zu deaktivieren. In der Juni-Version von OpenSSH wird DSA standardmäßig deaktiviert, und Anfang 2025 wird die DSA-Implementierung aus dem Code entfernt.
Benutzer, die DSA-Unterstützung auf der Client-Seite benötigen, können alternative Builds früherer OpenSSH-Zweige verwenden, wie zum Beispiel das in Debian bereitgestellte Paket „openssh-client-ssh1“, das auf OpenSSH 7.5 basiert und zur Verbindung mit SSH-Servern über das SSHv1-Protokoll gedacht ist, dessen Unterstützung in OpenSSH 7.6 vor sechs Jahren eingestellt wurde.
Quelle: opennet.ru
