MATH 470 Lecture 18

From Notes
Jump to navigation Jump to search

« previous | Tuesday, March 26, 2013 | next »

Begin Exam 2 content


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 Face-grin.svg

In 1979, Adi Shamir found following scheme to hide a message

  1. Pick a prime
  2. Pick random numbers in
  3. Define
  4. Pick distinct random numbers , and to the th participant, give


Idea: points in Euclidean space define a unique -degree polynomial curve.

Lemmas

  1. No subset of participants can recover .
  2. 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

Spoils of the Hunt


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 ,

  1. Alice sets up as in RSA and publishes and keeps private.
  2. 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

  1. Alice sets up as in El Gamal and picks a random
  2. Alice computes and
  3. Alice sends

To verify, the user must:

  1. download the public part and then
  2. Accept if .

Verification works because

DSA

Adopmed by NIST in 1994

  1. Alice finds a 160-bit prime and a larger prime with
  2. Alice picks a primitive root mod and sets
  3. Alice picks a secret and calculates
  4. Pick random
  5. Compute
  6. Compute
  7. Signature is

To check signature,

  1. compute and
  2. Accept signature iff