RSA Online-Schlüsselgenerator und Verschlüsselungs-/Entschlüsselungstool
Lokale Schlüsselgenerierung mit 512-4096 Bit, 7 Exportformate, Verschlüsselung, Entschlüsselung, Signatur und Prüfung
RSA Online-Schlüsselgenerator und Verschlüsselungs-/Entschlüsselungstool
RSA ist einer der bekanntesten asymmetrischen Verschlüsselungsalgorithmen: Der öffentliche Schlüssel kann zum Verschlüsseln und Prüfen von Signaturen veröffentlicht werden, während der private Schlüssel zum Entschlüsseln und Signieren geheim bleiben muss. Dieses Tool erzeugt das Schlüsselpaar lokal im Browser und vereint Verschlüsselung, Entschlüsselung, Signatur und Prüfung auf einer Seite.
Schlüsselerzeugung und Exportformate
- Wählbare Schlüssellängen: 512, 1024, 2048, 3072 und 4096 Bit, standardmäßig 2048 Bit. 512 und 1024 Bit werden als reine Kompatibilitätsoptionen für alte Systeme markiert und als unsicher ausgewiesen.
- Insgesamt 7 Exportformate: Kombination aus PKCS#8 und SPKI (Standard), PKCS#1, OpenSSH Public Key, JWK, XML (.NET RSAKeyValue), Raw Base64 und Raw Hex.
- Raw Base64 und Raw Hex enthalten keine Kopf- und Endbereiche oder Zeilenumbrüche und können direkt in Umgebungsvariablen, JSON oder Konfigurationen eingefügt werden.
- OpenSSH ist nur für öffentliche Schlüssel geeignet. Private Schlüssel werden weiterhin als PKCS#8 ausgegeben.
Verschlüsselung und Entschlüsselung
Der Tab für Verschlüsselung und Entschlüsselung verwendet den öffentlichen Schlüssel zum Verschlüsseln und den privaten Schlüssel zum Entschlüsseln. Als Padding stehen RSA-OAEP (SHA-256) und PKCS#1 v1.5 zur Verfügung. RSA kann nur relativ kurze Daten verschlüsseln. Das Tool berechnet abhängig von Schlüssellänge und Padding die maximale Bytezahl: bei OAEP ungefähr Schlüsselbytes minus 66 und bei PKCS#1 v1.5 ungefähr minus 11. Bei zu langen Daten wird direkt gewarnt und eine hybride Verschlüsselung empfohlen: AES für die Daten und RSA für den AES-Schlüssel.
Signatur und Prüfung
Der Tab für Signatur und Prüfung verwendet den privaten Schlüssel zum Signieren und den öffentlichen Schlüssel zum Prüfen. Als Verfahren stehen RSA-PSS (SHA-256) und PKCS#1 v1.5 zur Verfügung. Die Signatur wird als Base64 ausgegeben und kann mit einem Klick in das Prüfungsfeld übernommen werden. Das Ergebnis zeigt eindeutig, ob die Signatur gültig oder ungültig ist. Außerdem weist die Seite darauf hin, dass Verschlüsselung und Signatur unterschiedliche Zwecke haben und nicht verwechselt werden dürfen.
Import vorhandener Schlüssel und Fehlerbehandlung
- Vorhandene Schlüssel können direkt als PEM, DER, OpenSSH, JWK oder XML eingefügt werden.
- Wird bei einer Operation, die einen privaten Schlüssel benötigt, ein öffentlicher Schlüssel verwendet, erfolgt ein eindeutiger Hinweis.
- Ist ein Schlüssel passwortverschlüsselt, wird empfohlen, ihn zunächst mit openssl oder PuTTYgen zu entschlüsseln und zu exportieren. Eine Online-Entschlüsselung von Schlüsselpasswörtern bietet das Tool nicht.
- Bei fehlgeschlagener Entschlüsselung sollten Schlüssel, Padding und Chiffretext geprüft werden. Auch nicht analysierbare Schlüsselformate und Fehler beim Laden von Komponenten werden entsprechend gemeldet.
Anforderungen an die Laufzeitumgebung
Schlüsselerzeugung und alle Berechnungen verwenden die WebCrypto-Schnittstelle des Browsers. Diese ist nur in einem sicheren Kontext verfügbar, daher ist HTTPS erforderlich. Bei der Erzeugung größerer Schlüssel zeigt die Seite einen Wartezustand an.
Einsatzbereiche
- Schnell ein Testschlüsselpaar für eine API-Integration erzeugen und im benötigten Format exportieren.
- Signatur- und Prüfabläufe testen und Unterschiede bei Algorithmus oder Padding finden.
- Darstellung verschiedener Schlüsselformate in Konfigurationsdateien prüfen.
- Unterricht und Demonstration asymmetrischer Verschlüsselung.
Datenschutz und Datensicherheit
Das Schlüsselpaar wird lokal im Browser erzeugt. Private Schlüssel und Klartext werden weder an den Server übertragen noch gespeichert. Da Browser nicht zur sicheren Verwahrung von Produktionsschlüsseln geeignet sind, sollten die hier erzeugten Schlüssel nur für Tests und Lernzwecke verwendet werden. Für die reine Konvertierung eines vorhandenen Schlüsselformats sollte ein RSA-Schlüsselformat-Konverter verwendet werden.
RSA-Schlüsselpaare online erzeugen und Verschlüsselung sowie Signatur durchführen
- Schlüssellängen 512, 1024, 2048, 3072 und 4096 Bit, standardmäßig 2048 Bit; 512 und 1024 Bit sind als Kompatibilitätsoptionen für alte Systeme gekennzeichnet
- Unterstützt 7 Schlüsselformate: PKCS#8 und SPKI, PKCS#1, OpenSSH Public Key, JWK, XML, Raw Base64 und Raw Hex
- Verschlüsselung und Entschlüsselung unterstützen RSA-OAEP (SHA-256) und PKCS#1 v1.5 und zeigen abhängig von der Schlüssellänge die maximal verschlüsselbare Bytezahl
- Signatur und Prüfung unterstützen RSA-PSS (SHA-256) und PKCS#1 v1.5; Signaturen werden als Base64 ausgegeben und können direkt in das Prüfungsfeld übernommen werden
- Vorhandene PEM-, DER-, OpenSSH-, JWK- oder XML-Schlüssel können direkt eingefügt werden
- Die Verwendung eines öffentlichen Schlüssels für eine private Operation oder eines passwortverschlüsselten Schlüssels wird mit eindeutigen Hinweisen behandelt