Zum Inhalt springen
uencoder

RSA

RSA ist das 1977 von Rivest, Shamir und Adleman veröffentlichte asymmetrische Verschlüsselungsverfahren, basierend auf der Schwierigkeit, große Zahlen zu faktorisieren; es wird für Verschlüsselung und digitale Signaturen genutzt.

Zweck

Realisiert asymmetrische Verschlüsselung und digitale Signaturen, sodass zwei Parteien ohne vorab geteilte Schlüssel sicher kommunizieren und sich authentifizieren können.

Mechanismus

Schlüsselgenerierung: Primzahlen p und q wählen, n = pq und φ = (p-1)(q-1) setzen, ein zu φ teilerfremdes e wählen und d = e^{-1} mod φ setzen. Verschlüsselung: c = m^e mod n; Entschlüsselung: m = c^d mod n. Die Sicherheit beruht auf der Schwierigkeit, n zu faktorisieren.

Anwendungsfälle

  • Schlüsselaustausch und Signaturen bei TLS-Zertifikaten
  • SSH-Authentifizierung mit Public Key
  • PGP/GPG-Schlüssel
  • Code-Signing-Zertifikate

Beispiele

  • Eingabe
    n=3233, e=17, m=65
    Output
    c=2790

    Encrypting 65 → 2790

Häufige Fehler

Using keys that are too short (<2048 bits)
Use at least 2048 bits; 3072 or 4096 recommended

Verwandte Begriffe

Verwandte Tools

References