5 min read
Notes on “Shamir's Secret Sharing: Explanation and Visualization” Blog

Original Blog: https://evervault.com/blog/shamir-secret-sharing
Bellow is my notes while reading that.
Its a cryptographic algorithm used to share or distribute secrets (private data) securely.
This algorithm can be visualized using Polynomials.

How?
Polynomial of Degree X
require X + 1
points in the curve to correctly re-construct or explain the polynomial.
That way we can share some of points (shares) on the curve without revealing the whole polynomial.
For Example:
Lets share a secret “8989”, and decide the threshold to be 3
, i.e if any person has 3
shares (points) they will be able to find the secret. So in that case we need our polynomial with degree 2
. The degree polynomial looks like this: aX^2 + bX + C = 0;
Hence we choose 2
random coefficients, a = 309
, b = 20
and c = 8989
. Hence our polynomial becomes: 309 . X ^ 2 + 20 . X + 8989 = 0.
It will create some polynomial. And we can find infinite (possibly, depending on polynomial) points (shares). And can distribute share to different people, ensuring not giving more then 2
(as 3
is threshold).
The Normal Polynomial is not that strong as it can be brute-forced after constructing possible polynomials from the current set of shares a person has. To solve this, we can use Cyclic Polynomials, this is achieved by doing MOD
of the polynomial with large PRIME NUMBER, larger then any coefficients and secret.