Shamir’s Secret Sharing Scheme
Shamir’s Secret Sharing scheme is an algorithm first proposed by Adi Shamir in 1979. This is a method for securely splitting and managing a secret, where the secret is divided into multiple shares, and only a subset of these shares is required to reconstruct the original secret. The minimum number of shares needed for reconstruction is called the threshold.
This scheme leverages the Lagrange interpolation theorem. Specifically, it uses the fact that points of a polynomial uniquely determine a polynomial with degree less than or equal to .
Shamir’s Secret Sharing is a -threshold scheme based on polynomial interpolation over finite fields.
The secret is divided into n parts , each of which is referred to as a share. This method satisfies the following two conditions:
-
With or more shares , the secret can be calculated. In other words, once shares are combined, the secret can be reconstructed in every combination.
-
With only or fewer shares , it is impossible to fully determine the secret . The secret cannot be reconstructed with less than shares.
In addition, if , then all shares are required to reconstruct the secret .
Let’s assume the secret $S$ can be represented as an element $a_0$ in a finite field $GF(q)$, where $q$ is a value greater than the number of shares $n$ to be generated. In $GF(q)$, $k-1$ elements $(a_1, a_2, \ldots, a_{t-1})$ are randomly selected, and then a polynomial is constructed as follows:
We calculate points on this polynomial. For example, set to find the point . Each participant is given one point (a non-zero input to this polynomial and its corresponding output).
With any combination of of these points, the value can be determined through interpolation.
In the polynomial, we have points in the form . corresponds to the first coefficient of the polynomial , which is .
Therefore, when points are combined, can be calculated using this formula, allowing the reconstruction of the secret .