🔐 Moderne Kryptographie

Verschlüsselungstechnologien - © M. Meili

🔒 AES (Advanced Encryption Standard)

Was ist AES?
AES ist der moderne Standard für symmetrische Verschlüsselung. Er nutzt Blockgrösse von 128 Bit und Schlüssellängen von 128, 192 oder 256 Bit. AES ist sicher, schnell und wird weltweit eingesetzt.
256
Bit Schlüssellänge
Ergebnis erscheint hier...

🎯 AES Sicherheitsvisualisierung

Anzahl möglicher Schlüssel:
2256 ≈ 1.16 × 1077 Kombinationen

Bei 1 Milliarde Versuchen pro Sekunde würde das Ausprobieren aller Schlüssel 3.67 × 1060 Jahre dauern!

📊 AES Modi Vergleich

Modus Parallelisierbar Fehlerfortpflanzung Anwendung
CBC ❌ Nein (Verschl.) / ✅ Ja (Entschl.) Nur ein Block Dateiverschlüsselung
CTR ✅ Ja Kein Netzwerkverschlüsselung
ECB ✅ Ja Kein ⚠️ Unsicher für die meisten Zwecke
GCM ✅ Ja Kein Moderne Authentifizierung

🔓 DES & 3DES (Data Encryption Standard)

⚠️ Wichtiger Hinweis:
DES gilt heute als unsicher und sollte nicht mehr verwendet werden! Die Schlüssellänge von nur 56 Bit ist für moderne Computer zu kurz. 3DES ist ebenfalls veraltet und wird durch AES ersetzt.

📜 DES (1977)

Schlüssellänge: 56 Bit (+ 8 Parity Bits)

Blockgrösse: 64 Bit

Runden: 16

UNSICHER Schnell
Geknackt in:
22 Stunden (1998)

🔒 3DES / Triple DES

Schlüssellänge: 168 Bit (effektiv 112 Bit)

Blockgrösse: 64 Bit

Prinzip: DES drei Mal anwenden

VERALTET Langsam
Sicherheit:
Bedingt sicher

🎮 3DES Demo

Ergebnis erscheint hier...

📈 DES Brute-Force Simulation

Simulation: Wie lange dauert es, einen DES-Schlüssel zu knacken?

36 Tage
DES (56 Bit)
5.3 × 10²⁵ Jahre
3DES (112 Bit)
10⁶⁰ Jahre
AES-256

🔐 Weitere Symmetrische Verschlüsselungen

🐡 Blowfish

1993 Sehr schnell

Schlüssel: 32-448 Bit

Block: 64 Bit

Runden: 16

Entwickelt von Bruce Schneier. Sehr schnell in Software, aber aufgrund der kleinen Blockgrösse für grosse Datenmengen ungeeignet.

🐠 Twofish

1998 Sicher

Schlüssel: 128, 192, 256 Bit

Block: 128 Bit

Runden: 16

Nachfolger von Blowfish. War AES-Finalist. Sehr sicher, aber etwas langsamer als AES.

🐍 Serpent

Sehr sicher Langsam

Schlüssel: 128, 192, 256 Bit

Block: 128 Bit

Runden: 32

Ebenfalls AES-Finalist. Gilt als sehr sicher durch konservatives Design, aber langsamer als AES.

🌸 Camellia

2000 Sicher

Schlüssel: 128, 192, 256 Bit

Block: 128 Bit

Runden: 18 oder 24

Von Mitsubishi und NTT entwickelt. Ähnliche Sicherheit und Performance wie AES.

🌱 SEED

1998

Schlüssel: 128 Bit

Block: 128 Bit

Runden: 16

Südkoreanischer Standard. Wird hauptsächlich in Korea verwendet.

🎲 CAST5/6

1996/1998

CAST5: 40-128 Bit Schlüssel, 64 Bit Block
CAST6: bis 256 Bit Schlüssel, 128 Bit Block

Verwendet in PGP. CAST6 war AES-Finalist.

💡 IDEA

1991

Schlüssel: 128 Bit

Block: 64 Bit

Runden: 8

Wurde in PGP verwendet. Patentiert bis 2012. Gilt als sicher, aber durch kleine Blockgrösse limitiert.

