Glossar

Was ist Digitale Signatur?

Eine digitale Signatur ist ein kryptografisches Verfahren, das einen privaten Schlüssel verwendet, um eine Signatur über eine Nachricht oder ein Dokument zu generieren. Jeder mit dem entsprechenden öffentlichen Schlüssel kann die Signatur prüfen, um Authentizität und Integrität der Daten zu bestätigen.

Auch bekannt als: code signing, message signing

Digitale Signaturen bieten drei Garantien: Authentifizierung (die Nachricht wurde vom angegebenen Sender erstellt), Integrität (die Nachricht wurde seit dem Signieren nicht verändert) und Nichtabstreitbarkeit (der Unterzeichner kann das Signieren nicht leugnen). Diese Eigenschaften machen digitale Signaturen in vielen Rechtsordnungen rechtlich bindend und sind essenziell für Software-Distribution, Finanztransaktionen und Identitätsverifizierung.

Der Signierprozess funktioniert, indem zunächst die Nachricht mit einer kryptografischen Hash-Funktion (wie SHA-256) gehasht wird, um einen Digest fixer Größe zu erzeugen, und dieser Digest dann mit dem privaten Schlüssel des Signierers verschlüsselt wird. Die Prüfung kehrt den Prozess um: Der Prüfer entschlüsselt die Signatur mit dem öffentlichen Schlüssel des Signierers, hasht die Nachricht unabhängig und vergleicht beide Digests. Stimmen sie überein, ist die Signatur gültig. Gängige Algorithmen sind RSA-Signaturen, ECDSA (Elliptic Curve Digital Signature Algorithm) und EdDSA.

Digitale Signaturen unterscheiden sich von HMAC, obwohl beide die Integrität prüfen. HMAC verwendet einen gemeinsamen geheimen Schlüssel – beide Parteien können den Code generieren und prüfen, weshalb HMAC keine Nichtabstreitbarkeit liefern kann. Digitale Signaturen verwenden asymmetrische Schlüssel, was bedeutet, dass nur der Inhaber des privaten Schlüssels signieren kann, während jeder mit dem öffentlichen Schlüssel prüfen kann. Diese Asymmetrie ermöglicht Nichtabstreitbarkeit und macht digitale Signaturen für Szenarien mit öffentlicher Verifikation geeignet.

Wie Vaulted Digitale Signatur verwendet

Vaulted verwendet keine digitalen Signaturen in seinem zentralen Verschlüsselungsablauf, weil das Sharing-Modell symmetrisch ist – Sender und Empfänger teilen denselben Schlüssel über das URL-Fragment, und es gibt keinen Bedarf an Nichtabstreitbarkeit oder öffentlicher Verifikation. Die TLS-Zertifikate, die Vaulteds HTTPS-Verbindungen absichern, verlassen sich jedoch auf digitale Signaturen, um die Serveridentität gegenüber deinem Browser zu beweisen, und die Integrität von Vaulteds eingesetzetem Code wird durch Code-Signing in der CI/CD-Pipeline verifiziert.