1 / 19

Modelovanie a anal ýza kryptografických protokolov

Modelovanie a anal ýza kryptografických protokolov. Marián Novotný. Kryptografické protokoly. pozostávajú z výmeny niekoľkých správ zabezpečujú autentifikáciu účastníkov zriadenie kľúčov utajenie, integritu dát nepopierateľnosť správy, anonymitu účastníkov...

jena
Télécharger la présentation

Modelovanie a anal ýza kryptografických protokolov

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Modelovanie a analýza kryptografických protokolov Marián Novotný

  2. Kryptografické protokoly • pozostávajú z výmeny niekoľkých správ • zabezpečujú • autentifikáciu účastníkov • zriadenie kľúčov • utajenie, integritu dát • nepopierateľnosť správy, anonymitu účastníkov... • využívajú kryptografické mechanizmy • symetrické, asymetrické šifrovanie • digitálne podpisy, hašovacie funkcie • príležitostné slová (nonce), časové pečiatky...

  3. Protokoly pre autentifikáciu a zriadenie kľúčov • nutná existencia už zriadeného „zabezpečeného kanálu“ • prostredníctvom dôveryhodného servera • on-line server • účastníci zdieľajú kľuč s DS • symetrická kryptografia • certifikované verejné kľúče • off-line server • asymetrická kryptografia • účastníci zdieľajú tajný kľúč

  4. Yahalom protokol • Dôveryhodný server J zdieľa symetrické kľúče s jednotlivými účastníkmi (funkcia ServerKey) • A má rolu „Iniciátor“, generuje Na • B má rolu „Responder“ , generuje Nb • J vygenerujekľúčKab

  5. Modelovanie protokolu • nutná abstrakcia • Ako budeme reprezentovať správy? • postupnosti bitov alebo symbolické dáta • reprezentácia funkcií ... • Budeme reprezentovať určité algebraické vlastnosti (ktoré a ako) ? • Diffie-Hellman (g^a)^b=(g^b)^a • RSA encr(x)=x^k mod N • encr(x*y)=encr(x)*encr(y) • Ako namodelujemekomunikáciučestných účastníkov? • definícia komunikačnej siete • Model útočníka • predpoklad dokonalej kryptografie?

  6. Dolev-Yao model • útočník predstavuje komunikačnú sieť • cez neho smerujú všetky správy • môže • zachytiť, • zmeniť, • zablokovať, • zopakovať správu, • vytvoriť novú správu, • inicializovať spojenie... • limitovaný dokonalou kryptografiou • útočník nemôže používať kryptoanalýzu na zašifrované správy • zašifrovanú správu môže dešifrovať len ak vlastní vhodný kľúč

  7. Úvod do jazyka CSP • Communicating Sequential Processes (Hoare 1978) • jednoduchý jazyk pre popisovanie systémov na abstraktnej úrovni • procesy • vykonávajú rôzne akcie, udalosti • viditeľné • neviditeľné • komunikujú s prostredím, s inými procesmi • Základné princípy • deklaratívne programovanie • komunikácia prostredníctvom synchronizácie procesov • udalosti sa vykonajú • okamžite – časový interval je reprezentovaný čas.“momentom” • len keď to procesy a prostredie umožnia • nerozlišuje medzi “paralelným” a “sekvenčným” procesom • každý “paralelný” proces ( taký, čo vznikol paralelným operátorom ) je ekvivalentný určitému “sekvenčnému” • nástroje • FDR • ProBe • PVS

  8. CSP operátory • STOP najjednoduchší proces, ktorý nerobí nič • prefixing • rekurzia • choice • external • internal –nedeterministický výber • Paralelné operátory • úplná synchronizácia • cez rozhranie • interleaving –žiadna synchronizácia • Premenovanie • Schovanie

  9. Trace model • zaznamenáme sekvencie viditeľných udalostí, ktoré proces môže vykonať v konečnom čase • špecifikácia • refinement(Q vylepšuje P)

  10. Modelovanie protokolu Yahalom pomocou CSP • abstraktné dátové typy • rozlišujeme typy dát- agenti, nonce, kľúče, šifrovanie, sekvencie,... • Fact=Encrypt.Key.Fact | Sq.Fact* | Key.k | Nonce.n | Agent.a • čestní účastníci komunikujú prostredníctvom kanálov send , receive • (send.Agent.Agent.Fact) • kanál Signal bude slúžiť na špecifikáciu bezpečnostných vlastností

  11. Iniciátor

  12. Responder

  13. Dôveryhodný server

  14. Útočník • X reprezentuje množinu faktov, ktoré môže útočník vygenerovať • messages – množina správ ktoré môžu byť generované alebo akceptované čestnými účastníkmi pri komunikácii • close – funkcia, ktorá odvádza nové fakty pomocou odvodzovacích pravidiel napr.

  15. Sieť

  16. Tajnosť • kľúč Kab by mal byť tajný • do definície procesov Iniciator, Responder pridáme signal.Claim_Secret.a.b.Kab • do kanála leak pôjdu fakty, ktoré vlastní útočník

  17. Autentifikácia účastníkov • pridáme signály commit, running • každý výskyt signálu commit, musí predchádzať výskyt signálu running

  18. Verifikácia protokolu – hľadanie útoku • máme všeobecne definovaný protokol a bezpečnostné špecifikácie • zredukujeme počet účastníkov, kľúčov, príležitostných slov na zopár konštánt • konštanty Anne, Bob, Jeeves, Yves, Na , Nb, Serverkey, Kab ... • definujeme množinu počiatočných faktov útočníka Yvesa • určíme roly účastíkov • iniciátor Anne, responder Bob • iniciátor Anne, responder Anne • iniciátor Anne, responder Anne, iniciátor Bob • iniciátor Anne, responder Anne, responder Bob • iniciátor Anne, responder Bob, responder Bob • iniciátor Anne, iniciátor Anne, responder Bob • pomocou model checkingu(FDR) overíme či platí bezpečnostná špecifikácia, ak nie tak FDR nám ukáže stopy (traces),kedy to neplatí – našli sme útok na protokol • automatizácia pomocou CASPER/FDR(Gavin Lowe) • nie je nutná znalosť CSP • špecifikácia protokolu • popis (jednotlivé správy), definícia procesov (napr. Initiator(a,na) knows serverKey(a) ) • bezpečnostné špecifikácie (napr. Secret(a, Kab, [b,s])) • Definícia funkcií, algebraických ekvivalencií • Definícia konkrétneho modelu analýzy

  19. Porovnanie s analýzou pomocou logík vier • predpoklad perfektnej kryptografie • v BAN logike sú všetci účastníci čestní • skúma sa idealizovaný protokol t.j. prepísaný do formalizmu logiky • útočník nie je explicitne formulovaný • z predpokladov a správ sa pomocou odvodzovacích pravidiel odvádzajú viery účastníkov • Sú naplnené ciele protokolu? Aké predpoklady sú potrebné?

More Related