🎯 RC4/RC5/RC6

RC4: UNSICHER

RC4: Stream-Cipher, heute unsicher
RC5: Variable Parameter, flexibel
RC6: AES-Finalist, basiert auf RC5

RC4 sollte nicht mehr verwendet werden!

🎮 Blowfish Demo / Rabbit

ℹ️ Hinweis:
Blowfish ist nicht in der Standard-CryptoJS-Bibliothek enthalten. Diese Demo verwendet Rabbit (ein anderer schneller Stream-Cipher) als Alternative.
Ergebnis erscheint hier...

🔐 RSA (Rivest-Shamir-Adleman)

Was ist RSA?
RSA ist das bekannteste asymmetrische Verschlüsselungsverfahren. Es verwendet ein Schlüsselpaar: einen öffentlichen Schlüssel zum Verschlüsseln und einen privaten Schlüssel zum Entschlüsseln. Die Sicherheit basiert auf der Schwierigkeit, grosse Zahlen zu faktorisieren.

🔑 RSA Schlüsselgenerierung (Vereinfacht)

Diese Demo zeigt das RSA-Prinzip mit kleinen Primzahlen. In der Praxis werden viel grössere Zahlen verwendet!

2048
Empfohlene Bit-Länge
Klicken Sie auf "Schlüssel Generieren"

🔒 RSA Verschlüsselung Demo

Generieren Sie zuerst Schlüssel...

📚 RSA Schritt für Schritt

1. Wähle zwei Primzahlen: p und q
2. Berechne n: n = p × q (Teil des öffentlichen und privaten Schlüssels)
3. Berechne φ(n): φ(n) = (p-1) × (q-1)
4. Wähle e: 1 < e < φ(n), teilerfremd zu φ(n) (öffentlicher Exponent)
5. Berechne d: d × e ≡ 1 (mod φ(n)) (privater Exponent)
6. Öffentlicher Schlüssel: (e, n)
7. Privater Schlüssel: (d, n)

⚡ RSA Anwendungsfälle

📧 Digitale Signaturen

Mit privatem Schlüssel signieren, mit öffentlichem verifizieren

🔐 Schlüsselaustausch

Symmetrische Schlüssel sicher übertragen

🌐 SSL/TLS

Sichere HTTPS-Verbindungen

🤝 Diffie-Hellman Schlüsselaustausch

Was ist Diffie-Hellman?
Diffie-Hellman ermöglicht es zwei Parteien, über einen unsicheren Kanal einen gemeinsamen geheimen Schlüssel zu vereinbaren, ohne dass ein Lauscher diesen ermitteln kann. Die Sicherheit basiert auf dem Diskreten Logarithmus Problem.

🎮 Interaktive Diffie-Hellman Demo

⚙️ Öffentliche Parameter

ℹ️ Hinweis:
In der Praxis werden p Werte mit 2048+ Bit verwendet!
Diese Demo nutzt kleine Zahlen zur Veranschaulichung.
👤 Alice
↔️
📡 Öffentlich
↔️
👤 Bob

👤 Alice

A = g^a mod p = ?

👤 Bob

B = g^b mod p = ?
Führen Sie die Berechnungen durch...

📐 Mathematische Formeln

Alice: A = g^a mod p
Bob: B = g^b mod p

Alice berechnet: s = B^a mod p
Bob berechnet: s = A^b mod p

Beide erhalten denselben Wert s:
s = (g^b)^a mod p = (g^a)^b mod p = g^(ab) mod p

🛡️ Sicherheitsaspekte

✅ Sicher gegen:
  • Passive Angreifer (Abhören)
  • Known-Plaintext Attacks
⚠️ Anfällig für:
  • Man-in-the-Middle Angriffe
  • Lösung: Authentifizierung verwenden!

🔐 ECDH & ElGamal

📈 ECDH (Elliptic Curve Diffie-Hellman)

Modern Sehr sicher
Was ist ECDH?
ECDH ist eine Variante von Diffie-Hellman, die elliptische Kurven verwendet. Der grosse Vorteil: Mit kürzeren Schlüsseln wird die gleiche Sicherheit erreicht!
Schlüsselvergleich:
ECDH RSA/DH Sicherheit
256 Bit 3072 Bit ~128 Bit
384 Bit 7680 Bit ~192 Bit
521 Bit 15360 Bit ~256 Bit
Beliebte Kurven:
  • P-256 (secp256r1): NIST Standard
  • P-384 (secp384r1): Höhere Sicherheit
  • Curve25519: Moderne, sichere Kurve
  • X448: Noch höhere Sicherheit

