This is a new website currently under development. To visit the old website, click here
Blog

5 min read

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

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.