MQV

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

Az MQV ( Meneses-Q-Wanstone ) egy Diffie-Hellman algoritmuson alapuló hitelesítési protokoll . Az MQV védelmet nyújt az aktív támadások ellen a statikus és ideiglenes kulcsok kombinálásával. A protokoll módosítható úgy, hogy egy tetszőleges véges kommutatív csoportban működjön , és különösen elliptikus görbék csoportjaiban, ahol az ECMQV néven ismert .

Az MQV-t eredetileg Alfred Menezes , Minghua Q és Scott Vanstone javasolta 1995-ben. 1998-ban módosították. Az algoritmusnak létezik egy-, két- és háromutas változata.

Az MQV az IEEE P1363 nyilvános kulcsú kriptorendszer szabványosítási projekt része .

Az MQV egyes fajtáira vonatkozó szabadalmak a Certicom tulajdonában vannak [ 1] .

Az MQV-nek van néhány gyenge pontja, amelyeket a HMQV algoritmus javított ki 2005-ben [2] ; lásd [3] , [4] , [5] .

Mind az MQV, mind a HMQV algoritmusnak vannak olyan sebezhetőségei, amelyeket az FHMQV protokoll javított (lásd [6] )

Leírás

Alice-nek van egy statikus kulcspárja ( ), amelyben a nyilvános kulcsa és a privát kulcsa található. Bobnak van egy statikus kulcspárja ( ), amelyben a nyilvános kulcsa és a privát kulcsa található. Határozzuk meg . Legyen egy pont egy elliptikus görbén. Ezután hol van a használt pontgenerátor sorrendje . Így vannak a koordinátájának első bitjei . Ezen kívül bevezetünk egy kofaktort, amelyet a következőképpen definiálunk: , ahol a csoport sorrendje , és figyelembe kell venni, hogy technikai okokból teljesíteni kell a következő követelményt: [1] .

Lépés Művelet
egy Alice egy kulcspárt ( ) hoz létre úgy, hogy véletlenszerűen generálja és kiszámítja az = értéket , ahol  az elliptikus görbe egy pontja. Ezután ideiglenes nyilvános kulcsot küld Bobnak.
2 Bob egy kulcspárt ( ) hoz létre a = véletlenszerű generálásával és kiszámításával . A párosítás után elküldi ideiglenes nyilvános kulcsát Alice-nek.
3 Alice ellenőrzi, hogy az ideiglenes nyilvános kulcs a csoporthoz tartozik-e, és azt is, hogy nem null elem. Ezután kiszámítja a csoport elemet a következőképpen: , hol és . Ha , Alice elutasítja a Bobtól kapott adatokat. Ellenkező esetben a kiszámított eredményt elfogadja megosztott titokként.
négy Bob ellenőrzi, hogy az ideiglenes nyilvános kulcs a csoporthoz tartozik-e, és azt is, hogy nem null elem. Kiszámítja a csoportelemet a következőképpen: , hol és . Ha , Bob elutasítja az Alice-től kapott adatokat. Ellenkező esetben a kiszámított eredményt elfogadja megosztott titokként.

Az alapprotokoll több okból is vonzó megoldás:

  1. Implicit kulcsazonosítást és utólagos biztonságot biztosít minden egyes társ számára.
  2. Nem csak a számítások, hanem az áteresztőképesség szempontjából is hatékony, hiszen csak a terepen megadott műveleteket és egyszerű megjelenítést használ. Minden résztvevő számításai (durva becslés szerint) csak 2,5 szorzásból állnak – az egyik egy ideiglenes kulcspárt generál, a másik pedig a vagy -vel végzett skaláris szorzást .

A többi számítás a vagy -vel való szorzás . A kofaktorral való szorzás költségét is érdemes figyelembe venni. Ez a komplexitás azonban (a kofaktorral szorozva) a csoport méretétől függ. Az elliptikus görbén alapuló kriptorendszereknél ez a bonyolultság elhanyagolható, mivel a kofaktor általában kicsi [2] .

Helyesség

Bob számításai: .

Alice számításai: .

Tehát a billentyűk valóban egyenértékűek a [3] billentyűvel .

Lehetséges támadások

A támadó (kriptaelemző) legegyszerűbb módja egy tanúsítvány (azonosító) beszerzése, amely a nevét az Alice birtokában lévő nyilvános kulccsal társítja. Ha ebben a protokollban lecseréli Alice azonosítóját a saját azonosítójára, akkor jelentős esély van arra, hogy Bob elfogadja az adott azonosítót anélkül, hogy észrevenné a helyettesítést, valójában azt gondolva, hogy Alice-szel beszél. Itt van egy támadás, amely a forráshelyettesítésen alapul. Ez a támadás a kulcstulajdonosi követelmények szükségességét jelzi: a kérelmezőnek ismernie kell a titkos kulcsot, hogy a nyilvános kulcsnak megfelelő azonosítót kapjon. Elvileg az identitásközpont intézhetné a duplikált nyilvános kulcsok ellenőrzését, de ez a lépés nem praktikus, mivel nagyszámú identitásközpont részvételével jár. Így a támadónak meg kell szereznie egy azonosítót egy új nyilvános kulcshoz , hogy legyen egyezés a titkos kulcshoz , és hogy Bob ugyanazt a megosztott titkot számítsa ki, amikor interakcióba lép a támadóval, mint amit Bob és Alice számított volna interakció közben. A következő megvalósítás a fenti célok mindegyikét kielégíti. Jelöljük ki a támadót Évának [3] .

