RSA
Den Namen hat das Verfahren von Ronald Rivest (in der Mitte), Adi Shamir (links) und Leonard Adleman (rechts), den drei Männern, die es 1977 erfunden haben.
RSA ist ein asymmetrisches Verfahren, es gibt also einen public key und einen private key. Beide werden über Primzahlen gebildet. Außerdem geht in das Verfahren die Modulo-Rechnung ein. Wenn du dich damit schon auskennst, kannst du einfach weiterlesen, ansonsten wähle
Schlüsselerzeugung
Für die Erzeugung der beiden Schlüssel wählt man zunächst zwei (große) Primzahlen und . Diese werden multipliziert und man erhält . Diese Zahl sowie eine weitere (fast) beliebig wählbare Zahl (encipher = verschlüsseln) bilden den public key. Eine dritte Zahl (decipher = entschlüsseln), zu deren Berechnung wir später kommen, ist der private key.
Um mit diesem public key eine Nachricht zu verschlüsseln, muss diese als Zahl vorliegen.
Verschlüsseln
Verschlüsselt wird durch . Die Zahlen und sind der public key.
ist der Klartext (Message), der verschlüsselte Text (Cipher).
Nehmen wir an, du willst an Alice die Nachricht "L" schicken.
Alice's public key sei (187, 7), also und .
Das L lautet in
ASCII 01001100, das entspricht der Dezimalzahl 76. Die Nachricht
lautet also "76".
N = 187, e = 7
Und umgekehrt?