Cramer-Shoup-Kryptosystem

Das Cramer-Shoup-Kryptosystem i​st ein v​on Ronald Cramer u​nd Victor Shoup entwickeltes asymmetrisches Kryptosystem, d​as als e​ine Erweiterung d​es Elgamal-Verschlüsselungsverfahrens aufgefasst werden kann.[1] Es w​ar das e​rste praktikable Verschlüsselungsverfahren, d​as im Standardmodell (ohne Zufallsorakel) g​egen adaptive Chosen-Ciphertext-Angriffe sicher war. Die Sicherheit d​es Verfahrens beruht a​uf der Schwierigkeit d​es Decisional-Diffie-Hellman-Problems.

Das Verfahren

Wie a​lle asymmetrischen Verschlüsselungen besteht a​uch das Cramer-Shoup-Verfahren a​us drei Algorithmen.

Schlüsselerzeugung

  • Zuerst wählt man eine (hier multiplikativ geschriebene) zyklische Gruppe von Primordnung und in dieser zwei Erzeuger . Zusätzlich muss noch eine kryptologische Hashfunktion festgelegt werden. Diese Werte sind öffentliche Parameter und können von mehreren Benutzern gleichzeitig genutzt werden.
  • Dann werden als geheimer Schlüssel zufällige gewählt.
  • Aus diesen wird der öffentliche Schlüssel berechnet.

Verschlüsselung

Um eine Nachricht mit dem öffentlichen Schlüssel zu verschlüsseln geht man wie folgt vor:

  • Es wird ein zufälliges gewählt.
  • Das ist die Verschlüsselung der Nachricht wie bei ElGamal.
  • , wobei eine universal-one-way Hashfunktion oder eine kollisionsresistente Hashfunktion ist.
  • . Dieses Element stellt sicher, dass ein Angreifer nicht Teile des Chiffrats benutzen kann um weitere Chiffrate zu erzeugen und sichert so die für die Sicherheit notwendige Nicht-Verformbarkeit

Das Chiffrat besteht dann aus .

Entschlüsselung

Um ein Chiffrat mit dem geheimen Schlüssel zu entschlüsseln führt man zwei Schritte durch.

  • Zuerst berechnet man und überprüft ob . Falls das nicht der Fall ist, wird die Entschlüsselung abgebrochen und eine Fehlermeldung ausgegeben.
  • Falls nicht, berechnet man den Klartext .

Korrektheit

Die Korrektheit d​es Verfahrens f​olgt aus

und .

Instanziierung

Als Sicherheitsniveau wählen wir die Standardlänge für generische Anwendungen von 128 bit.[2] Daraus ergibt sich eine Ausgabelänge von 256 bit für die Hashfunktion.[2] SHA-256 kann als kollisionsresistent angenommen werden.[3]

Man braucht eine Gruppe in welcher das Decisional-Diffie-Hellman-Problem schwierig zu berechnen ist, wie etwa . Dazu wählt man eine Primzahl mit einer Länge von 3248 bit, so dass die Gruppe eine multiplikative Untergruppe von Primordnung hat, wobei eine Länge von 256 bit haben sollte[2]. Das heißt, dass gelten muss. Aus der Wahl der Parameter ergibt sich eine Länge von bit für den geheimen Schlüssel, und bit für den öffentlichen Schlüssel. Ein Chiffrat ist bit lang.

Einzelnachweise

  1. Ronald Cramer and Victor Shoup: A practical public key cryptosystem provably secure against adaptive chosen ciphertext attack. In: Proceedings of Crypto 1998. 1998, S. 13–25 (englisch, cwi.nl).
  2. European Network of Excellence in Cryptology II (Hrsg.): ECRYPT II Yearly Report on Algorithms and Keysizes (2009–2010). 2010, S. 30–32 (englisch, ecrypt.eu.org [PDF; 2,4 MB]). PDF 2,4MB (Memento des Originals vom 21. August 2010 im Internet Archive)  Info: Der Archivlink wurde automatisch eingesetzt und noch nicht geprüft. Bitte prüfe Original- und Archivlink gemäß Anleitung und entferne dann diesen Hinweis.@1@2Vorlage:Webachiv/IABot/www.ecrypt.eu.org
  3. European Network of Excellence in Cryptology II (Hrsg.): ECRYPT II Yearly Report on Algorithms and Keysizes (2009–2010). 2010, S. 52 (englisch, ecrypt.eu.org [PDF; 2,4 MB]). PDF 2,4MB (Memento des Originals vom 21. August 2010 im Internet Archive)  Info: Der Archivlink wurde automatisch eingesetzt und noch nicht geprüft. Bitte prüfe Original- und Archivlink gemäß Anleitung und entferne dann diesen Hinweis.@1@2Vorlage:Webachiv/IABot/www.ecrypt.eu.org
This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. The authors of the article are listed here. Additional terms may apply for the media files, click on images to show image meta data.