RSA ist eine asymmetrische Verschlüsselungsmethode, die auf der mathematischen Schwierigkeit beruht, große Primfaktoren von sehr großen Zahlen zu berechnen. Sie verwendet ein Schlüsselkonzept, bei dem zwei verschiedene Schlüssel für den Verschlüsselungs- und den Entschlüsselungsvorgang verwendet werden. Einer der Schlüssel wird als öffentlicher Schlüssel bezeichnet und kann frei verteilt werden, während der andere als privater Schlüssel bezeichnet wird und geheim gehalten werden muss.
Es gibt auch Varianten von RSA, wie beispielsweise die Elgamal-Verschlüsselung, die auf ähnlichen Prinzipien beruhen, aber unterschiedliche Berechnungen und Schlüsselgenerierungsalgorithmen verwenden.
Das RSA-Verfahren basiert auf der Tatsache, dass es sehr schwierig ist, das Produkt zweier großer Primzahlen in ihre einzelnen Primfaktoren zu zerlegen, wenn die Primfaktoren nicht bekannt sind. Der Algorithmus besteht aus den folgenden Schritten:
Die Sicherheit von RSA beruht auf der Annahme, dass es sehr zeitaufwändig ist, die Primfaktoren von n zu berechnen, insbesondere wenn sie sehr groß sind. Mit aktuellen Technologien wäre es praktisch unmöglich, RSA-Verschlüsselungen mit ausreichend großen Schlüsseln zu brechen.