Zum Inhalt springen
uencoder

Verwenden Shamir's Secret Sharing in teilen Schlüssel

Shamir's Secret Sharing splits ein secret in n shares, any k von welche kann reconstruct it. Useful für Schlüssel escrow, distributed custody, und eliminating single points von failure.

  1. 1

    Shamir's Secret Sharing (SSS) is based on polynomial interpolation over a finite field. To share a secret S with threshold k among n parties: generate a random polynomial f of degree k-1 where f(0) = S. Each party gets f(i) for i = 1..n. Any k shares reconstruct f and thus S; k-1 shares reveal nothing.

  2. 2
    Zufallsbytes-Generator →

    Erzeugen the random coefficients for the polynomial. The constant term is the secret; all other coefficients are random. Use a CSPRNG — the security depends on the randomness of the coefficients.

  3. 3
    Modulare Exponentiation →

    Evaluate the polynomial at distinct points to create shares. Each share is (x, f(x)) where x is the point index. Use Lagrange interpolation to reconstruct the secret from k shares.

  4. 4

    Use cases: splitting an encryption key among multiple trustees (e.g., 3 of 5 required to recover), distributed backup of a master key, social recovery for cryptocurrency wallets. The threshold k determines the trust model — higher k means more parties must cooperate, lower k means faster recovery but less security.

Häufige Fragen

What is the threshold k?
k is the minimum number of shares needed to reconstruct the secret. With k=3 and n=5, any 3 of 5 shares can recover the secret, but 2 shares reveal nothing. Choose k based on your trust model: how many parties must cooperate, and how many failures can you tolerate.
Ist SSS information-theoretically sicher?
Yes. With fewer than k shares, every possible secret is equally likely — there is no information leakage regardless of computational power. This is stronger than computational security (e.g., RSA), which could be broken by a quantum computer.

Verwandte Tools