Zurückblättern Weiterblättern Übergeordnetes Thema Sachgebiet Hauptinhaltsverzeichnis Stichwortverzeichnis Hilfeseiten        


RSA-Codes

Auf der Grundlage des Satzes von EULER-FERMAT haben R. RIVEST, A. SHAMIR und L. ADLEMAN 1978 (s. Lit.5.28) ein Verschlüsselungsverfahren ( Chiffrierverfahren ) für geheime Nachrichten entwickelt, das nach dem ersten Buchstaben ihrer Nachnamen RSA-Verschlüsselungsverfahren genannt wird. Man spricht in diesem Zusammenhang auch von Public-Key-Codes , weil ein Teil des zur Dechiffrierung benötigten Schlüssels ,,öffentlich`` bekanntgegeben werden kann, ohne die Geheimhaltung der Nachricht zu gefährden.
Beim RSA-Verfahren wählt der Empfänger B zunächst zwei sehr große Primzahlen und bildet und sucht eine zu teilerfremde Zahl mit Die Zahlen und gibt B öffentlich bekannt, weil sie zur Verschlüsselung benötigt werden.
Will der Absender A eine geheime Nachricht an den Empfänger B übermitteln, dann wird zunächst der Text der Nachricht in eine Ziffernfolge, bestehend aus gleichlangen Blöcken mit jeweils weniger als 100 Stellen, umgewandelt. Dann berechnet A den Rest von bei Division durch :
(5.282a)

Der Absender A sendet die Zahl an B, und zwar für jeden der aus dem Originaltext entstandenen Ziffernblöcke Der Empfänger kann die Nachricht dechiffrieren, wenn er eine Lösung der linearen Kongruenz kennt. Die Zahl ist der Rest von bei Division durch
(5.282b)

Dabei wird der Satz von EULER-FERMAT benutzt, nach dem gilt. Falls erforderlich, wandelt B nun noch die Ziffernfolge in Text um.

Beispiel

Ein Empfänger B erwartet vom Absender A eine geheime Nachricht, wählt die Primzahlen und (für die praktische Nutzung zu klein), berechnet (es gilt und wählt (dafür gilt ). B übermittelt an A nur und
A will B die geheime Nachricht zukommen lassen, verschlüsselt sie durch zu und sendet an B nur die Nachricht . B löst die Kongruenz erhält als Lösung und kann damit ermitteln.

Hinweis: Die Sicherheit des RSA-Codes hängt von der Zeit ab, in der Unberechtigte eine Primfaktorenzerlegung von finden können. Bei der heute erreichten Schnelligkeit von Computern benötigt der Anwender des RSA-Codes zwei mindestens 100-stellige Primzahlen und um für Unberechtigte einen Entschlüsselungsaufwand von etwa 74 Jahren zu verursachen. Für den Anwender ist es dagegen ein rechentechnisch vergleichsweise geringer Aufwand, eine zu teilerfremde Zahl zu finden.