Kriptográfiai protokoll
A kriptográfiai protokoll egy absztrakt vagy konkrét protokoll , amely kriptográfiai algoritmusokat tartalmaz , gyakran kriptográfiai primitívek sorozatát . A protokoll olyan szabályokon alapul, amelyek szabályozzák a kriptográfiai transzformációk és algoritmusok használatát az információs folyamatokban két vagy több résztvevő közötti üzenetváltáshoz, valamint a használt struktúrák leírásán .
Egy protokollban résztvevők (alany, párt) lehetnek alkalmazások , személyek, csoportjaik vagy például szervezetek. Vagyis minden, ami bármilyen okból képes aktív vagy passzív szerepet játszani a protokoll működésében. Így különösen a legtöbb protokollt úgy fejlesztik ki, hogy figyelembe veszik az üzenetek elfogására képes passzív hallgató jelenlétét .
A legegyszerűbb protokollok megjelenése az 1970-es évek végére, az 1980-as évek elejére nyúlik vissza [1] . Megjelenésükhöz olyan szakemberek járultak hozzá, mint Ronald Rivest , Adi Shamir [2] , Roger Needham , Michael Schroeder [3] és még sokan mások. Bruce Schneier Applied Cryptography [4] című könyvében ismerteti az ismert protokollokat .
Funkciók
A kriptográfiai protokoll a következő funkciókkal rendelkezik [5] :
Összetétel
A protokoll passzokra ( eng. pass ) vagy ciklusokra ( eng. round ) van felosztva , amelyek csak egy résztvevő aktivitásának időintervallumát jelentik. A kettőnél több résztvevőre tervezett protokollokban, szükség esetén azok szinkronizálására, a ciklus két szinkronizálási pont közötti időtartam [6] .
A passzus pedig lépésekből áll ( angolul step, action ) - a résztvevő által végrehajtott konkrét befejezett műveletekből [6] .
Például:
A protokoll megvalósítását, vagy akár elméleti leírását konkrét résztvevők számára, amelyek mindegyikének egy vagy több szerepe van , munkamenetnek nevezzük . A protokoll egy másik szekciójában a résztvevők szerepet cserélhetnek és teljesen más funkciókat hajthatnak végre [6] .
Így egy protokoll leírja a protokoll minden absztrakt résztvevőjének viselkedésére vonatkozó szabályokat. A munkamenet pedig a protokoll egy konkrét megvalósítását írja le, amely már a múltban megtörtént [6] .
Konvenciók
A kriptográfiai protokollok írásakor a résztvevők megjelölésére vagy a „küldő”, „fogadó” stb. kifejezéseket vagy példaadókat szokás használni . A köztük lévő levelezés a következő [6] :
- Alice, Bob (az angol A, B nyelvből ) - az üzenet feladója és címzettje.
- Carl, Clara, Charlie (az angol C nyelvből ) – Alice-szel és Bobbal egyenlő harmadik fél, ha van ilyen.
- Eve (az angol lehallgató szóból ) - passzív kriptoanalitikus .
- Mallory (az angol malicious szóból) aktív kriptoanalitikus.
- Trent (az angol trust szóból ) – megbízható fél. Például egy hitelesítő hatóság az aláírás-ellenőrzési protokollokban.
Primitívek írásához a következő jelölést szokás használni [6] :
Példák a [6] jelölés használatára :
- vagy egyszerűen csak egy Bob kulcsával titkosított üzenet .
- - Alice által generált és általa aláírt véletlen szám . Ez azt jelenti, hogy az üzenet véletlenszerű számot ( egyszerű szöveg ) és ennek a számnak az elektronikus aláírását is tartalmazni fogja .
- - Alice azonosítója és kulcsa, a rekord időbélyege és élettartama, mindez együtt a megbízható központ (Trent) nyilvános kulcsával aláírva. Ez valójában Alice kulcstanúsítványa.
Osztályozás
Globálisan a protokollok két csoportra oszthatók: primitív és alkalmazott [7] .
Egy primitív kriptográfiai protokollnak önmagában nincs gyakorlati haszna, de egy alkalmazási protokoll része lehet. Megold egy absztrakt problémát [7] .
Az alkalmazott kriptográfiai protokoll ( eng. application cryptographic protocol ) gyakorlati alkalmazással rendelkezik, gyakorlati biztonsági problémák megoldására szolgál. Ezek a protokollok általában több kriptográfiai funkciót valósítanak meg egyszerre. És néha ezek egy egész protokollcsalád, amelyek szükség szerint módosíthatják a rendszerparamétereket. Például az elektronikus fizetési rendszer [7] .
Vannak azonban pontosabb osztályozások [5] :
- Osztályozás résztvevők száma szerint:
- kétoldalú
- háromoldalú
- többoldalú
- Osztályozás a továbbított üzenetek száma szerint:
- interaktív (van kölcsönös üzenetváltás)
- nem interaktív (egy adás)
- Osztályozás a protokoll rendeltetése szerint:
- üzenet integritása eredet hitelesítéssel/nélkül
digitális aláírás
- egyéni / csoport
- üzenet-helyreállítással/nélkül
- vakon
- hamisítás igazolásával
- egyirányú / kétirányú (kölcsönös) hitelesítés / azonosítás
üzenetváltás
- szokásos bizalmas továbbítás
- bizalmas sugárzott/sugárzott üzenetek
- őszinte titkok cseréje
- feledékeny adás
- bithez kötés (karakterlánc)
kulcselosztás
- előzetes
- kulcs átadás (kulcscsere)
- kollaboratív kulcsgenerálás (nyilvános kulcs elosztása)
- pár / csoport
- titkos megosztás
- Osztályozás a használt kriptográfiai rendszerek típusa szerint:
- Osztályozás működés szerint:
- interaktív / nem interaktív
- egyirányú / két- / három-, stb
- protokoll döntőbíróval (protokoll közvetítővel)
- kétirányú / megbízható harmadik féllel (bizalmi központtal)
Támadások
A következő utasítások vannak [8] :
- kriptográfiai algoritmusok ellen
- a protokollok megvalósítására használt kriptográfiai technikákkal szemben
- vs maguk a protokollok (aktív vagy passzív)
A kriptográfiai protokollok elleni támadások típusai
- A középső ember a támadások egyik fajtája , amelyben a támadó beilleszti magát a résztvevők közötti kommunikációs csatornába, módosítja vagy átirányítja a továbbított üzeneteket. Sebezhető az olyan protokollokkal szemben, amelyekből hiányzik a felek kölcsönös hitelesítése [6] .
- Üzenetvisszajátszás ( angolul replay attack ) - egy korábban továbbított üzenet vagy annak bármely részének újrafelhasználása a protokoll aktuális munkamenetében. Például, ha először rögzít egy titkosított kulcsot tartalmazó üzenetet, tetszőleges időt tölthet annak visszafejtésével, majd kényszerítheti a résztvevőket az újrahasználatra [5] .
- Type flaw attack – hasonló a visszajátszó támadáshoz, azzal az egyetlen különbséggel, hogy az üzenetet a protokoll egy másik fordulójában továbbítják, ezáltal megváltoztatja annak értékét a protokollban [6] .
- Támadás párhuzamos munkamenetekkel ( eng. parallel-session attack ) - olyan támadás, amelynek során a támadó több párhuzamos munkamenetet kezdeményez a résztvevőkkel, és üzeneteket továbbít egyik munkamenetről a másikra [6] .
Biztonsági tulajdonságok
Nagyon sok tulajdonság jellemzi a kriptográfiai protokollok biztonságát. Jellemzően a protokollok tulajdonságait, amelyek a különféle támadásokkal szembeni ellenállásukat jellemzik, célokként ( angolul goals ) vagy protokollok követelményeiként fogalmazzák meg. E célok értelmezése az idők során változott és finomodott. E célok legteljesebb és legkorszerűbb értelmezését az IETF nemzetközi szervezet dokumentumai adják . A biztonsági tulajdonságok (célok, követelmények) az IETF dokumentumokban jelenleg a következő 20 célt jelentik, 10 csoportba csoportosítva [9] :
- Hitelesítés (nem sugárzott):
- G1 Tárgy hitelesítés
( Eng. Peer Entity Authentication ) A jelenléti protokollban résztvevők hitelesítése, jogosultságaik, valamint az is, hogy valóban részt vegyenek a protokoll aktuális munkamenetének végrehajtásában.
- G2 Üzenet hitelesítés
( Magyar Üzenet hitelesítés ) Az adatforrás hitelesítése. Mivel a garancia nélkül, hogy az üzenetet nem módosították, ez a tulajdonság használhatatlanná válik, ezért követelmény az üzenet integritására is.
- G3 Anti-replay
( Eng. Replay Protection ) Garantálja, hogy az üzenetet nem küldik el újra. A kontextustól függően ez azt jelentheti, hogy az üzenetet egy adott munkamenetben hozták létre, vagy azt, hogy az üzenet egy ismert időn belül jött létre. vagy az üzenet nem érkezett meg korábban.
- Hitelesítés sok címre történő sugárzáskor vagy előfizetéshez/értesítési szolgáltatáshoz való csatlakozáskor:
- G4 Implicit (rejtett) címzett hitelesítés
( Eng. Implicit Destination Authentication ) A protokollnak biztosítania kell, hogy csak azok a résztvevők férhessenek hozzá az elküldött információkhoz, csoportos üzenetekhez vagy csoportos kommunikációhoz, akiket a küldő engedélyez.
- G5 Forrás hitelesítés
( angol Source Authentication ) A csoport törvényes tagjai ellenőrizhetik az információ vagy csoportüzenet forrásának és tartalmának hitelességét. Ide tartoznak azok az esetek is, amikor a csoporttagok nem bíznak egymásban.
- G6 - engedélyezés (megbízható harmadik féltől)
( Eng. Engedélyezés (megbízható harmadik fél által) ) A megbízható harmadik fél bemutatja az egyik résztvevőt a másik résztvevőnek, és megbizonyosodik arról, hogy megbízhatnak egymásban.
- Együttműködési kulcsgenerálási tulajdonságok:
- G7 kulcs hitelesítés
( angol kulcshitelesítés ) Az egyik résztvevő visszaigazolást kap arról, hogy egy előre meghatározott második résztvevőn (és esetleg más megbízható résztvevőn) kívül egyetlen másik résztvevő sem férhet hozzá semmilyen titkos kulcshoz.
- G8 Kulcsellenőrzés
( Eng. Key Confirmation, Key Proof Possession ) Az egyik résztvevő visszaigazolást kap arról, hogy a második résztvevő (esetleg nem definiált) valóban rendelkezik egy adott titkos kulccsal (vagy hozzáfér a kiszámításához szükséges összes kulcsanyaghoz).
- G9 Hátsó
olvasásvédelem( Magyar Perfect Forward Secrecy ) A hosszú távú kulcsok kompromittálódása nem vezet a régi munkamenetkulcsok kompromittálásához.
- G10 Új kulcsok generálása
( angol Fresh Key Derivation ) Dinamikus kulcskezelés használata friss munkamenetkulcsok beszerzéséhez.
- G11 Biztonságos képesség a biztonsági paraméterek egyeztetésére
( eng. Secure capabilities negotiation ) A kriptográfiai képességek és a résztvevők preferenciáinak észlelése, valamint a biztonsági paraméterek egyeztetése (például kulcs erőssége és titkosításai).
- G12 Adatvédelem
( angol Confidentiality , Secrecy ) Garancia arra, hogy egy üzenet vagy annak egy része nem válik hozzáférhetővé, illetve nem kerül nyilvánosságra illetéktelen résztvevők és támadó számára.
- Anonimitás :
- G13 Személyazonosság védelme a nem résztvevőkkel szemben (nem kötelező)
( eng. Identity Protection against Leavesdroppers ) Az a támadó, aki nem legitim résztvevője a protokollnak, nem hozhatja összefüggésbe az egyik fél által váltott üzenetet az adott fél valódi identitásával.
- G14 Személyazonosság védelme a résztvevőkkel szemben
( Eng. Identity Protection against Peer ) A protokoll legitim résztvevője nem hozhatja kapcsolatba az egyik fél által továbbított üzenetet az adott oldal valódi identitásával.
- G15 (korlátozott) szolgáltatásmegtagadás elleni
védelem
- ( Angol (Limited) Denial-of-Service Resistance ) DoS ellenállás. Nehéz ellenőrizni, mivel a protokollt különböző okok miatt érhetik DoS támadások, amelyek közül a leggyakoribb a túl sok erőforrás (memória, feldolgozási teljesítmény) fogyasztása, mielőtt egy résztvevő hitelesítené magát. De sok más oka is van: többek között a protokollok sebezhetőek lehetnek a memóriafoglalást, a feldolgozási teljesítményt érintő DoS-támadással szemben.
- G16 Feladó invariancia
- ( Eng. Sender Invariance ) A fél bizalmat nyer abban, hogy az üzenet forrása ugyanaz maradt, mint aki elindította az üzenetet.
- A korábban elkövetett cselekményekről való lemondás lehetetlensége:
- G17 Elszámoltathatóság
( English Accountability ) Garancia, hogy a résztvevő tevékenységei egyértelműen nyomon követhetők.
- G18 Forrásigazolás
( angol származás igazolása ) Üzenet küldésének cáfolhatatlan bizonyítéka.
- G19 Kedvezményezett igazolás
( eng. Proof of Delivery ) Az üzenet átvételének megcáfolhatatlan bizonyítéka.
- G20 Biztonságos ideiglenes ingatlan
( angol Safety Temporal Property ) Az a képesség, hogy az operátort valamikor a múltban használjuk a protokoll körök közötti kapcsolat leírására. Például, ha egy felhasználó zenét szeretne hallgatni egy szolgáltatáson keresztül, a múltban valamikor fizetnie kellett az előfizetésért.
Jegyzetek
- ↑ Alfred J. Menezes , Paul C. van Oorschot , Scott A. Vanstone. Alkalmazott kriptográfia kézikönyve . - CRC Press, 1996. - S. 1-2. — 816 p. - ISBN 0-8493-8523-7 . Archiválva 2021. december 1-én a Wayback Machine -nél
- ↑ Ronald L. Rivest , Adi Shamir. Lehallgató leleplezése // Az ACM kommunikációja. - 1984. - április ( 27. sz.). - P. 393-394 .
- ↑ Roger M. Needham , Michael D. Schroeder. Titkosítás használata hitelesítéshez nagy számítógép-hálózatokban // Az ACM kommunikációja. - 1978. - december. - S. 993-999 .
- ↑ Bruce Schneier. Alkalmazott kriptográfia . - John Wiley & Sons, 1996. - 784 p. - ISBN 978-1-119-09672-6 . Archiválva : 2021. november 18. a Wayback Machine -nél
- ↑ 1 2 3 Cheryomushkin A. V. Kriptográfiai protokollok: alapvető tulajdonságok és sebezhetőségek // Alkalmazott diszkrét matematika: Alkalmazás. - 2009. - november ( 2. sz.).
- ↑ 1 2 3 4 5 6 7 8 9 10 Vladimirov S.M. és mások A Moszkvai Fizikai és Technológiai Intézet Rádiótechnikai és Irányítórendszerek Tanszékének információbiztonsági tankönyve (2013. szeptember 6.). Letöltve: 2021. október 5. Az eredetiből archiválva : 2021. október 5.. (Orosz)
- ↑ 1 2 3 Jascsenko V. V. , Varnovszkij N. P. , Nyeszterenko J. V. , Kabatyanszkij G. A. , Devjanin P. N. , Proszkurin V. G. , Cseremuskin A. V. , Gyrdymov P. A. Zubov A. kriptográfia , I. kriptográfia , V. Zubov A. V. V. .. szerk. V. V. Jascsenko . - 2012. - S. 45. - 348 p. - ISBN 978-5-4439-0026-1 . Archiválva : 2021. november 17. a Wayback Machine -nél
- ↑ Shakhanova M. V. , Varlataya S. K. Az információbiztonság biztosításának kriptográfiai módszerei és eszközei. Képzési és módszertani komplexum. / Lektorok: Kornyushin P. N. , Glushkov S. V. . — Távol-keleti Állami Műszaki Egyetem: Prospekt LLC, 2015. Archiválva : 2021. november 17. a Wayback Machine -nél
- ↑ Tulajdonságok (Célok) (angol) (a hivatkozás nem elérhető) . Internet Engineering Task Force . Letöltve: 2021. november 4. Az eredetiből archiválva : 2019. március 23.