Das Elliptic Curve Integrated Encryption Scheme (ECIES) ist ein hybrides Verschlüsselungsverfahren, dem elliptische Kurven zugrunde liegen. Als Hybridverfahren kombiniert es ein asymmetrisches Verfahren, das zum Versenden eines symmetrischen Schlüssels benutzt wird, mit einem symmetrischen Verschlüsselungsverfahren, das mit diesem symmetrischen Schlüssel die Nachricht verschlüsselt. ECIES ist im Random-Oracle-Modell sicher gegen Chosen-Ciphertext-Angriffe.
Einrichtung des Schemas
BearbeitenFolgende Hilfsmittel werden benötigt:
- KDF (Key Derivation Function): eine kryptographische Hashfunktion, die Schlüssel beliebiger Länge erzeugen kann
- MAC (Message Authentication Code)
- Ein symmetrisches Verschlüsselungsverfahren mit Verschlüsselungsalgorithmus und Entschlüsselungsalgorithmus
Systemparameter
Bearbeiten- , Primzahl
- Elliptische Kurve E: über dem Körper
- mit prim
Schlüsselerzeugung
BearbeitenEin Teilnehmer wählt einen geheimen Schlüssel zufällig und berechnet daraus seinen öffentlichen Schlüssel .
Verschlüsselung
BearbeitenUm eine Nachricht mit einem öffentlichen Schlüssel zu verschlüsseln, wird ein Diffie-Hellman-Schlüsselaustausch in einer elliptischen Kurve mit einem symmetrischen Verfahren kombiniert.
- Wähle eine Zufallszahl
- Berechne und
- Bestimme die symmetrischen Schlüssel . ist die x-Koordinate von
- Berechne und
- Sende
Entschlüsselung
BearbeitenUm ein Chiffrat mit einem geheimen Schlüssel zu entschlüsseln, werden die folgenden Schritte durchgeführt.
- Berechne
- Bestimme die beiden Schlüssel
- Prüfe ob ist
- Erhalte
Fazit
BearbeitenECIES arbeitet korrekt, wenn korrekt berechnet wird. Da ist, ist dies validiert.
Quellen
Bearbeiten- Alfred J. Menezes, Paul C. van Oorschot and Scott A. Vanstone: Handbook of Applied Cryptography. CRC Press, ISBN 0-8493-8523-7 (uwaterloo.ca).
- Victor Shoup: A proposal for an ISO standard for public key encryption, Version 2.1, December 20, 2001 (PDF, 384 kB).