Dateisignatur: signieren und prüfen

Dateisignaturen prüfen und erstellen: OpenSSH ssh-keygen -Y, minisign und OpenSSL mit Ed25519-, ECDSA-P-256/P-384- oder RSA-Schlüsseln im Format PEM, OpenSSH oder JWK. Dateien und Schlüssel verlassen den Browser nie.

Eingaben und Dateien bleiben im Browser

Signatur prüfen

Datei hierher ziehen

oder Datei vom Gerät auswählen

Eine SSH-Signatur (-----BEGIN SSH SIGNATURE-----), eine .minisig-Datei oder eine Rohsignatur als base64, hex oder binäre .sig-Datei.

PEM-Public-Key oder Zertifikat, OpenSSH .pub, Zeilen aus authorized_keys oder allowed_signers, JWK/JWKS oder ein minisign-Public-Key.

Nur SSH-Signaturen: der -n-Wert von ssh-keygen (file, git, …).

Ergebnis

Hier erscheint das Prüfergebnis oder die neue Signatur.

Auf dieser Seite

Dateisignatur prüft und erstellt abgetrennte Signaturen für Dateien beliebiger Größe: OpenSSH-Signaturen von ssh-keygen -Y, minisign-.minisig-Dateien und OpenSSL-Rohsignaturen mit Ed25519-, ECDSA-P-256/P-384- und RSA-Schlüsseln. Die Datei wird im Browser in 1-MiB-Blöcken gehasht; Dateien, Schlüssel und Passphrasen werden nie hochgeladen.

Detaillierte Funktionalität

Prüfen gleicht ein heruntergeladenes Release, ein Backup oder ein Dokument mit seiner Signatur ab. Ziehen Sie die Datei hinein, fügen Sie die Signatur ein oder nutzen Sie Signaturdatei laden, und geben Sie den Schlüssel unter Öffentlicher Schlüssel an. Das Format wird automatisch erkannt:

  • OpenSSH-Signaturen (ssh-keygen -Y sign, auch für Git-Commits und -Tags): Der Schlüssel kann eine .pub-Datei, authorized_keys-Zeilen oder eine allowed_signers-Datei sein — die passende Zeile zeigt, wer signiert hat, und ihre namespaces=-Beschränkung wird beachtet. Der Namespace muss dem beim Signieren verwendeten entsprechen (meist file). Ohne Schlüssel prüft das Tool die Signatur trotzdem gegen den enthaltenen Schlüssel und zeigt dessen Fingerabdruck.
  • minisign .minisig (BLAKE2b-Prehash und Legacy): Schlüssel-ID und vertrauenswürdiger Kommentar werden geprüft, ein gefälschter Kommentar fällt also auf.
  • Rohsignaturen von openssl dgst -sign oder openssl pkeyutl -rawin: binär, base64 oder hex; ECDSA in DER oder r‖s; RSA PKCS#1 v1.5 oder PSS; SHA-256/384/512. Schlüssel können PEM (SPKI oder PKCS#1), ein X.509-Zertifikat, eine OpenSSH-Zeile oder ein JWK sein.

Signieren erstellt eine Signatur mit Ihrem Schlüssel unter Privater Schlüssel: OpenSSH, PEM (PKCS#8, verschlüsseltes PKCS#8, EC oder RSA) oder ein JWK, bei verschlüsselten Schlüsseln mit Passphrase. Wählen Sie SSH-Signatur (ssh-keygen -Y) — lesbar für ssh-keygen -Y verify — oder Rohsignatur (OpenSSL) mit Hash, RSA-Padding und ECDSA-Kodierung. Das Ergebnis zeigt die Signatur, den Fingerabdruck, den öffentlichen Schlüssel und einen fertigen Befehl zur Prüfung mit ssh-keygen oder openssl.

Praktische Beispiele

Release-Download prüfen: Ziehen Sie tool-1.4.tar.gz hinein, laden Sie tool-1.4.tar.gz.sig und fügen Sie die allowed_signers des Projekts ein — das Ergebnis zeigt Die Signatur ist gültig und den Unterzeichner [email protected].

minisign: Ziehen Sie das Archiv hinein, laden Sie die zugehörige .minisig und fügen Sie den RW…-Public-Key von der Projektseite ein; der vertrauenswürdige Kommentar mit Dateiname und Zeitstempel wird angezeigt.

OpenSSL: Prüfen Sie openssl dgst -sha256 -sign key.pem -out data.sig data.bin mit public.pem; Hash und Padding werden automatisch erkannt.

Für Kollegen signieren: Laden Sie Ihren id_ed25519, behalten Sie SSH-Signatur (ssh-keygen -Y) und den Namespace file bei, klicken Sie auf Datei signieren und senden Sie die .sig mit der allowed_signers-Zeile.

So verwenden Sie dieses Tool

  1. Datei auswählen

    Ziehen Sie die Datei auf Datei hierher ziehen oder klicken Sie auf Datei auswählen. Jede Größe funktioniert: Gehasht wird in Blöcken.

  2. Modus wählen

    Wählen Sie Prüfen, um eine Signatur zu prüfen, oder Signieren, um eine zu erstellen.

  3. Signatur und Schlüssel angeben

    Beim Prüfen fügen Sie Signatur und Öffentlicher Schlüssel ein und kontrollieren bei SSH-Signaturen den Namespace. Beim Signieren fügen Sie den Schlüssel unter Privater Schlüssel ein, geben bei Verschlüsselung die Passphrase ein und wählen das Signaturformat.

  4. Ausführen

    Klicken Sie auf Signatur prüfen oder Datei signieren. Der Fortschritt zeigt die gehashten Bytes; Abbrechen stoppt den Vorgang.

  5. Ergebnis lesen

    Eine grüne oder rote Meldung zeigt das Urteil, darunter Fingerabdruck, Verfahren, Hash und Unterzeichner. Nach dem Signieren nutzen Sie .sig herunterladen oder kopieren die Signatur.

Tipps und Best Practices

  • Eine gültige Signatur ohne vertrauenswürdigen Schlüssel belegt nur die Integrität, nicht den Unterzeichner: Vergleichen Sie immer den Fingerabdruck oder geben Sie den Schlüssel des Unterzeichners an.
  • git signiert Commits mit dem Namespace git, ein einfaches ssh-keygen -Y sign meist mit file.
  • RSA-PSS-Signaturen von OpenSSL werden sowohl mit Salt in Digest-Länge als auch mit maximalem Salt geprüft, sodass alte und neue OpenSSL-Versionen verifizieren.
  • Ed25519-Rohsignaturen signieren die ganze Datei, nicht einen Hash: Hier sind sie auf 128 MiB begrenzt, SSH-Signaturen haben keine Größenbeschränkung.
  • Der private Schlüssel wird nur in diesem Tab verwendet und nicht gespeichert; nutzen Sie trotzdem besser einen eigenen Signaturschlüssel statt Ihres alltäglichen SSH-Schlüssels.

Hilf bei der nächsten Entscheidung

Was sollen wir als Nächstes verbessern?

Wähle einen Vorschlag. Dies sind Ideen, keine zugesagten Funktionen.

Eine Option wählen

Die Stimme sendet nur die gewählte Option als anonymen Zähler. Sie enthält keine Eingaben, Dateidaten, URL, Cookies oder Kennung und wird nicht in diesem Browser gespeichert. Nach dem Neuladen ist eine weitere Stimme möglich.