Zum Inhalt springen

SSH/Kryptografie

Aus Foxwiki

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.

  • beispielsweise 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

Projekt

  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