400 likes | 562 Views
Úvod do kryptologie Historie a klasické šifry. Úvod. Od nepaměti lidé řeší problém: Jak předat zprávu tak, aby nikdo nežádoucí nezjistil její obsah? Dvě možnosti: ukrytí existence zprávy ukrytí smyslu zprávy S tím souvisí otázka: Jak zajistit, aby zpráva nebyla cestou změněna?
E N D
Úvod • Od nepaměti lidé řeší problém:Jak předat zprávu tak, aby nikdo nežádoucí nezjistil její obsah? • Dvě možnosti: • ukrytí existence zprávy • ukrytí smyslu zprávy • S tím souvisí otázka:Jak zajistit, aby zpráva nebyla cestou změněna? • Kde potřebuje každý z nás utajovat informace?
Kryptologie • Věda o kryptografii a kryptoanalýze • Věda o matematických technikách spojených s hledisky informační bezpečnosti, jako je důvěrnost, integrita dat, autentizace a autorizace • Kryptografie • věda o tajných kódech zaručující důvěrnost komunikace přes nezabezpečený komunikační kanál • jak zprávu zašifrovat tak, aby ji nepovolaná osoba nerozuměla • Kryptoanalýza • věda o analýze slabin šifrovacích systémů • jak dešifrovat zašifrovanou zprávu bez znalosti klíče • Historie je neustálý boj kryptografie a kryptoanalýzy • v současnosti vyhrává kryptografie • Původ slova z řečtiny: krypto = skrytý
Steganografie a stegoanalýza • Považovány za součást kryptologie • Jak ukrýt (nezašifrovanou) zprávu • Jak nalézt ukrytou zprávu • Viz samostatná přednáška
Základní cíle kryptografie • Důvěrnost (confidentiality) • též bezpečnost • služba užívaná k udržení obsahu zprávy v tajnosti • informace neunikne neautorizované osobě • Celistvost dat (data integrity) • též integrita • služba zabraňující neautorizované změně dat • schopnost detekovat změnu dat • vložení, smazání, substituce • Autentizace (authentication) • identifikace, prokazování totožnosti • řízení přístupu, autentizace podpisu, atd.
Další cíle kryptografie • Autorizace (authorization) • potvrzení původu dat • Nepopiratelnost (non-repudiation) • služba zabraňující popření předchozích kroků nebo akcí • Praktické aplikace • zajištění anonymity, elektronické platby, elektronické volby, zero-knowledge protocol
Metody kryptografie • Transpozice • přeskládání znaků zprávy jiným způsobem • Substituce • nahrazení znaků zprávy jinými znaky • Každý šifrovací algoritmus je založen na vhodné kombinaci právě těchto dvou metod
Transpozice • Uspořádání písmen zprávy jiným způsobem • Například: BLODIEEPVIA-YPZNVCRRNMJ VCRIABLAKCS-EENMJYLSYA • Řešení B L O D I E E P V I A Y P Z N V C R R N M J V C R I A B L A K C S E E N M J Y L S Y A
Skytale (Sparta) • Historicky první vojenské šifrování • Pruh kůže navinutý na tyč dané tloušťky
Substituce • Nahrazení písmen zprávy jinými znaky • Je zachována pozice písmen • Příklady: • Posunutá abeceda (Caesarova šifra) • Morseova abeceda • Fonetická šifra (B↔P; D ↔T; F ↔V; G ↔K;…) • Vigenèrova šifra • atd.
Obecný šifrovací postup • Odesilatel aplikuje šifrovací algoritmus s využitím klíče na otevřený text • Získá šifrový text, pošle jej příjemci • Příjemce aplikuje na šifrový text dešifrovací algoritmus s využitím klíče • Získá zpět otevřený text
Rozdělení kryptografie • Symetrická kryptografie • odesilatel i příjemce používají stejný klíč • dešifrovací algoritmus je inverzí šifrovacího • Asymetrická kryptografie • odesilatel použije jiný klíč než příjemce • algoritmy šifrování a dešifrování jsou obecně různé
Kerckhoffsův princip • Základní princip kryptografie • Nizozemský lingvista Auguste Kerckhoffs von Nieuwenhoff (1883) • Bezpečnost šifrovacího systému nesmí záviset na utajení algoritmu, ale pouze na utajení klíče.
Terminologie a označování • Účastníci komunikace • Alice (A) – odesilatel zprávy • Bob (B) – příjemce zprávy • Útočník • Eva (E) – eavesdropper = slídil • Texty • Message (M) = zpráva – otevřený text • Cipher (C) = šifra – šifrový text • Algoritmy • Encryption (E) = šifrování • Decryption (D) = dešifrování • Platí: C = E(K,M), M = D(K,C)
Modulární aritmetika • Hojně využívána v šifrovacích algoritmech • základ mnoha jednosměrných funkcí • Aritmetika na konečné uspořádané množině čísel • Čísla se cyklicky opakují • Operace stejné jako u přirozených čísel • Nejprve spočteme „normální“ výsledek a poté jeho modul.
Aritmetika modulo 7 • 2 + 3 = 5 (mod 7) • 5 + 4 = 2 (mod 7) • 5 · 4 = 6 (mod 7) • protože 20:7 = 2, zbytek 6 • 11 · 9 = 1 (mod 7) • protože 99:7 = 14, zbytek 1 • 35 = 5 (mod7)
Operace XOR • eXclusive OR • Logická operace nebo s tím, že je pravdivý právě jeden výraz • 0 0 = 0 • 0 1 = 1 • 1 0 = 1 • 1 1 = 0 • Jedná se de facto o součet modulo 2 • V češtině píšeme před „nebo“ čárku • Jednoduché šifrování C = M K, M = C K
Historie kryptologie Klasické šifry
Caesarova šifra • Posunutá abeceda o 3 písmena abcdefghijklmnopqrstuvwxyz DEFGHIJKLMNOPQRSTUVWXYZABC • Příklad • veni, vidi, vici YHQL, YLGL, YLFL • Algoritmus: posun abecedy • Klíč: o kolik • 25 možných klíčů
Vylepšení Caesarovy šifry • Šifrová abeceda není seřazená • Příklad abcdefghijklmnopqrstuvwxyz JULISCAERTVWXYZBDFGHKMNOPQ • Snadno zapamatovatelná klíčová fráze • Více než 41010 možností • Arabští úředníci nahrazovali písmena zástupnými symboly (+,#,*,…) • Monoalfabetické substituční šifry
Boj s frekvenční analýzou • Klamače / nuly • znaky v šifrovém textu, které nemají význam • Špatný pravopis • ponivač spúzobý zmnjenu freqenze hlázeg • Kódová slova • často používaná slova nahradíme speciálními symboly
Homomorfní substituční šifra • Každé písmeno má více reprezentací • počet reprezentací odpovídá frekvenci • náhodný výběr • Například dvouciferná čísla • každé bude mít četnost přesně 1 % • Znemožňuje frekvenční analýzu • Kryptoanalýza: Závislosti mezi písmeny • Angličtina: po q je vždy u • Digramy, trigramy, začátky slov, rozmístění samohlásek…
Vigenèrova šifra • Blaise de Vigenère, 1586 • Šifrování pomocí periodicky se opakujícího klíče délky > 1 • Polyalfabetická substituční šifra • Šifrování: • Klíčové slovo WHITEWHITEWHITEWHITEWHI • Otevřený text diverttroopstoeastridge • Šifrový text ZPDXVPAZHSLZBHIWZBKMZNM • Příliš složité použití, náchylné k chybám • Nerozlomena po 300 let • Viz přednáška o polyalfabetických šifrách
Nerozluštitelná šifra • Problém Vigenèrovy šifry: OPAKOVÁNÍ • Potřebujeme klíč dlouhý stejně jako text • kniha, noviny, Ústava, … • Problém: Ve zprávě i v klíči se některá slova často opakují (např. the) • Potřebujeme knihu náhodných písmen • existuje matematický důkaz nerozluštitelnosti • Problém distribuce klíčů
Šifrovací stroj ENIGMA • Německý vynálezce Arthur Scherbius • Vývoj od r. 1918 • U obchodníků neúspěch • Velkovýroba pro armádu • 1925 – 1945 přes 30 000 strojů • Němci považovali za zcela bezpečné • Spojenci dokázali částečně dešifrovat
Schéma ENIGMY Stiskneme „A“, dostaneme „D“ • Baterie • Klávesnice • Propojovací deska • Vstupní kolo • Scramblery • Reflektor • Propojovací deska • Propojovací kabel
Počet klíčů ENIGMY • Každý scrambler má 26 pozic • 263 = 17576 • Uspořádání 3 scramblerů • 6 • Prohození 6 párů písmen (z 26) na propojovací desce • 100 391 791 500 • Celkem přibližně 1016 klíčů
Používání ENIGMY • Denní klíč • nastavení propojovací desky (6 párů písmen) • počáteční nastavení scramblerů (3 písmena) • Klíč zprávy • propojovací deska zůstává stejná • jiné nastavení scramblerů • Před vysíláním každé zprávy se 2x poslal klíč zprávy zašifrovaný denním klíčem
Dešifrování ENIGMY (1) • Spojenci měli k dispozici repliku ENIGMY • To nestačilo, byly potřeba klíče • Polské Buiro Szyfrow • Marian Rejewski • Opakování je základ kryptoanalýzy • Analýza velkého počtu zachycených zpráv • Počátek šifrován vždy stejně => závislosti • Odvození denního klíče • Katalog závislostí vznikal celý rok
Dešifrování ENIGMY (2) • Polsko – jediný stát schopný dešifrování • Mechanický dešifrátor – „bomba“ • Prosinec 1938 – 2 nové scramblery • bylo potřeba 10x více bomb • Leden 1939 – 10 kabelů na propoj. desce • Polsko bylo bez informací • Červen 1939 – Poláci se svěřují spojencům • Srpen 1939 – Převoz „bomb“ do Anglie • Září 1939 – Němci napadli Poslko
Dešifrování ENIGMY (3) • Bletchley Park, Anglie • Slabiny německé komunikace • Opakování kódů zpráv (iniciály milenky, …) • Nutnost střídání scramblerů • Kabely propojovací desky nespojují sousední písmena • Odhalení denního klíče zabralo několik hodin • Obava: Co když Němci přestanou klíč zprávy opakovat???
Dešifrování ENIGMY (4) • Alan Turing (1912 – 1954) • King’s College v Cambridgi • 1937 „O vyčíslitelnosti“ • Univerzální Turingův stroj • Analýza knihovny zpráv • Spousta zpráv dané struktury • Němci každý den v 6:00 posílali zprávy o počasí
Dešifrování ENIGMY (5) • Nový typ „bomby“ • odhalovala klíč na základě šifrového textu a předpokládaného obsahu zprávy • Námořní Enigma • 8 scramblerů místo standardních 5 • otočný reflektor • Spojenci nedokázali luštit • Kradení kódových knih
Šifrování po americku • Indiánský kmen Navahů • Používají neobvyklý jazyk • časování sloves podle předmětu i podmětu • různé výrazy podle míry znalosti o věci • Nebyli infiltrováni německými studenty • Každá jednotka měla jednoho Navaha – radistu • Přeložil anglickou zprávu do Navažštiny • Zatelefonoval kolegovi Navahovi (nešifrovaně) • Ten přeložil zprávu zpět do Angličtiny • Japonci byli zcela bezradní
Kryptografie po WW2: Počítače • 1943 Colossus • dešifrovací stroj • 1500 elektronek • 1945 ENIAC • považován za první počítač • 1800 elektronek • Lámání šifer = zkoušení obrovského množství možností • počítače zvládnou velmi rychle • konec klasických šifer • Jednosměrné funkce • základ moderní kryptografie • výpočet funkční hodnoty je relativně snadný • výpočet inverzní funkce je velmi náročný • problém PNP
Budoucnost kryptografie • V současné době „vítězí“ kryptografie před kryptoanalýzou • Všechno stojí na předpokladu P NP a obtížnosti faktorizace velkých prvočísel • Není matematicky dokázáno • Každým dnem může veškeré šifrování zkrachovat na jediné myšlence, která zatím nikoho nenapadla (snad :-o )
Obcházení kryptografie • Analýza provozu • To, že A pošle (šifrovanou) B zprávu, má také vypovídací hodnotu • Elektromagnetický odposlech • Nezachycuje se šifrovaná zpráva, ale už úhozy do klávesnice nebo obrazovka PC • Viry, trojští koně, …