SSH/Kryptografie

Aus Foxwiki
Subpages:

Umgang mit Schlüsselmaterial

Schlüsselmaterial identifiziert die kryptografischen Geheimnisse, aus denen ein Schlüssel besteht.

Sämtliches Schlüsselmaterial muss als RESTRICTED-Daten behandelt werden
  • Nur Personen mit spezieller Ausbildung und dem Bedarf an Wissen sollten Zugang zu Schlüsselmaterial haben.
  • Das Schlüsselmaterial muss bei der Übertragung verschlüsselt werden.
  • Schlüsselmaterial kann im Klartext gespeichert werden, aber nur mit einer angemessenen Zugangskontrolle (begrenzter Zugang).
Keys Beschreibung
Server Keys /etc/ssh/ssh_host_*key
Client Keys /.ssh/id_{rsa,dsa,ecdsa,ed25519}
~/.ssh/identity

Chiffren und Algorithmen

Wahl der Chiffren und Algorithmen

Aktuelle OpenSSH-Server und -Client unterstützen CHACHA20

  • Wenn CHACHA20 (OpenSSH 6.5+) nicht verfügbar ist
  • AES-GCM (OpenSSH 6.1+) und jeder andere Algorithmus, der EtM (Encrypt then MAC) verwendet legt die Paketlänge offen - was dem Angreifer einige Informationen liefert.
  • NIST-Kurven (ecdh-sha2-nistp512,ecdh-sha2-nistp384,ecdh-sha2-nistp256) sind aus Kompatibilitätsgründen aufgeführt, aber die Verwendung von Kurve25519 wird generell bevorzugt.
SSH protocol 2
Group sizes

Die verschiedenen Algorithmen, die von einer bestimmten OpenSSH-Version unterstützt werden, lassen sich mit den folgenden Befehlen auflisten

$ ssh -Q cipher
$ ssh -Q cipher-auth
$ ssh -Q mac
$ ssh -Q kex
$ ssh -Q key

Anmelde-Latenz

Client-Schlüsselgröße und Anmelde-Latenz

Ermitteln der Auswirkungen der Verwendung größerer Schlüssel auf die Leistung.

  • z.B. RSA 4096 Bytes Schlüssel - auf der Client-Seite

Tests

Idle, i7 4500 intel CPU

  • OpenSSH_6.7p1
  • OpenSSL 1.0.1l
  • ed25519 server keys

Der folgende Befehl wird 10 Mal ausgeführt

time ssh localhost -i .ssh/id_thekey exit
Ergebnisse
Client key Minimum Maximum Average
RSA 4096 120ms 145ms 127ms
RSA 2048 120ms 129ms 127ms
ed25519 117ms 138ms 120ms

Zusammenfassung

  • Latenzunterschiede sind nicht signifikant
  • Sie beeinträchtigen die Leistung nicht wesentlich

Konfiguration

SSH/Kryptografie/Konfiguration


Anhang

Siehe auch

Dokumentation

Links

Projekt

Weblinks

  1. Key Management
  2. Server Side TLS
  3. RFC4418 (umac)
  4. umac draft
  5. Safe curves
  6. DJM blog
  7. Stribika blog
  8. AES-GCM performance study
  9. CHACHA20 vs AES-GCM performance study
  10. PROTOCOL.certkeys
  11. rfc44880bis from GnuPG
  12. Weak Diffie-Hellman and the Logjam Attack
  13. On OpenSSH and Logjam, by Jethro Beekman