Shamir's Secret Sharing Scheme
Shamir’s Secret Sharing Scheme is a method for dividing a secret among a group of people in such a way that only groups of above a certain size can reconstruct the secret.
Let be a secret in the Galois field of some prime , and fix integers and . The goal is to distribute shares such that any group of or more can recover , and any group of fewer than learns nothing about . To do so:
- Construct a random polynomial of degree , such that
where the coefficients are chosen uniformly at random from .- Distribute the shares to participants. Each participant receives one input-output pair .
To recover the secret, any group of participants combines their shares to interpolate the unique degree- polynomial using Lagrange interpolation. The secret is recovered by evaluating .
Intuition
Any group with fewer than shares has fewer than points on a degree- polynomial, so there are infinitely many such polynomials consistent with those shares. These polynomials can produce any value at , meaning the secret s remains completely undetermined.
Examples
Secrets in the United Nation
A vault in the United Nations can be opened with a secret combination . In only two situations should this vault be opened:
All 193 member countries must agree, or
At least 55 countries, plus the U.N. Secretary-General, must agree.
Propose a scheme that gives private information to the Secretary-General and all 193 member countries so that the secret combination can only be recovered under either one of the two specified conditions. Let , and choose 's at random from . Distribute where to the countries, and distribute where to the Secretary General.
The General Assembly of the UN decides to add an extra level of security: each of the 193 member countries has a delegation of 12 representatives, all of whom must agree in order for that country to help open the vault.
Propose a scheme that adds this new feature.
Trust No One