Schnorr-séma

Az oldal jelenlegi verzióját még nem ellenőrizték tapasztalt közreműködők, és jelentősen eltérhet a 2021. szeptember 2-án felülvizsgált verziótól ; az ellenőrzések 3 szerkesztést igényelnek .

A Schnorr séma az egyik leghatékonyabb és elméletileg megalapozott hitelesítési séma .  Az áramkör biztonsága a diszkrét logaritmusok kiszámításának nehézségén alapszik . A Klaus Schnorr által javasolt séma az ElGamal (1985) és a Fiat-Shamir (1986) sémák módosítása , de kisebb aláírásmérettel rendelkezik. A Schnorr-séma a Fehérorosz Köztársaság STB 1176.2-99 szabványa, valamint a dél-koreai KCDSA és EC-KCDSA szabványok alapja. A 4 999 082 számú amerikai szabadalom lefedte , amely 2008 februárjában járt le.

Bevezetés

A hitelesítési és elektronikus aláírási sémák az információ integritását biztosító kriptográfiai protokollok egyik legfontosabb és leggyakoribb típusa.

A hitelesítési protokollok célja könnyen érthető a következő példából. Tegyük fel, hogy van egy információs rendszerünk, amelyben meg kell különböztetni a különféle adatokhoz való hozzáférést. Ebben a rendszerben is van egy adminisztrátor, aki az összes felhasználói azonosítót tárolja a hozzá tartozó jogosultságokkal, amelyek segítségével megkülönböztethető az erőforrásokhoz való hozzáférés. Egy felhasználónak egyszerre engedélyezhető egy fájl elolvasása, a második módosítása, és egyidejűleg megtagadható a hozzáférés a harmadikhoz. Ebben a példában az információk integritásának biztosítása azt jelenti, hogy megakadályozzuk a rendszerhez való hozzáférést olyan személyek számára, akik nem annak felhasználói, valamint megakadályozzuk, hogy a felhasználók hozzáférjenek azokhoz az erőforrásokhoz, amelyekre nincs jogosultságuk. A legelterjedtebb hozzáférés-szabályozási módszer, a jelszavas védelem számos hátránnyal rendelkezik, ezért térjünk át a probléma kriptográfiai megfogalmazására.

A protokollnak két résztvevője van - Alice, aki meg akarja erősíteni a személyazonosságát, és Bob, akinek ellenőriznie kell ezt a megerősítést. Alice-nek két kulcsa van , egy nyilvános (nyilvános) és  egy privát (privát) kulcsa, amelyet csak Alice ismer. Valójában Bobnak csak a használatával kell ellenőriznie, hogy Alice ismeri-e a privát kulcsát .

A Schnorr-séma az egyik leghatékonyabb a gyakorlati hitelesítési protokollok között, amely ezt a feladatot valósítja meg. Minimálisra csökkenti az üzenet aláírásának létrehozásához szükséges számítások függőségét. Ebben a sémában a fő számításokat a processzor tétlensége közben lehet elvégezni, ami lehetővé teszi az aláírás sebességének növelését. A DSA -hoz hasonlóan Schnorr séma egy rendelési alcsoportot használ a -ban . Ez a módszer hash függvényt is használ .

Kulcsgenerálás

A Schnorr aláírási séma kulcsgenerálása ugyanaz, mint a DSA kulcsgenerálása , kivéve, hogy nincsenek méretkorlátozások. Vegye figyelembe azt is, hogy a modulus önállóan is kiszámítható.

  1. Egy prímszámot választunk, amely általában bitekkel egyenlő .
  2. Egy másik prímszámot választunk úgy, hogy az osztója legyen . Vagy más szóval, meg kell tenni . A bitekkel egyenlő szám méretét szokás választani .
  3. Válasszon egy számtól eltérő számot úgy, hogy .
  4. Peggy egy nál kisebb véletlenszerű egész számot választ .
  5. Peggy kiszámolja .
  6. Peggy nyilvános kulcsa , Peggy privát kulcsa .

Hitelesítési protokoll

Protokollműveleti algoritmus

  1. Előfeldolgozás . Alice kiválaszt egy véletlenszámot , amely kisebb, mint , és kiszámítja . Ezek a számítások előzetesek, és jóval Bob érkezése előtt elvégezhetők.
  2. Megindítás, inicializálás. Alice elküldi Bobnak.
  3. Bob kiválaszt egy véletlen számot , és elküldi Alice-nek.
  4. Alice kiszámolja és elküldi Bobnak.
  5. Megerősítés. Bob ellenőrzi

Az algoritmus biztonsága a t paramétertől függ . Az algoritmus megnyitásának bonyolultsága megközelítőleg egyenlő . Schnorr azt tanácsolja , hogy 72 bit körüli t -t használjon, és esetén . A diszkrét logaritmus probléma megoldásához ebben az esetben legalább az ismert algoritmusok lépései szükségesek.

Példa

Kulcsgenerálás:

Hitelesítés:

Támadások a séma ellen

Passzív ellenség

Ha Schnorr sémájában feltételezzük, hogy Alice egy ellenfél, akkor az 1. lépésben véletlenszerűen, de hatékonyan választhat. Legyen  az Alice által átadott szám. Tegyük fel, hogy lehetséges két véletlen számot találni, és olyan, hogy Alice mindegyikhez megtalálja a megfelelőt , és amely megerősítése pozitív eredményt ad. Kapunk:

.

Innen ill . Mivel , akkor létezik , és ezért , vagyis a diszkrét logaritmusa . Így a protokoll 3. lépésében ritka az olyan, hogy Alice mindkettőjükre megfelelően tud válaszolni (amennyiben ugyanaz ) , ami azt jelenti, hogy Alice támadása csak elhanyagolható valószínűséggel sikeres. Vagy gyakran előfordulnak ilyen értékek, és akkor az Alice által használt algoritmus felhasználható a diszkrét logaritmusok kiszámítására.

