Schnorrův podpis

kryptografické podpisové schéma

Schnorrův podpis je v kryptografii označení schématu digitálního podpisu navrženého v letech 1989–1991 německým matematikem Clausem Schnorrem. Podobně jako algoritmus DSA ze stejné doby je toto schéma založeno na obtížnosti hledání diskrétního logaritmu v obecných grupách.

Schéma

editovat

Výběr parametrů

editovat

Generování klíčů

editovat
  • Uživatel si náhodně zvolí svůj nenulový soukromý klíč  .
  • Veřejným klíčem uživatele je pak hodnota  .

Pro danou zprávu  :

  • je náhodně zvoleno nenulové  
  • je spočítáno  
  • je spočítáno  , kde   značí sřetězení, a   a   jsou brány jako bitové řetězce
  • je spočítáno  

Podpisem je pak pár  , kde  .

Ověření podpisu

editovat
  • Je spočítáno  
  • Je spočítáno  

Pokud  , pak je podpis správný.

Bezpečnost

editovat

Podobně jako u principiálně příbuzných schémat DSA, ECDSA a ElGamal je důležité nepoužívat opakovaně stejnou hodnotu  , jinak může útočník zjistit hodnotu soukromého klíče. V případě Schnorrova podpisu mu k tomu poslouží rovnost

 ,

pomocí které lze při   a   hodnotu   získat velice snadno. Kromě toho existují podobně fungující útoky i pro případy, kdy   sice nejsou stejná, ovšem nejsou ani zcela náhodná a je nasbírán dostatečný počet  , která jsou určitým způsobem podobná.

Reference

editovat

V tomto článku byl použit překlad textu z článku Schnorr signature na anglické Wikipedii.