🎯 ElGamal Verschlüsselung

1985 Sicher
Was ist ElGamal?
ElGamal ist ein asymmetrisches Verschlüsselungsverfahren, das wie Diffie-Hellman auf dem Diskreten Logarithmus Problem basiert.
Eigenschaften:
  • ✅ Semantische Sicherheit (randomisiert)
  • ✅ Kann für Signaturen verwendet werden
  • ❌ Ciphertext doppelt so lang wie Klartext
  • ⚡ Langsamer als RSA
Anwendungen:
  • PGP (Pretty Good Privacy)
  • GNU Privacy Guard (GPG)
  • Digitale Signaturen

🎮 ECDH Visualisierung

Elliptische Kurve Punkt-Multiplikation
G n×G

Prinzip: Es ist einfach, n×G zu berechnen, aber schwer, n aus G und n×G zurückzurechnen (Elliptic Curve Discrete Logarithm Problem)

📊 Vergleich: ECDH vs. klassisches DH vs. RSA

Eigenschaft ECDH DH RSA
Schlüssellänge (128-bit Sicherheit) 256 Bit ✅ 3072 Bit 3072 Bit
Performance Sehr schnell ✅ Mittel Langsam
Bandbreite Niedrig ✅ Hoch Hoch
Mobile Geräte Optimal ✅ OK OK
Zukunftssicher Ja ✅ Bedingt Bedingt

🚀 Warum ECDH die Zukunft ist

12x
Kleinere Schlüssel
10x
Schneller
100%
Mobile-optimiert

🔒 TLS/SSL (Transport Layer Security)

Was ist TLS/SSL?
TLS (Transport Layer Security) ist das Protokoll, das HTTPS absichert. Es kombiniert symmetrische und asymmetrische Verschlüsselung für sichere Kommunikation im Internet. SSL ist der veraltete Vorgänger von TLS.
⚠️ SSL ist veraltet!
SSL 2.0 und 3.0 gelten als unsicher. Heute wird ausschliesslich TLS verwendet (TLS 1.2 oder besser TLS 1.3).

🤝 TLS Handshake Visualisierung

1. Client Hello 👤→🖥️
Client sendet: TLS Version, Cipher Suites, Zufallszahl
2. Server Hello 🖥️→👤
Server sendet: Gewählte Cipher Suite, Zufallszahl, Zertifikat
3. Zertifikat Überprüfung 👤
Client prüft Serverzertifikat und CA-Signatur
4. Schlüsselaustausch 👤↔️🖥️
Client generiert Pre-Master-Secret, verschlüsselt mit Server Public Key
5. Session Keys 👤🔑🖥️
Beide berechnen Session Keys für symmetrische Verschlüsselung
6. Finished 👤✅🖥️
Beide senden verschlüsselte "Finished" Nachrichten
7. Verschlüsselte Kommunikation 👤🔐🖥️
Daten werden mit symmetrischer Verschlüsselung (z.B. AES) übertragen

🎯 TLS 1.3 Verbesserungen

✅ Was ist neu in TLS 1.3?
  • Schneller: 1-RTT Handshake (statt 2-RTT)
  • 0-RTT: Noch schneller bei Reconnects
  • Weniger Cipher Suites: Nur sichere Optionen
  • Forward Secrecy: Immer aktiviert
  • Einfacher: Weniger komplexe Optionen
🗑️ Entfernte unsichere Features:
  • RSA Key Exchange (keine Forward Secrecy)
  • Static Diffie-Hellman
  • Kompression (CRIME Angriff)
  • RC4, DES, 3DES (schwache Cipher)
  • MD5, SHA-1 (schwache Hash-Funktionen)

📊 TLS Cipher Suites

Eine Cipher Suite definiert die verwendeten Algorithmen. Format: TLS_KEYEXCHANGE_AUTH_WITH_CIPHER_MAC

