Effiziente Software-Implementierung des GMR-Signatursystems [chapter]

Dirk Fox, Birgit Pfitzmann
1987 VIS '91 Verläßliche Informationssysteme  
Kurzfassung 1984 wurde von Goldwasser, Micali und Rivest erstmalig ein gegen adaptive, aktive Angriffe beweisbar sicheres Signatursystem (GMR) vorgestellt. Bis dahin galt ein solches System als Paradoxon -den scheinbaren Widerspruch lösten die Autoren in ihrer Veröffentlichung. Nach einer kurzen Einführung in die Funktionsweise von GMR arbeiten wir die schon bekannten Implementierungshinweise aus und erläutern eigene effizienzsteigernde Verbesserungen. Diese nutzten wir für eine Implementierung
more » ... auf MC680xy-Rechnern. Die von uns verwendete Langzahlarithmetik ist in Assembler geschrieben; die GMR-spezifischen Funktionen wurden im wesentlichen in Pascal entwickelt. Wir stellen relativ genaue allgemeine Aufwandsbetrachtungen an und erläutern die Meßergebnisse unserer Implementierung. Beide Angaben werden mit Werten für das verbreitete RSA-Signatursystem verglichen. Dabei stellt sich heraus, daß GMR nicht nur praktikabel, sondern in manchen Fällen sogar effizienter ist als RSA (in reiner Form). Stellt man hohe Sicherheitsanforderungen, ist GMR demnach eine empfehlenswerte Alternative. Einleitung In zunehmendem Maße findet Kommunikation über Rechnernetze statt; insbesondere finanzielle Transaktionen werden bereits weitgehend elektronisch abgewickelt. Dabei fallen übliche, geradezu selbstverständlich gewordene Kontrollen der Echtheit und Vertrauenswürdigkeit von Nachrichten weg: die Handschrift, der bekannte Überbringer, der versiegelte Umschlag und nicht zuletzt die eigenhändige Unterschrift. Daher ist die Entwicklung technischer Verfahren notwendig, die (mit geringen "Kosten") ein Maximum an Verläßlichkeit bieten. Verläßlichkeit meint meist Nachweisbarkeit, in Streitfällen sogar gerichtliche Rekonstruierbarkeit von Kommunikationsabläufen. Die (effiziente) Sicherstellung von Überprüfbarkeit der Herkunft und Unverfälschbarkeit einer Nachricht spielt dabei eine zentrale Rolle, zum Beispiel bei Bankgeschäften. Im Alltag dient dazu heute die eigenhändige Unterschrift; Verfahren, die diese Authentisierung beim digitalen Nachrichtenaustausch leisten, werden daher digitale Signatursysteme genannt. Ein (konventionelles) digitales Signatursystem besteht im wesentlichen aus drei Komponenten: 1. Einem Generieralgorithmus G, der ein Schlüsselpaar (g,ö) liefert. Der öffentliche Schlüssel ö wird im allgemeinen in ein Verzeichnis eingetragen; g geheimgehalten. 2. Einem Signieralgorithmus S zum Unterschreiben von Nachrichten, der den geheimen Schlüssel g verwendet. 3. Einem Testalgorithmus T, der die Signatur einer Nachricht anhand des öffentlichen Schlüssels ö überprüft. Dirk Fox, Birgit Pfitzmann: Effiziente Software-Implementierung des GMR-Signatursystems 330 Selbst bei Kenntnis aller drei Algorithmen muß ohne den geheimen Schlüssel g die Fälschung einer Signatur praktisch unmöglich 1 sein. Erwünscht ist ein Signatursystem, das selbst bei der stärksten Angriffsform, dem adaptiven, aktiven Angriff, 2 das Fälschen auch nur einer einzigen (neuen) Unterschrift praktisch unmöglich macht. Das bekannteste digitale Signatursystem -kurz RSA genannt -wurde 1978 von Rivest, Shamir und Adleman vorgestellt [RSA_78]. RSA bietet gegen aktive Angriffe allerdings keine Sicherheit [Davi_82, Denn_84]. Man versucht, diese Schwäche von RSA durch Redundanzprädikate, Hash-Funktionen o.ä. zu beheben (siehe z.B. [Jung_87]). Über die Sicherheit dieser Modifikationen ist kaum etwas bekannt. Das von Goldwasser, Micali und Rivest entwickelte digitale Signatursystem -im folgenden nach den Autoren GMR genannt -bietet selbst gegen adaptive, aktive Angriffe beweisbar Fälschungssicherheit [GoMR_84, GoMR_88]. Da die Komplexitätstheorie bis heute keine Möglichkeit kennt, die praktische Unmöglichkeit, ein derartiges System mit polynomialem Aufwand zu brechen, vollständig zu beweisen, ist man auf kryptographische Annahmen angewiesen. Man versucht jedoch, mit möglichst einer einzigen, plausiblen und durch lange Erfahrung gestützten Annahme (z.B. der praktischen Unlösbarkeit eines zahlentheoretischen Problems) auszukommen.
doi:10.1007/978-3-642-76562-9_21 dblp:conf/vis/FoxP91 fatcat:zxn3zszlyvfgfbniuxoilqsspe