Das Damgård-Jurik-Kryptosystem ist ein semantisch sicherer, asymmetrischer Verschlüsselungsalgorithmus. Es wurde 2001 an der Konferenz PKC von den beiden Kryptographen Ivan Damgård und Mads Jurik vorgestellt.[1] Das Verfahren ist additiv-homomorph, was bedeutet, dass durch die Multiplikation zweier Schlüsseltexte die Klartexte addiert werden. Es ist also nicht nötig, die Schlüsseltexte zu entschlüsseln, um auf den Klartexten operieren zu können. Das Verfahren ist ein Nachfolger des Paillier-Kryptosystems und enthält dieses als Spezialfall.

Verfahren

Bearbeiten

Erzeugung des öffentlichen und privaten Schlüssels

Bearbeiten

Die Erzeugung des öffentlichen und des privaten Schlüssels funktioniert wie folgt.

  • Man wählt zwei große Primzahlen   gleicher Bitlänge und definiert  . In der Praxis sollte   zwischen 1536 und 2048 Bits lang sein.
  • Man definiert  .
  • Man wählt   so, dass   für ein bekanntes   relativ prim zu   und  , wobei   isomorph zu   ist.
  • Mittels des Chinesischen Restsatzes berechnet man   mit   und  .

Der öffentliche Schlüssel besteht aus  , der private aus  .

Anmerkung: Um das Paillier-Kryptosystem als Spezialfall zu erhalten, wählt man   und  . Weiter kann man stets   wählen, ohne die Sicherheit zu beeinträchtigen. Insbesondere muss in diesem Fall   nicht ins Vorhinein fixiert werden, sondern kann ad hoc beim Verschlüsseln einer Nachricht gewählt werden.

Verschlüsseln von Nachrichten

Bearbeiten

Um eine Nachricht   zu verschlüsseln, verfährt man wie folgt:

  • Man wählt   zufällig in  .
  • Man berechnet den Schlüsseltext als  .

Entschlüsseln von Nachrichten (Decodierung)

Bearbeiten

Um einen Schlüsseltext   zu entschlüsseln, verfährt man folgermaßen:

  • Man berechnet  . Für gültige Schlüsseltexte   muss gelten:
 .

Dabei verwendet man einerseits, dass   in   die Ordnung   hat. Andererseits ist anzumerken, dass  , wobei   Ordnung   hat, und   Ordnung  , da   isomorph zu   ist, und   ist. Weiters sind sowohl   (per definitionem) und   Elemente von  .

  • Nun wendet man rekursiv den Entschlüsselungsmechanismus des Paillier-Kryptosystems an, um   zu berechnen. Da   bekannt sind, kann man nun   berechnen als  .

Sicherheit

Bearbeiten

Unter der Decisional-Composite-Residuosity-Annahme kann gezeigt werden, dass das Verfahren semantisch sicher gegen Gewählte-Klartext-Angriffe ist. Diese Annahme besagt, dass für einen zusammengesetzten Modul   nicht effizient geprüft werden kann, ob ein   eine  -te Wurzel modulo   besitzt oder nicht.

Homomorphieeigenschaften

Bearbeiten

Das Damgård-Jurik-Kryptosystem ist additiv-homomorph, wodurch durch Operationen auf Schlüsseltexte unbekannte Klartexte addiert werden können:

  • Durch Multiplikation von zwei Schlüsseltexten   werden die verschlüsselten Klartexte   addiert:
 .
Dabei sind manchmal zwei Sonderfälle von besonderem Interesse:
  • Durch Multiplikation eines Schlüsseltextes   mit   kann ein beliebiger Wert   zum verschlüsselten Klartext   addiert werden:
 .
  • Durch Multiplikation eines Schlüsseltextes   mit   kann eine Verschlüsselung von   erneut randomisiert werden, ohne die Nachricht   zu ändern:
 .
  • Durch Exponentiation eines Schlüsseltexts   mit einer natürlichen Zahl   kann die verschlüsselte Nachricht   ver-w-facht werden
 .

Allerdings gibt es keine bekannte Möglichkeit, um durch Operationen auf zwei Schlüsseltexten die enthaltenen Nachrichten miteinander zu multiplizieren.

Vorteile

Bearbeiten

Die homomorphen Eigenschaften werden u. a. im Zusammenhang mit den folgenden Anwendungen ausgenützt.

  • E-Voting: Nachdem jeder Wahlberechtigte seine Stimme (im einfachsten Fall eine 1 für ja, eine 0 für nein) verschlüsselt und an die Wahlbehörde übermittelt hat, werden alle Schlüsseltexte multipliziert, und die resultierende Verschlüsselung enthält die Verschlüsselung der Gesamtanzahl an Ja-Stimmen. Durch Entschlüsseln erhält man nun das Wahlergebnis. Wichtig ist, dass die den ersten Schritt ausführende Partei keine Kenntnis des geheimen Schlüssels benötigt, wodurch keine einzelnen Stimmen entschlüsselt werden können.
  • eCash
  • Zero-Knowledge-Beweise im Universal-Composability-Modell

Nachteile

Bearbeiten

Aufgrund der angeführten Homomorphieeigenschaften ist das Verfahren allerdings nicht IND-CCA-sicher, d. h. nicht sicher unter Gewählter-Schlüsseltext-Angriffen. Jedes Verschlüsselungssystem, das diese Sicherheit besitzt, müsste nämlich auch nicht-verformbar sein, eine Eigenschaft, die zur Homomorphie im Widerspruch steht. In der Literatur findet man auch Transformationen, das Damgård-Jurik-Kryptosystem in eine IND-CCA-sichere Variante zu transformieren.[2][3] Ob diese Transformationen angebracht sind oder nicht, ist von der jeweiligen Anwendung abhängig.

  1. Ivan Damgård, Mads Jurik: A Generalisation, a Simplification and Some Applications of Paillier’s Probabilistic Public-Key System. In: Kwangjo Kim (Hrsg.): Public Key Cryptography. Band 1992. Springer, Berlin/Heidelberg 2001, ISBN 3-540-41658-7, S. 119–136, doi:10.1007/3-540-44586-2_9.
  2. Eiichiro Fujisaki, Tatsuaki Okamoto: How to Enhance the Security of Public-Key Encryption at Minimum Cost. In: Public Key Cryptography. Band 1560. Springer, Berlin/Heidelberg 1999, ISBN 3-540-65644-8, S. 53–68, doi:10.1007/3-540-49162-7_5.
  3. Pascal Paillier, David Pointcheval: Efficient Public-Key Cryptosystems Provably Secure Against Active Adversaries. In: Kwok-Yan Lam, Eiji Okamoto, Chaoping Xing (Hrsg.): Advances in Cryptology - ASIACRYPT’99. Band 1716. Springer, Berlin/Heidelberg 1999, ISBN 3-540-66666-4, S. 165–179, doi:10.1007/978-3-540-48000-6_14.