Cryptographic Communication Protocols: Key Exchange and Channels - Cheatsheet
Symmetrische und asymmetrische Kryptographie
Definition:
In der Kryptographie wird zwischen zwei Hauptarten der Verschlüsselung unterschieden: symmetrisch und asymmetrisch. Symmetrische Kryptographie verwendet den gleichen Schlüssel für die Ver- und Entschlüsselung, während asymmetrische Kryptographie Schlüsselpaare nutzt.
Details:
- Symmetrische Kryptographie: Gleicher Schlüssel, schneller, weniger Rechenaufwand.
- Asymmetrische Kryptographie: Schlüsselpaare (öffentlicher und privater Schlüssel), höhere Sicherheit, mehr Rechenaufwand.
- Beispiele für Symmetrische Algorithmen: AES, DES.
- Beispiele für Asymmetrische Algorithmen: RSA, ECC.
- Klassische Anwendung: Hybride Systeme kombinieren beide Methoden (z.B. symmetrische Verschlüsselung für Daten, asymmetrische für den Schlüsselaustausch).
Diffie-Hellman-Schlüsselaustausch
Definition:
Diffie-Hellman-Schlüsselaustausch ermöglicht sicheren Schlüsselaustausch über ein unsicheres Netzwerk.
Details:
- Basierend auf der Schwierigkeit des diskreten Logarithmusproblems
- Parteien wählen eine Primzahl p und Basis g
- Jede Partei wählt einen geheimen Exponenten a bzw. b
- Öffentliche Werte: A = g^a mod p, B = g^b mod p
- Gemeinsamer geheimer Schlüssel: s = B^a mod p = A^b mod p
- Nicht-authentifiziert, anfällig für Man-in-the-Middle-Angriffe
Elliptic-Curve-Kryptographie (ECC)
Definition:
Elliptic-Curve-Kryptographie (ECC) nutzt die Mathematik elliptischer Kurven für asymmetrische Verschlüsselung und Schlüsselvereinbarung, bietet bei gleicher Sicherheit kleinere Schlüsselgrößen im Vergleich zu traditionellen Methoden wie RSA.
Details:
- Basis: Elliptische Kurven über endlichen Körpern \(\text{E}(a, b): y^2 = x^3 + ax + b\)
- Schlüsselerzeugung: Wähle Zufallszahl \((k)\), berechne öffentlichen Schlüssel \((K = k \times G)\)
- Sicherheit: Schwierigkeit des diskreten Logarithmusproblems über elliptischen Kurven
- Übliche Parameter: Primkörper \(\text{GF}(p)\) und binäre Körper \(\text{GF}(2^m)\)
- Anwendungen: SSL/TLS, digitale Signaturen (ECDSA), Schlüsseltausch (ECDH)
- Schlüssellängen: ECC mit 256 Bits ≈ RSA mit 3072 Bits
Transport Layer Security (TLS)
Definition:
TLS ist ein Protokoll zur Sicherung der Kommunikation über ein Computernetzwerk, das Datenintegrität und Vertraulichkeit gewährleistet.
Details:
- Verwendung asymmetrischer Kryptographie für Schlüsselaustausch und Authentifizierung
- Symmetrische Verschlüsselung zur Sicherung der Datenübertragung
- Integrität durch Verwendung von Message Authentication Codes (MACs)
- Hauptbestandteile: Handshake-Protokoll, Record-Protokoll, Alert-Protokoll
- Versionen: TLS 1.0, 1.1, 1.2, 1.3 (aktuell)
- Ersetzt SSL (Secure Sockets Layer)
- Wichtiger Bestandteil von HTTPS
Zero-Knowledge-Protokolle
Definition:
Protokoll, bei dem eine Partei einer anderen beweist, dass sie eine Information kennt, ohne diese Information offenzulegen.
Details:
- Wichtig für Datenschutz und Sicherheit
- Typische Anwendung: Authentifizierung
- Klassische Beispiele: Fiat-Shamir-Protokoll, zk-SNARKs
- Drei Voraussetzungen: Vollständigkeit, Korrektheit, Null-Wissen
- Bauen auf Komplexitätstheorie und Kryptographie
- Nutzen oft mathematische Probleme wie Faktorisierung oder diskrete Logarithmen
Public-Key-Infrastrukturen (PKI)
Definition:
System für die Verwaltung öffentlicher Schlüssel und digitaler Zertifikate.
Details:
- Beinhaltet CA (Zertifizierungsstelle), RA (Registrierungsstelle) und Nutzer
- CA stellt digitale Zertifikate aus und überprüft Identitäten
- RA verarbeitet Registrierungsanfragen und leitet sie an die CA weiter
- Zertifikate enthalten öffentliche Schlüssel und Identitätsinformationen
- Verwendet in SSL/TLS, S/MIME, VPN und digitalen Signaturen
Digitale Signaturen und Zertifikate
Definition:
Digitale Signaturen gewährleisten Authentizität und Integrität einer Nachricht. Zertifikate verknüpfen einen öffentlichen Schlüssel mit der Identität seines Inhabers, bestätigt durch eine Zertifizierungsstelle (CA).
Details:
- Signatur: Verschlüsselung des Hashwerts der Nachricht mit privatem Schlüssel des Absenders.
- Überprüfung: Öffentlicher Schlüssel des Absenders entschlüsselt die Signatur, Hashwerte werden verglichen.
- Zertifikat enthält: Öffentlichen Schlüssel, Identitätsinformationen, digitale Signatur der CA.
- CA garantiert die Richtigkeit der im Zertifikat enthaltenen Informationen.
- Zertifikatskette: Verifizierung durch CA-Hierarchie bis zu einer vertrauenswürdigen Root-CA.
End-to-End-Verschlüsselung
Definition:
Methode zur Sicherstellung der Vertraulichkeit von Nachrichten zwischen Sender und Empfänger, ohne dass Zwischenstellen die Inhalte einsehen können.
Details:
- Verschlüsselung erfolgt auf Senderseite, Entschlüsselung auf Empfängerseite.
- Zwischenstellen können nur verschlüsselte Daten sehen.
- Erfordert sicheren Schlüsselaustausch (z.B. Diffie-Hellman, RSA).
- Wichtig im Kontext von sicheren Kommunikationsprotokollen wie TLS, Signal-Protokoll.