« previous | Tuesday, March 26, 2013 | next »
Secret Sharing
A -threshhold scheme is a way to share a message among participants so that any subset of participants can recover the message, but no smaller subset.
Small example: (2,2)-threshhold schemes have been in various movies involving nuclear missiles (e.g. War Games)
Another example: (3,55)-threshhold scheme could protect the password to some chocolate
In 1979, Adi Shamir found following scheme to hide a message
- Pick a prime
- Pick random numbers in
- Define
- Pick distinct random numbers , and to the th participant, give
Idea: points in Euclidean space define a unique -degree polynomial curve.
Lemmas
- No subset of participants can recover .
- Any subset of participants can recover .
Proof. Take, say, the first participants . We get
Which is a linear system of equations, so we can solve
Claim: The preceding matrix has a nonzero determinant and thus we have a unique solution!
This matrix is a van Der Monde matrix.
Back to ChOcOlAtE
So we need to solve
For and , we get
Digital Signatures
In our Iran/UN example, we used the RSA digital signature. We also have El-Gamal and DSA (which is still used today).
If Alice needs to sign a message ,
- Alice sets up as in RSA and publishes and keeps private.
- The signature is published
Any user can verify the signature via
Note: In practice, digital signatures are slow, so usually, only a short digest of the message is signed. This is one setting where hash functions enter.
El Gamal
To sign a message
- Alice sets up as in El Gamal and picks a random
- Alice computes and
- Alice sends
To verify, the user must:
- download the public part and then
- Accept if .
Verification works because
DSA
Adopmed by NIST in 1994
- Alice finds a 160-bit prime and a larger prime with
- Alice picks a primitive root mod and sets
- Alice picks a secret and calculates
- Pick random
- Compute
- Compute
- Signature is
To check signature,
- compute and
- Accept signature iff