liveBook · Manning

Digital signature

As explained in Elliptic Curve Cryptography for Developers

A digital signature is a cryptographic value produced with a private key that authenticates data and can be checked with the corresponding public key.

A digital signature is a cryptographic value that proves authorship and detects document changes. The signer uses a private key and the document’s hash; anyone with the corresponding public key, document, and signature can verify the result. Changing even one bit causes verification to fail. section 1.3.2 section 5.0

A typical signature workflow separates signing, publication, and verification:

  • Generate or obtain a private-key and public-key pair, keeping the private key secret. section 1.3
  • Hash the document and combine that hash with the private key to produce a signature. section 1.3.2
  • Distribute the document, signature, and a way to locate or validate the signer’s public key. section 5.0
  • Recompute the document hash and use the public key to accept or reject the signature. section 1.3.2

Elliptic-curve signatures operate over a finite field with a base point B of prime order n. In Schnorr signing, choose a fresh random k, compute Q = kB, hash Q and the document to obtain e, and calculate s = k − e·privateKey mod n. Verification checks whether Q equals sB + e·publicKey; substituting the signing equation makes the private-key terms cancel. ECDSA uses the message hash, a random value, and the private key to produce two signature values, then performs a more involved public-key check. section 5.1.1 section 5.4

Figure 5.1 Schnorr signature steps
figure

Follow the signature-step diagram to connect key generation, nonce selection, hashing, signature construction, and verification. section 5.1.1

Signature mathematics does not by itself establish that a public key belongs to the claimed signer; key exchange methods, certificates, or database checks address that separate security problem. Pairing-based aggregation can combine many signatures into smaller blockchain storage and transmission costs. section 5.0 section 1.5

How Elliptic Curve Cryptography for Developers covers it

How deep it goes
Derives Schnorr signing and verification equations, but summarizes ECDSA without developing its calculations in comparable detail.
Examples
Uses Alice’s document, Schnorr equations, signature-process figures, and multiple-signature blockchain aggregation as concrete illustrations.
What it assumes
Assumes private-key, public-key, hashing, finite-field, and elliptic-curve concepts while defining their roles in signature workflows.
What you can do after
Apply it via elliptic-curve mathematics to create and verify Schnorr signatures and understand ECDSA’s verification structure.
How it connects
Connects private keys, public keys, hash functions, elliptic curves, finite fields, certificates, ECDSA, and zero-knowledge proofs.

Also explained in

Compare how 8 books explain digital signature →

Related concepts

This explainer was generated by Manning's knowledge graph from the text of Elliptic Curve Cryptography for Developers. The section links point to the parts of the book it draws on.