GMR ist ein digitales Signaturverfahren, das nach seinen Erfindern Shafi Goldwasser, Silvio Micali und Ronald L. Rivest benannt ist.
Wie auch RSA beruht GMR auf der Faktorisierungsannahme, dass es bijektive Funktionen gibt, die schnell zu berechnen sind, bei denen die Berechnung der Umkehrfunktion jedoch sehr aufwändig ist.
Im Gegensatz zu RSA lässt sich für GMR jedoch beweisen, dass es selbst bei einem adaptiven aktiven Angriff nicht möglich ist, auch nur eine neue Signatur zu fälschen.
Das Verfahren im Einzelnen
Man benötigt ein kollisionsresistentes Permutationspaar mit Geheimnis mit dem Definitionsbereich . Der Besitzer des Geheimnisses kann die Umkehrfunktionen und leicht berechnen. Für alle anderen ist das schwer.
Um eine einzige Nachricht zu signieren muss der Sender eine Referenz aus zufällig wählen und authentisch veröffentlichen. Um eine n bit lange Nachricht zu signieren berechnet er die Signatur . Der Empfänger kann die Umkehrfunktion davon berechnen und das Ergebnis mit der Referenz vergleichen.
Offensichtlich besteht das Problem darin, für jede Nachricht eine neue Referenz zu veröffentlichen. Dies wird mit Referenzbäumen realisiert.