Cipher Suite Schlüsselaustausch Verschlüsselung Sicherheit
TLS_AES_256_GCM_SHA384 ECDHE AES-256-GCM Sehr sicher
TLS_CHACHA20_POLY1305_SHA256 ECDHE ChaCha20 Sehr sicher
TLS_AES_128_GCM_SHA256 ECDHE AES-128-GCM Sicher
TLS_RSA_WITH_AES_128_CBC_SHA RSA AES-128-CBC Veraltet

🎮 Interaktive TLS Simulator

Klicken Sie auf "TLS Handshake Starten" um die Simulation zu sehen...

🔍 Wichtige TLS Konzepte

🎫 Zertifikate

X.509 Zertifikate enthalten:

  • Public Key des Servers
  • Domainname
  • Gültigkeitsdauer
  • CA Signatur

🔐 Forward Secrecy

Selbst wenn der private Schlüssel kompromittiert wird, bleiben vergangene Sessions sicher durch ephemere Schlüssel.

✅ HSTS

HTTP Strict Transport Security zwingt Browser, immer HTTPS zu verwenden - keine unsicheren HTTP-Verbindungen!

🌐 Kryptographische Protokolle

🔐 IPSec (Internet Protocol Security)

VPN Standard
IPSec sichert IP-Pakete auf Netzwerkebene. Wird für VPN-Verbindungen verwendet.
Modi:
  • Transport Mode: Nur Payload verschlüsselt
  • Tunnel Mode: Komplettes IP-Paket verschlüsselt
Protokolle:
  • AH (Authentication Header): Integrität & Authentizität
  • ESP (Encapsulating Security Payload): Verschlüsselung
  • IKE (Internet Key Exchange): Schlüsselmanagement

🔑 SSH (Secure Shell)

Remote Access
SSH ermöglicht sichere Remote-Verbindungen und Dateiübertragungen.
Funktionen:
  • Verschlüsselte Terminal-Sessions
  • Sicherer Dateitransfer (SCP, SFTP)
  • Port Forwarding / Tunneling
  • Public Key Authentication
Verwendete Algorithmen:
  • RSA, DSA, ECDSA, Ed25519 (Keys)
  • AES, ChaCha20 (Verschlüsselung)
  • Diffie-Hellman, ECDH (Key Exchange)

📧 PGP (Pretty Good Privacy)

Email Verschlüsselung
PGP verschlüsselt Emails und Dateien. Nutzt hybride Verschlüsselung.
Funktionsweise:
  1. Nachricht wird mit symmetrischem Schlüssel verschlüsselt (z.B. AES)
  2. Symmetrischer Schlüssel wird mit Public Key verschlüsselt (RSA)
  3. Beides wird zusammen gesendet
  4. Empfänger entschlüsselt Schlüssel mit Private Key
  5. Dann wird Nachricht mit Schlüssel entschlüsselt
Features:
  • ✅ Verschlüsselung
  • ✅ Digitale Signaturen
  • ✅ Web of Trust
  • ✅ Datei-Verschlüsselung

💬 Signal Protocol

Messenger
End-to-End Verschlüsselung für Messaging Apps (Signal, WhatsApp, etc.)
Eigenschaften:
  • Double Ratchet: Neue Keys für jede Nachricht
  • Forward Secrecy: Vergangene Nachrichten bleiben sicher
  • Future Secrecy: Kompromittierung betrifft nur kurzen Zeitraum
  • Deniability: Nachrichtenursprung abstreitbar

🎮 IPSec Tunnel Visualisierung

IPSec Tunnel Mode
🏢 Netzwerk A
🔐 Verschlüsselter
Tunnel
🏢 Netzwerk B

Das gesamte IP-Paket wird verschlüsselt und in ein neues IP-Paket eingebettet

🔐 PGP Email-Verschlüsselung Demo

-----BEGIN PGP MESSAGE----- Version: GnuPG v2.0.22 hQEMA5qETcGag5w6AQf9HMEqVo9pEhf+qzJYR8sOL yFR7C0RP8K3KUfCqYLaIqz7QE/lVmdGIvNdl8Zxv Ky1pqLR4zOG9bQHLMvKwC3XRQP... -----END PGP MESSAGE-----

