Unter Geheimnisteilung (geteiltes Geheimnis) oder Secret-Sharing versteht man eine Technik, ein Geheimnis (meist eine Zahl) unter einer gewissen Anzahl von so genannten Spielern aufzuteilen. Keine der Personen kann ohne die anderen das Geheimnis rekonstruieren. Je nach System ist nur eine Teilmenge der Spieler notwendig, um das Geheimnis zu bestimmen. Als Dealer wird derjenige bezeichnet, der die Aufteilung vornimmt.
Ein typisches Geheimnis ist der geheime Schlüssel des RSA-Kryptosystems. Wenn er auf mehrere Personen aufgeteilt wird, kann keine Person alleine eine Signatur erstellen. Auch die Kompromittierung eines Teilnehmers (und dessen Teilschlüssels) führt nicht zur Kompromittierung des gesamten Schlüssels. Solch eine Aufteilung ist in Hochsicherheitsbereichen (zum Beispiel Militär, Zertifizierungsunternehmen, Banken, …) sinnvoll.
Es kann jedoch auch verwendet werden, wenn der Dealer eine Bestätigung möchte, dass ein Ereignis eingetreten ist, und alle Spieler dies bestätigen. So könnte er eine hinreichend große Zahl verteilen, und nur, wenn alle kooperieren, also der Meinung sind, das Ereignis trat ein, die Nummer generieren und übermitteln. Auf diesem Wege sind auch kryptologische Testamente möglich, bei denen der Testamentstext öffentlich verschlüsselt wird, aber nur alle zusammen beschließen können, ihn zu lesen, was die Gefahr unbefugten Zugriffs reduziert.
Verfahren
Einfaches Secret-Sharing
Ein einfaches (additatives) Sharing-Verfahren sieht folgendermaßen aus:
- Sei das Geheimnis
- Wähle die Teilgeheimnisse und einen Moduls p so, dass gilt:
- Rekonstruktion von nur möglich, wenn alle kombiniert werden
- Für p wird in der Regel eine Primzahl verwendet
Dieses Verfahren ist ein (n,n)-Schwellwert-Schema (sprich: n-aus-n-Schwellwert-Schema), da alle n Teilgeheimnisse zur Rekonstruktion benötigt werden. Die müssen zufällig gewählt werden. wird derart gewählt, dass die Bedingung erfüllt wird.
Eine zweite Möglichkeit kann realisiert werden, indem die Addition durch die Exklusiv-Oder-Verknüpfung () ersetzt wird:
- Sei das Geheimnis (binär dargestellte Zahl)
- Wähle die Teilgeheimnisse folgendermaßen:
- Rekonstruktion von nur möglich, wenn alle kombiniert werden
Dieses Verfahren ist wiederum ein (n,n)-Schwellwert-Schema. Die Bedingungen für die sind so wie im zuvor beschriebenen Verfahren.
Erweiterte Secret-Sharing-Verfahren
Zwei bekannte Secret-Sharing-Verfahren stammen von Adi Shamir: Shamir’s Secret Sharing und die Visuelle Kryptographie.
Ein weiteres Verfahren ist das Verifiable Secret Sharing, bei dem es dem Dealer nicht möglich ist, falsche Shares an die Spieler zu verteilen. Um diese Sicherheit zu gewährleisten, werden Commitment-Verfahren eingesetzt, mit denen sich der Dealer unwiderruflich auf die Shares festlegt.
Einsatzgebiete
Secret-Sharing (vor allem VSS) wird bei vielen Varianten der verteilten Schlüssel-Generierung benötigt, um den Schlüssel unter den Teilnehmern zu verteilen.
Siehe auch
Einzelnachweise
- ↑ Secret Sharing, Part 1 - Cryptography and Machine Learning. Abgerufen am 27. Mai 2020.