Más szóval, bebizonyosodott, hogy feltételezve, hogy a diszkrét logaritmus probléma nehéz, a Schnorr hitelesítési séma ellenáll a passzív ellenfélnek, azaz helyes.

Aktív ellenség

Egy aktív ellenfél számos protokoll-végrehajtási munkamenetet lebonyolíthat hitelesítőként egy becsületes bizonyítóval (vagy lehallgathatja az ilyen végrehajtásokat), majd megkísérelheti megtámadni a hitelesítési sémát. Az aktív ellenféllel szembeni ellenálláshoz elegendő, ha a hitelesítési protokoll nulla tudásalapú . A Schnorr-séma nulla tudástulajdonságát azonban még senki sem tudta bizonyítani.

Digitális aláírási protokoll

A Schnorr algoritmus protokollként is használható egy üzenet digitális aláírásához . A kulcspár ugyanaz, de hozzáadásra került egy egyirányú hash funkció .

Aláírás generálása

  1. Előzetes feldolgozás. Peggy kiválaszt egy véletlenszámot , amely kisebb, mint , és kiszámítja . Ez az előszámítási szakasz. Érdemes megjegyezni, hogy ugyanazok a nyilvános és privát kulcsok különböző üzenetek aláírására használhatók, miközben minden üzenethez új szám kerül kiválasztásra.
  2. Peggy összefűzi az üzenetet , és kivonatolja az eredményt, hogy megkapja az első aláírást:
  3. Peggy kiszámolja a második aláírást. Meg kell jegyezni, hogy a második aláírás modulo számít . .
  4. Peggy üzenetet küld Victornak, és feliratokat ír : .

Aláírás ellenőrzése

  1. Victor kiszámítja (vagy , ha úgy számítja ).
  2. Victor ellenőrzi . Ha igen, akkor az aláírást érvényesnek tekinti.

Hatékonyság

Az aláírás generálásához szükséges fő számításokat az előfeldolgozási szakaszban és a számítási szakaszban hajtják végre , ahol a és számok bitsorrendűek , a paraméter  pedig egy bit. Az utolsó szorzás elhanyagolható az RSA séma moduláris szorzásához képest .

Az aláírás-ellenőrzés főként egy olyan számításból áll, amelyet a modulo számítások átlagával lehet elvégezni, ahol bitben van megadva a hosszúság .

A rövidebb aláírás csökkenti az aláírás-generáláshoz és ellenőrzéshez szükséges műveletek számát: a Schnorr-sémában és az ElGamal-sémában .

Példa

Kulcsgenerálás:

  1. és . És .
  2. A ki van választva , amely a mező eleme . Aztán és
  3. Peggy ekkor kiválasztja a kulcsot
  4. Peggy privát kulcsa , nyilvános kulcsa .

Üzenet aláírása:

  1. Peggynek alá kell írnia az üzenetet .
  2. Peggy választ és kiszámol .
  3. Tegyük fel, hogy az üzenet , és a soros kapcsolat azt jelenti, hogy . Tegyük fel azt is, hogy ennek az értéknek a kivonatolása egy kivonatot eredményez . Ez azt jelenti .
  4. Peggy kiszámolja .
  5. Peggy elküldi Victort és .

Szabadalmak

A Schnorr-séma több országban rendelkezik szabadalmakkal. Például az 1991. február 19-én kelt US 4 995 082 számú (2008. február 19-én lejárt). 1993-ban a Sunnyvale-i Public Key Partners (PKP) megszerezte a szabadalom világszintű jogait. Ez a rendszer az Egyesült Államokon kívül számos más országban is szabadalmaztatott.

Sematikus módosítások

Ernie Brickell és Kevin McCurley 1992-ben végrehajtott módosítása nagymértékben javította az áramkör biztonságát. Módszerük a számot használja , amelyhez hasonlóan nehéz felbontani , a szám egyszerű osztóját és a -ben lévő kitevő elemet , amelyeket ezt követően az aláírásban használnak. A Schnorr-sémától eltérően a módszerükben az aláírást az egyenlet számítja ki

.

Előnyök

Míg Brickell és McCarley módosítása számításilag kevésbé hatékony, mint a Schnorr-séma, ennek a módszernek az az előnye, hogy két összetett probléma nehézségén alapul:

  • a logaritmus számítása a sorrendben ciklikus alcsoportban ;
  • faktorizálás .

Lásd még

Jegyzetek

Irodalom

  • Schnorr CP Hatékony aláírásgenerálás intelligens kártyákkal. - J. Cryptology, 1991. - S. 161-174.
  • Schnorr CP Hatékony azonosítás és aláírások intelligens kártyákhoz. Előrelépések a kriptológiában - CRYPTO'89. Számítástechnikai előadásjegyzetek 435. - 1990. - S. 239 - 252.
  • A. Menezes, P. van Oorschot, S. Vanstone. Alkalmazott kriptográfia kézikönyve. - CRC Press, 1996. - 816 p. - ISBN 0-8493-8523-7 .
  • Schneier B. Alkalmazott kriptográfia. Protokollok, algoritmusok, forráskód C nyelven = Applied Cryptography. Protokollok, algoritmusok és forráskód in C. - M .: Triumph, 2002. - 816 p. - 3000 példányban.  - ISBN 5-89392-055-4 .
  • Varnovsky N. P. Kriptográfiai protokollok // Bevezetés a kriptográfiába / Szerkesztette V. V. Yashchenko. - Péter, 2001. - 288 p. - ISBN 5-318-00443-1 . Archivált : 2008. február 25. a Wayback Machine -nél

Linkek