RSA
RSA ist ein Verschlüsselungsverfahren, welches auch als digitale Signatur verwendet werden kann. Es arbeitet mit einem öffentlichen und einem privaten Schlüssel und gilt als extrem sicher.
Algorithmus
- Bestimme (möglichst zufällig) zwei sehr große Primzahlen p und q. Groß heißt hier 1024 Bit oder länger.
- Berechne:
n=pq
und
z=(n-1)(q-1) - Wähle ein e < n so, dass e und z keine gemeinsamen Primfaktoren haben.
- Wähle ein d so, dass
ed mod z = 1
gilt
Verschlüsseln & Entschlüsseln
Jetzt ist PRIVAT=(n,d) der private und ÖFFENTLICIH=(n,e) der öffentliche Schlüssel.
Ein Bitmuster m kann durch
c=m^(e) mod n
verschlüsselt und durch
m=c^(d) mod n
entschlüsselt werden.
Es gilt die wichtige Eigenschaft:
ÖFFENTLICH ( PRIVAT( m ) ) = m = PRIVAT ( ÖFFENTLICH ( m ) )
Anwendung
RSA wird unter anderem in diesen Bereichen eingesetzt:
- RFID Chip auf dem deutschen Reisepass
- SSH (Secure Shell)
- TLS (Nachfolger von SSL)
- IPSec (Internet Protocol Security)
- PGP (E-Mail-Verschlüsselung)
- S/MIME (E-Mail-Verschlüsselung)