Welches Schlüssel- oder Hash-Tool brauche ich?
| Ihre Aufgabe | Tool |
|---|---|
| Ein Zertifikat lesen: Namen, Ablauf, Fingerabdrücke | Zertifikat-Decoder |
| Einen CSR prüfen, bevor er an eine CA geht | CSR-Decoder |
| Zwischen Text-PEM und binärem DER umwandeln | PEM in DER, DER in PEM |
| Fingerabdruck eines öffentlichen SSH-Schlüssels oder Umwandlung | SSH-Schlüssel-Fingerabdruck |
| SHA-256 von Text oder einer Datei, in Hex und Base64 | SHA-256 in Base64 |
| Content-MD5 und ältere Prüfsummen | MD5 in Base64 |
| Einen Webhook oder API-Request signieren | HMAC-Generator |
integrity="sha384-…" für ein Skript oder Stylesheet | SRI-Hash-Generator |
| Eine zufällige Base64-Zeichenkette beliebiger Länge | Zufalls-Base64-Generator |
Laravel-APP_KEY, AES-Schlüssel, JWT- und HMAC-Secrets | Base64-Schlüsselgenerator |
| Eine Nonce für eine Content Security Policy | CSP-Nonce-Generator |
| Text mit einem Passwort ver- oder entschlüsseln | AES-Verschlüsselung, AES-Entschlüsselung |
Wo Base64 auf Kryptografie trifft
PEM ist Base64 von DER-kodiertem ASN.1 zwischen Zeilen der Form -----BEGIN …-----. Zertifikate, CSRs, öffentliche und private Schlüssel verwenden es alle. Base64-DER beginnt bei den meisten Zertifikaten und RSA-Schlüsseln mit MII, bei öffentlichen EC-P-256-Schlüsseln mit MFkw und bei öffentlichen Ed25519-Schlüsseln mit MCowBQYDK2Vw, der Typ ist also oft schon vor dem Dekodieren erkennbar.
SSH-Schlüssel haben eine andere Struktur. Der Teil AAAAC3NzaC1lZDI1NTE5… einer ssh-ed25519-Zeile ist Base64 des Schlüssel-Blobs, und der bekannte Fingerabdruck SHA256:… ist der Base64-Hash dieses Blobs ohne Padding.
Hashes sind rohe Bytes. Ein SHA-256 des Texts hello hat 32 Bytes: 2cf24dba…9824 als 64 Hex-Zeichen oder LPJNul+wow4m6DsqxbninhsWHlwfp0JecwQzYpOLmCQ= als 44 Base64-Zeichen. Webhook-Signaturen, SRI-Attribute und S3-Header Content-MD5 erwarten die Base64-Form, und der Vergleich mit einem Hex-Digest ist eine häufige Ursache für Fehler wie „signature mismatch“.
Zufällige Secrets in Konfigurationsdateien sind meist 32 Zufallsbytes in Base64, zum Beispiel aus openssl rand -base64 32. Der Schlüsselgenerator erzeugt dasselbe Format, mit Vorlagen für gängige Frameworks.
Was diese Tools nicht tun
- Sie prüfen keine Zertifikatsketten und keinen Sperrstatus. Die Seite kann keine Verbindung zu anderen Servern aufbauen, und das ist Absicht.
- Sie zeigen kein privates Schlüsselmaterial an. Die Zertifikat-Tools zeigen von einem privaten Schlüssel nur Typ und Größe, und das SSH-Tool liest aus einer privaten Schlüsseldatei nur den öffentlichen Teil.
- MD5 und SHA-1 gibt es aus Kompatibilität mit bestehenden Systemen. Verwenden Sie sie nicht für neue Sicherheitskonzepte.
Zum Signieren und Prüfen von JWTs siehe die Web- und Token-Tools. Warum nichts von diesem Base64 für sich ein Geheimnis ist, lesen Sie unter Kodierung vs. Verschlüsselung.
Häufige Fragen
Warum werden Hashes und Schlüssel so oft in Base64 geschrieben?
Weil es kürzer ist als Hex. Ein SHA-256-Hash hat 64 Hex-Zeichen, in Base64 aber 44, und ein 32-Byte-Schlüssel braucht 44 Base64-Zeichen statt 64. SRI-Attribute, SSH-Fingerabdrücke, HMAC-Signaturen und die meisten .env-Secrets verwenden es aus diesem Grund.
Ist Base64 eine Form von Verschlüsselung?
Nein. Base64 kann jeder umkehren. Ein privater PEM-Schlüssel ist nur Base64 der Schlüsselbytes, deshalb muss die Datei selbst geschützt werden. Echte Verschlüsselung wie im AES-Tool braucht zum Rückgängigmachen einen Schlüssel oder ein Passwort.
Sind die Zufallsschlüssel sicher?
Sie stammen aus crypto.getRandomValues des Browsers, derselben kryptografisch sicheren Quelle, die WebCrypto für Schlüssel nutzt. Nichts wird gespeichert oder gesendet, jeder Wert existiert also nur auf Ihrem Bildschirm, bis Sie ihn kopieren.