Šamirovo sdílení tajemství

kryptografický algoritmus

Šamirovo schéma pro sdílení tajemství je kryptografický algoritmus. Je to forma sdílení tajné informace, kdy je tato informace rozdělena do částí (každému účastníku je přidělena jedinečná část) a pro rekonstrukci původní informace je třeba alespoň určitý počet z dílčích částí. Izraelský matematik Adi Šamir jej formuloval v roce 1979

Matematická definice

editovat

Našim cílem je rozdělit nějaká data   do   částí  tak, že:

  1. Znalost některých   nebo více   částí zajistí snadné zjištění   .
  2. Znalost některých   nebo méně   částí ponechá   zcela neurčená (ve smyslu, že všechny hodnoty jsou stejně možné).

Toto schéma nazýváme   prahové schéma. Pokud  , všichni účastníci jsou třeba k rekonstrukci tajemství.

Shamirovo schéma

editovat

Předpokládejme, že chceme užít   prahové schéma pro sdílení tajemství  . Bez újmy na obecnosti předpokládejme, že   je prvkem konečného tělesa   velikosti   kde   a zároveň je   prvočíslo.

Náhodně vybereme   koeficientů  . Dále   Sestavíme polynom  . Dále vypočítáme souřadnice   bodů tohoto polynomu. Například pro   získáme   bodů ve tvaru  

Tyto souřadnice jsou rozděleny mezi   účastníků. Jelikož je polynom stupně   určen jednoznačně   body, z jakékoliv  -prvkové podmnožiny bodů lze jednoznačně pomocí interpolace určit koeficienty polynomu   a tedy i tajemství  

Reference

editovat
  • SHAMIR, Adi. How to share a secret. Communications of the ACM. 1979, roč. 22, čís. 11, s. 612–613. 

V tomto článku byl použit překlad textu z článku Shamir's Secret Sharing na anglické Wikipedii.