← back to crypto

Digital Signatures

Wikipedia (CC BY-SA 4.0) ยท wpDigital signature

A digital signature proves that a message came from the holder of a private key, and that it was not altered in transit. Anyone with the corresponding public key can verify it. Signatures enable trust without trusted third parties.

Document Sign (private key) Signature Verify (public key) ✓ valid / ✗ invalid verifier also needs the original document

How signing works

The signer hashes the message to get a fixed-size digest, then encrypts the digest with their private key. The result is the signature. To verify, the recipient decrypts the signature with the signer's public key and compares it to their own hash of the message. If they match, the signature is valid.

Scheme

ECDSA

The Elliptic Curve Digital Signature Algorithm uses the same curve group from Ch.7. The signer picks a random nonce k, computes kG, and derives the signature (r, s) from the nonce point's x-coordinate, the message hash, and the private key. Verification uses the public key to check the equation. ECDSA signatures are half the size of RSA signatures at equivalent security.

Scheme

Certificate chains

A certificate binds a public key to an identity (e.g., "example.com"). A certificate authority (CA) signs this binding with its own private key. Your browser trusts a set of root CAs. Each root CA can sign intermediate CAs, which sign end-entity certificates. This chain of signatures is the certificate chain.

Scheme
Neighbors

This series

  • Economics Ch.20 โ€” mechanism design: signatures enable trust without trusted third parties

Foundations (Wikipedia)