Bestandteile: Version, verschlüsselter Session Key, verschlüsselter Nachrichteninhalt, Integritätsprüfung

📊 Protokoll-Vergleich

Protokoll Schicht Hauptzweck Typische Nutzung
TLS/SSL Transport Web-Sicherheit HTTPS, Email (STARTTLS)
IPSec Network VPN Site-to-Site VPN, Remote Access
SSH Application Remote Admin Server Management, SFTP
PGP Application Email/File Encryption Sichere Emails, Dateiverschlüsselung

📊 Grosser Kryptographie-Vergleich

🔐 Symmetrische vs. Asymmetrische Verschlüsselung

Eigenschaft Symmetrisch (z.B. AES) Asymmetrisch (z.B. RSA)
Schlüssel Ein gemeinsamer Schlüssel Schlüsselpaar (Public/Private)
Geschwindigkeit ⚡ Sehr schnell (1000x) 🐢 Langsam
Schlüssellänge 128-256 Bit 2048-4096 Bit
Schlüsselaustausch ❌ Problem! ✅ Einfach
Anwendung Grosse Datenmengen Schlüsselaustausch, Signaturen

🏆 Algorithmen nach Sicherheit

✅ Empfohlen (2024+)

  • AES-256
  • ChaCha20
  • RSA-3072+
  • ECDH/ECDSA (P-256+)
  • Ed25519
  • SHA-256/SHA-3

⚠️ Akzeptabel (Legacy)

  • AES-128
  • RSA-2048
  • 3DES (nur noch kurz)
  • SHA-1 (nur Signaturen)

❌ Unsicher

  • DES
  • RC4
  • MD5
  • RSA-1024
  • SHA-1 (Zertifikate)

⚡ Performance-Vergleich

Relative Geschwindigkeit bei 1 MB Daten (AES-128 = 1.0)

AES-128:
1.0x (Referenz)
AES-256:
0.85x
ChaCha20:
0.95x
3DES:
0.2x
Blowfish:
0.8x
RSA-2048:
0.001x

🎯 Anwendungsfälle

Anwendung Beste Wahl Warum?
Festplattenverschlüsselung AES-256 (XTS Mode) Schnell, sicher, Hardware-Unterstützung
HTTPS/TLS AES-GCM + ECDHE Performance + Forward Secrecy
VPN AES-256 + IPSec/WireGuard Sicherheit + Geschwindigkeit
Email-Verschlüsselung PGP/GPG (RSA/ECDH + AES) Standard, End-to-End
Messaging (Signal, WhatsApp) Signal Protocol (Double Ratchet) Forward/Future Secrecy
Passwort-Speicherung Argon2 / bcrypt Kein Encryption! Password Hashing!

🔮 Zukunft der Kryptographie

⚠️ Quantencomputer-Bedrohung
Zukünftige Quantencomputer könnten RSA und ECC brechen! Die Forschung an Post-Quantum-Kryptographie läuft auf Hochtouren.

🛡️ Post-Quantum Algorithmen

NIST hat 2024 neue Standards gewählt:

  • CRYSTALS-Kyber: Key Encapsulation
  • CRYSTALS-Dilithium: Digitale Signaturen
  • FALCON: Digitale Signaturen
  • SPHINCS+: Hash-basierte Signaturen

🚀 Trends

  • ✅ Elliptische Kurven (ECDH, Ed25519)
  • ✅ Authenticated Encryption (GCM, ChaCha20-Poly1305)
  • ✅ Zero-Knowledge Proofs
  • ✅ Homomorphic Encryption
  • ✅ Hardware Security Modules (HSM)

💡 Best Practices

✅ MACH:
  • Verwende bewährte Bibliotheken (OpenSSL, libsodium)
  • Mindestens AES-256 oder ChaCha20
  • Immer authentifizierte Verschlüsselung (GCM, Poly1305)
  • Forward Secrecy aktivieren
  • Regelmässige Updates
  • TLS 1.3 verwenden
❌ VERMEIDE:
  • Eigene Crypto-Implementierung
  • ECB Mode
  • DES, RC4, MD5
  • Kurze Schlüssel (<2048 Bit RSA)
  • Hardcodierte Schlüssel
  • Keine Verschlüsselung (Plain HTTP)