Shamir's Secret Sharing

from Wikipedia, the free encyclopedia

Shamir's Secret Sharing is a secret sharing method developed by Adi Shamir in 1979 . With the help of such a procedure, a secret can be divided among several "instances" (confidants) in such a way that only a certain subset of these instances is required to reconstruct the secret (in contrast to simple secret sharing , in which all instances are required).

Idea of ​​the procedure

The "dealer" (named after the dealer in a card game ) determines a number of instances that should be able to reconstruct the secret later and then selects a polynomial of degree and calculates the polynomial points. The dealer distributes these support points ("shares") to the remaining entities involved. These entities can then use an interpolation method to reconstruct the polynomial, the constant term of which is the secret.

procedure

The dealer chooses a polynomial

where is the secret and which are chosen at random. The dealer now generates pairs of values , and distributes these pairs of values ​​to the entities involved. They are public and the ("shares") must be kept secret.

According to the fundamental theorem of algebra , pairs of values ​​are required to uniquely determine this polynomial. As a result, up to partial secrets can be compromised without the secret being in danger of being determined. Only when shares are known is it possible to determine. However, this also means that in order to determine the secret, instances have to combine their shares in order to get to the secret.

This system is also referred to as a (t, n) threshold value scheme (read: t out of n threshold value scheme), since only the entire share is required to reconstruct the secret.

An optimized Lagrange interpolation can be used to reconstruct :

Reconstruction using Lagrange interpolation

Lagrange interpolation can be used to reconstruct the polynomial.

But since we are only interested in the constant term , it is sufficient if we consider

Each participant now calculates

and thereby has an additive part of the secret .

It is important that in this calculation only those and are included in the formula that are actually involved in the interpolation. Are involved, may not be used.

Shamir's Secret Sharing modulo p

In cryptography, it is not practical to calculate with real numbers . One therefore restricts oneself to finite bodies . In this case, the procedure has to be adapted slightly by using modular arithmetic. If one calculates in the finite field with elements ( prime ), every calculation must be done modulo .

The polynomial is now defined as follows.

in which

further is calculated as follows

The calculation for runs analogously.

literature