Lépés Művelet
egy Eve elkapja Alice ideiglenes nyilvános kulcsát Bob felé vezető úton.
2 Eve kiválaszt egy egész számot , amely a réshez tartozik, és kiszámítja az ideiglenes nyilvános kulcsot (megjegyezzük , hogy Eve nem ismeri a megfelelő titkos kulcsot ). Ha , Eve megismétli ezt a lépést egy másik egész számmal .
3 Eve kiszámítja a statikus párt a következőképpen :

.

négy Eve azonosítót kap a statikus nyilvános kulcsához . Így ismeri a megfelelő titkos kulcsot . Ezért megfelel a kulcstulajdonosokkal szemben támasztott követelményeknek.
5 Eve ideiglenes nyilvános kulcsának elküldésével kezdeményezi a protokollt Bobbal .
6 Eve megkapja Bob ideiglenes nyilvános kulcsát , és átadja Alice-nek.

A támadás eredményeként Alice ellenőrzi Bob azonosítóját és kiszámítja a megosztott titkot , míg Bob megkapja és ellenőrzi Éva azonosítóját, és kiszámítja a megosztott titkot , ahogyan a korábban definiált és .

Bob kulcsa ugyanaz lesz, mint ha Bob kommunikálna Alice-szel.

.

Évának meg kell szereznie egy azonosítót statikus nyilvános kulcsához, amikor Alice elindítja a protokollt. Így Alice késést észlelhet az ideiglenes nyilvános kulcsának elküldése és Bob azonosítójának kézhezvétele között.

Támadás elleni intézkedések

Mindenekelőtt az első lépés az, hogy a protokollba be kell foglalni egy műveletet, amely a kulcs meglétének ellenőrzésére lesz fenntartva. Ez a tipp minden hitelesítési protokollra vonatkozik. Így ahhoz, hogy átmenjen Bob igazolásán, Eve-nek egy további ellenőrzésen kell átmennie. Egy másik, a protokollba bevezethető ellenintézkedés az, hogy a felek kicserélik ideiglenes nyilvános kulcsaik egyirányú kivonatát az ideiglenes kulcsok cseréje előtt. A cseremechanizmus ebben az esetben nagyon fontos. Mindkét félnek meg kell bizonyosodnia arról, hogy a másik tag valóban megkapta a "csomagot", mielőtt ideiglenes nyilvános kulcsot küldene neki. Ennek a ténynek a megerősítése a megfelelő sorrendben érhető el. Például Alice elküldi a visszaigazolását, Bob megkapja és elküldi a nyugtát. Alice megkapja Bob visszaigazolását, és elküldi a kulcsát. Amikor Bob megkapja Alice kulcsát, elküldi a saját kulcsát. Ilyen szekvencia nélkül például, ha Bob és Alice egyszerre küldenek, ez a protokoll sebezhető lesz bizonyos típusú támadásokkal szemben [4] .

Vessünk egy pillantást a többi ellenintézkedésre.

  1. A késleltetés detektor egy olyan alternatíva, amely nem használ titkosítást. Az úgynevezett késleltetés-ellenőrző megvalósítása. Az oldal (Bob vagy Alice) leállítja a protokollt, ha a másik oldal válaszideje meghaladja a protokoll megvalósításában megadott megengedett értéket. Így, amikor Eve azonosítót kér, ez a lépés további időt igényelhet (azonban van mód ennek a bonyolultságnak a megkerülésére). Ezenkívül a többletidő hasonló lesz a protokollban szereplő egyéb műveletek idejéhez. Ez az ellenintézkedés azonban nem segít többlépcsős támadás esetén.
  2. "Rekordazonosító". A címzett kérheti az azonosító életkorának igazolását. Az újonnan megszerzett személyi igazolvány támadás bizonyítékának tekinthető. Ezt követően a kommunikációs csatorna a támadóval lezárásra kerül.
  3. A résztvevők azonosítása üzeneteken keresztül. A protokollok fő tervezési elve az, hogy az üzeneteknek elegendő információt kell tartalmazniuk a félreértelmezések elkerülése érdekében. Ennek megfelelően a megosztott titokkal védett üzeneteknek azonosítaniuk kell az átvitelben résztvevőket. Egy ilyen azonosítás megakadályozná a félreértelmezés lehetőségét.

A fenti fejlesztések mindegyike minimális módosításokat vezet be a protokollstruktúrában. Érdemes megjegyezni, hogy nincs hivatalos bizonyíték a protokoll teljes biztonságosságára, amelyet a fenti ajánlások alapján módosítottak.

Lásd még

Jegyzetek

  1. Kaliski, 2001 , p. 277.
  2. Kaliski, 2001 , p. 278.
  3. 1 2 Kaliski, 2001 , p. 280.
  4. Kaliski, 2001 , p. 281.

Irodalom

Linkek