Shamir Secret Sharing wurde 1979 von Adi Shamir veröffentlicht. Es codiert ein Geheimnis als Konstante eines zufälligen Polynoms über einem endlichen Körper; es zerschneidet keine Phrase und ist allein kein Signaturprotokoll.
Ein k-von-n-Schema rekonstruiert aus beliebigen k gültigen, unterschiedlichen Anteilen desselben Satzes. Es verträgt den Verlust von n−k Anteilen, erlaubt aber auch k zusammenarbeitenden Besitzern, das Geheimnis zu erhalten. 3 von 5 verträgt etwa zwei Verluste, keine drei. Die Schwelle wägt Verfügbarkeit gegen die Größe einer zur Wiederherstellung fähigen Gruppe ab. [Adi Shamir — How to Share a Secret (1979)]
Für Geheimnis S wählt man f(x)=S+a1*x+…+a(k−1)*x^(k−1). Die übrigen Koeffizienten sind unabhängige, gleichverteilte zufällige Körperelemente. Ein Anteil ist (x,f(x)) mit unterschiedlichem, von null verschiedenem x; x=0 würde S direkt verraten. Lagrange-Interpolation aus k Punkten bestimmt f(0). Zwei Kopien desselben Punktes liefern keine zusätzliche Gleichung. [Adi Shamir — How to Share a Secret (1979)]
Nur als Lehrbeispiel gelten S=5 und f(x)=5+3*x mod 17. Die Anteile sind (1,8), (2,11), (3,14). Die ersten zwei ergeben Steigung 3 und Konstante 8−3=5; alle drei Paare rekonstruieren 5. Der einzelne Punkt (1,8) passt zu jedem S von 0 bis 16 bei a=8−S mod 17. Dieser kleine Körper ist kein Wallet-Entwurf. [Adi Shamir — How to Share a Secret (1979)]
Im idealen Schema geben weniger als k vollständige Anteile selbst bei unbegrenzter Rechenleistung keine Information über S preis. Das setzt korrekt gewählte unabhängige Koeffizienten und das festgelegte Beobachtungsmodell voraus. Schwache Zufälligkeit, wiederverwendete Koeffizienten, Seitenkanäle oder weitere Prüfdaten erfordern eigene Analysen. Teilen stärkt kein schwaches Geheimnis, das anderweitig erraten werden kann. [Adi Shamir — How to Share a Secret (1979)] [SLIP-0039 — Shamir Secret-Sharing for Mnemonic Codes]
Wiederherstellung benötigt denselben Körper, dieselbe Wertecodierung, Indizes und Satzidentität. Ein Primkörper GF(p) nutzt modulare Inverse statt Dezimaldivision; GF(256) rechnet anders als Restklassen modulo 256. SLIP-39 ergänzt konkrete Wortliste, Metadaten, Gruppen, Verschlüsselung und Prüfungen. Zwei Programme namens Shamir müssen daher keine kompatiblen Anteile haben. [Adi Shamir — How to Share a Secret (1979)] [SLIP-0039 — Shamir Secret-Sharing for Mnemonic Codes]
Einfache Interpolation bestätigt weder Herkunft eines Anteils noch Ehrlichkeit des Verteilers. Ein beschädigter Punkt kann ein anderes Geheimnis liefern, statt nur Unvollständigkeit zu melden. Erkennung, Fehlerkorrektur und verifiable secret sharing sind zusätzliche Konstruktionen mit eigenen Annahmen. SLIP-39 ergänzt etwa Checksum und Digest; diese gehören nicht automatisch zu jedem Shamir Secret Sharing. [SLIP-0039 — Shamir Secret-Sharing for Mnemonic Codes] [NIST — Multi-Party Threshold Cryptography]
Bei normaler Wiederherstellung erscheint das gesamte S in einer Umgebung, die es preisgeben kann. Anders als Multisig richtet Shamir Secret Sharing keine unabhängigen On-Chain-Signaturschlüssel ein. Schwellensignaturen können mit einem zusätzlichen MPC-Protokoll auf Anteilen arbeiten, ohne den Schlüssel zusammenzusetzen, wie NIST unterscheidet. Bloßes Teilen und späteres Kombinieren besitzt diese Eigenschaft nicht. [NIST — Multi-Party Threshold Cryptography]
Fünf Dateien in einem Konto trennen Verlust- oder Kompromittierungsrisiken nicht. Parameter dokumentieren und Wiederherstellung auf einem vertrauenswürdigen Gerät prüfen. Ein neues Zufallspolynom mit demselben S erzeugt einen anderen Satz, dessen Anteile nicht mit alten gemischt werden sollen. Ein ausreichender alter Satz rekonstruiert weiterhin S; erneutes Teilen entwertet weder zuvor erlangte Anteile noch ein bekannt gewordenes Geheimnis. [Adi Shamir — How to Share a Secret (1979)] [Trezor — Multi-share Backup]
Für ein möglichst vollständiges Bild lies diesen Eintrag zusammen mit SLIP-39, Multisig, Seed Phrase, Privater Schlüssel, Bitcoin Inheritance Plan. Auf diesen Eintrag verweisen außerdem SLIP-39, FROST.