Univerzita Karlova v Praze Matematicko fyzikální fakulta BAKALÁŘSKÁ PRÁCE

Rozměr: px
Začít zobrazení ze stránky:

Download "Univerzita Karlova v Praze Matematicko fyzikální fakulta BAKALÁŘSKÁ PRÁCE"

Transkript

1 Univerzita Karlova v Praze Matematicko fyzikální fakulta BAKALÁŘSKÁ PRÁCE Petr Růžička Přehled útoků na RSA Katedra Algebry Vedoucí bakalářské práce: Doc. RNDr. Jiří Tůma DrSc. Studijní program: obecná matematika 2009

2 Děkuji vedoucímu bakalářské práce za trpělivost a podporu při její tvorbě. Prohlašuji, že jsem svou bakalářskou práci napsal samostatně a výhradně s použitím citovaných pramenů. Souhlasím se zapůjčováním práce. V Praze dne Petr Růžička 1

3 Obsah 1. Úvod 1.1 Faktorizace 2. Jednoduché útoky 3. Malý soukromý exponent 4. Malý veřejný exponent 4.1 Coppersmithova věta 4.2 Hastardův útok 4.3 Franklin Reiterův útok na zprávy v relaci 4.4 Coppersmithův útok na krátké doplnění 4.5 Částečné odhalení klíče 5. Útoky na implementace/postranní kanály 5.1 Poznámka o složitosti 5.2 Časovací útoky 5.3 Náhodné chyby 5.4 Bleichenbacherův útok na PKCS 1 6. Shrnutí 7. Seznam literatury 2

4 Název práce: Přehled útoků na RSA Autor: Petr Růžička Katedra (ústav): Katedra Algebry Vedoucí bakalářské práce: Doc. RNDr. Jiří Tůma DrSc. e mail vedoucího: : Jiri.Tuma@mff.cuni.cz Abstrakt: Aktualizace, doplnění a rozšíření článku od Dana Boneha Dvacet let útoků na kryptosystém RSA na základě literatury zveřejněné po jeho vydání a doplnění o některé nové útoky. Klíčová slova: RSA, kryptoanalýza, útoky Title: Survey of attacks on RSA cryptosystem Author: Petr Růžička Department: Department of algebra Supervisor: Doc. RNDr. Jiří Tůma DrSc. Supervisor s e mail address: Jiri.Tuma@mff.cuni.cz Abstract: Actualization of Dan Boneh s article Twenty Years of Attacks on the RSA Cryptosystem based on literature published after it s release and completion with some new attacks. Keywords: RSA, cryptoanalysis, attacks 3

5 1. Úvod Kryptosystém RSA, vynalezený R. Rivestem, A. Shamirem a L.Adlemanem byl prvně publikován v srpnovém vydání Scientific American roku Je nejběžněji užívám pro zajištění privátnosti a autenticity elektronických dat. V současné době je RSA implementováno v mnoha komerčních systémech, je užíváno internetovými servery a prohlížeči k zajištění bezpečného provozu, k zajištění bezpečnosti ové komunikace, ke vzdálenému přihlašování a je v jádru mnoha systémů placení čipovými kartami. Stručně řečeno je RSA užíváno v aplikacích obstarávajících bezpečnost dat. Již od své publikace byl systém RSA analyzován a byly hledány slabiny. I když přes třicet let výzkumu vedlo k mnohým zajímavým útokům, žádný z nich zatím nebyl pro RSA zničující. Většina z nich ilustruje nebezpečí nesprávného užití systému, protože implementovat RSA bezpečně je úkol silně netriviální. Cíl tohoto článku je vytvořit přehled některých z útoků. Začneme popisem zjednodušené verze RSA. Nechť je součin dvou velkých prvočísel přibližně stejné velikosti n/2 bitů. Typická velikost N je 1024 (méně obvykle se užívá i 2048 či 4096 bitů), což je 309 místné číslo (v desítkové soustavě). Každý z faktorů p, q má tedy zhruba 512 bitů. Nechť dále e, d jsou dvě celá čísla větší než 1 a menší než splňující 1, kde je eulerovská funkce N, tedy 1 1, což je také řád multiplikativní grupy. N nazveme RSA modulem, e šifrovacím (veřejným) exponentem, d dešifrovacím (soukromým) exponentem. Pár, se potom nazývá veřejný klíč, pár, klíč soukromý (tajný). Zpráva je pak chápána jako celé číslo. K zašifrování M musí odesilatel spočítat. K dešifrování takto zašifrované zprávy příjemce spočítá. Opravdu, kde poslední kongruence plyne z Eulerovy věty. Definujeme RSA funkci jako zobrazení. Je li dáno d, je funkce snadno invertovatelná pomocí předchozího. Často se o d mluví jako o zadních dveřích umožňujících inverzi RSA funkce. Budeme se zabývat invertováním RSA funkce bez znalosti, tomu se také říká zlomení RSA. Přesněji, je li daná trojice,,, ptáme se, jak obtížné je vypočítat e tou odmocninu C modulo, když samotná faktorizace N je neznámá. Protože je konečná množina, jeden možný přístup je prohledání všech jejich prvků a hledání správného M. To vede na algoritmus s časovou náročností řádu N, přesněji exponenciální v délce vstupu. Zajímají nás hlavně postupy s výrazně nižší výpočetní náročností, konkrétně řádu, kde a c je nějaká malá konstanta. Takové algoritmy nazvěme efektivní. 4

6 Studujeme hlavně RSA funkci, na rozdíl od RSA kryptosystému. Obtížnost invertování RSA funkce na náhodných vstupech říká, že s danou trojicí,, útočník nedokáže snadno získat otevřený text M odpovídající C. Na druhou stranu kryptosystém musí odolat i důmyslnějším útokům. Je li dáno,,, mělo by být obtížné získat jakoukoliv informaci o. 1.1 Faktorizace První útok na veřejný klíč RSA zvažoval faktorizaci modulu. Pokud útočník zná faktorizaci modulu, může snadno zrekonstruovat 1 1, ze kterého již snadno vypočítá pomocí rozšířeného Euklidova algoritmu. Faktorizaci modulu se také říká útok hrubou silou. I když se faktorizační algoritmy stále vyvíjejí, současný stav je daleko od skutečné hrozby pro bezpečnost samotné šifry RSA, pokud je správně implementována a užita. I když je prvočíselný rozklad jistě zajímavý problém, není cílem tohoto článku se jím zabývat. Cílem je utvořit přehled některých útoků, které dešifrují zprávy bez přímé faktorizace modulu. I přesto je ale dobré zmínit, že určité množiny RSA modulů mohou být faktorizovány snadno například pokud 1 je součinem faktorů menších než B, pak N lze faktorizovat v čase menším, než operací. Některé implementace už proto přímo odmítají prvočísla p, pro která je 1 součinem malých prvočísel. Jak je uvedeno výše, existuje li efektivní faktorizační algoritmus, pak není RSA bezpečnou šifrou. Opak je ovšem stále otevřený problém: je nutné faktorizovat pro efektivní výpočet e té odmocniny modulo? Neboli: je prolomení RSA ekvivalentní faktorizaci? Tvrzení: Nechť, je veřejný klíč. Znalost privátního exponentu d je (efektivně) ekvivalentní znalosti faktorizace modulu. Důkaz: Faktorizace dává okamžitě 1 1 a ze znalosti e se snadno dopočítá. Naopak známe li d, spočtěme 1. Z definice e a d plyne, že k je násobek. Protože je sudé, je 2, kde r je liché a 1. Pak platí 1 pro každé a tedy je odmocnina z jedné modulo N. Z čínské věty o zbytku pak plyne, že jednička má čtyři různé odmocniny modulo. Dvě z nich jsou 1. Druhé dvě, kde splňuje vztah 1 1. Užitím těchto se již snadno získá faktorizace spočítáním 1,. Pokud je g zvoleno náhodně (přes pak s pravděpodobností alespoň ½ je jeden z členů posloupnosti,,,, druhá odmocnina z jedné, která odhaluje faktorizaci. Všechny členy této posloupnosti lze efektivně vypočítat v čase kde. 5

7 2. Jednoduché útoky Nejdříve popíšeme několik jednoduchých útoků, které ilustrují neopatrné užití šifrování RSA. 2.1 Společný Modul Pro usnadnění práce a ušetření výpočetního času by někoho mohlo napadnout užít pro více uživatelů totožný modul a pomocí důvěryhodné autority mezi uživatele rozdělit pouze různé klíčové páry,, ze kterých si každý uživatel i vytvoří vlastní veřejný klíč, a soukromý klíč,. Na první pohled vše funguje, jak má šifrový text určený uživateli 1 nedokáže žádný jiný uživatel rozluštit, protože nevlastní,. To ale není pravda, výsledný systém je (utajením) ekvivalentní užití totožného klíčového páru pro všechny své uživatele. Pomocí předchozího tvrzení totiž libovolný uživatel i dokáže pomocí svého klíčového páru, faktorizovat společný modul. Po obdržení faktorizace mu již nic nebrání v dopočítání všech klíčových dvojic, konkrétně privátních klíčů, odpovídajících veřejným klíčům, pro všechny. 2.2 Zaslepování Nechť, je privátní klíč a, je odpovídající klíč veřejný. Předpokládejme, že útočník chce získat podpis zprávy. Právoplatný uživatel může odmítnout zprávu M podepsat, ale útočník může užít následující trik: vybere, ke kterému zná jeho inverzní prvek, a zvolí. Poté požádá uživatele o podpis zprávy. Uživatel zprávu, která se mu pravděpodobně jeví neškodná, už nemusí odmítnout podepsat a vrátí útočníkovi podpis. Ale připomeňme, že, pak útočník jednoduše spočítá a obdrží tím podpis S původní zprávy M. Opravdu Tento postup umožňuje útočníkovi získat platný podpis libovolné zprávy požádáním o podpis zaslepené zprávy, která se podepisovateli může jevit jako náhodná. 6

8 2.3 Dvojí užití Pro usnadnění výpočtů by se mohlo zdát výhodné užít totožný klíčový pár jak pro šifrování zpráv, tak pro jejich podepisování. Toto ovšem útočníkovi, kterému se podaří zachytit šifrový text, umožňuje takřka bez námahy získat jemu odpovídající otevřený text M. Pomocí postupu z předchozího odstavce podstrčí nevědomému uživateli k podpisu zaslepenou zprávu a obdrží podpis, ze kterého již snadno vypočte. 2.4 Útok na krátké zprávy Pokud platí, že, je zjevné, že lze obdržet zprávu prostým odmocněním šifrového textu na přirozených číslech. I pro některé o málo větší případy je metoda zkoušení odmocňování možná, pro lze prostým testováním (pro 0,1, ) na přirozených číslech získat původní zprávu, pokud byla vůči modulu výrazně kratší. Tento postřeh ilustruje potřebu doplňování zprávy na dostatečnou délku ještě před použitím vlastního šifrování. 2.5 Útok násobným šifrováním Násobné šifrovaní, neboli opakované umocňování šifrového textu na veřejný exponent, by mohlo v některých vzácných případech umožnit dešifrování. Zvolme nejmenší celé číslo takové, že 1. Pak protože, bude platit. Tohle lze považovat za zvláštní verzi faktorizace, protože lze vzít a použít postup popsaný v důkazu tvrzení v odstavci 1.1. Takovýto útok je reálný pouze za předpokladu, že výše zmíněné je malé, k čemuž ale v běžném užití RSA nedochází. Uvádíme tenhle teoretický útok jen jako zajímavý postřeh ilustrující vlastnosti RSA. 3. Malý soukromý exponent Pro urychlení dešifrovací operace (nebo operace generování podpisu) se může zdát výhodné užít malou hodnotu soukromého klíče. Bohužel útok od M. Wienera ukazuje, že příliš malý soukromý exponent ústí v úplné zničení systému. Tvrzení (M. Wiener) Nechť, 2. Nechť. Pomocí, s tím, že 1, dokáže útočník efektivně získat. 7

9 Důkaz: Důkaz je založen na aproximacích pomocí řetězových zlomků. Protože 1, existuje k takové celé, že 1. Tudíž 1 A tedy je aproximací. I když útočník nezná hodnotu, může užít k jejímu odhadu. Protože a 13, máme 3. Užitím N na místo, obdržíme Dále 1 a protože, je zřejmě, z čehož dostáváme. To je klasický aproximační vztah, počet podílů s aproximujících je omezen. Tedy stačí spočítat prvních členů rozvoje v řetězový zlomek. Jeden z nich bude roven. A protože 1 a, 1, je tedy zlomek v základním (zkráceném) tvaru a jeho jmenovatel je pak hledaným soukromým exponentem. M. Wiener dále navrhl postup na testování členů posloupnosti rozvoje. Nechť je člen rozvoje v řetězové zlomky, Pokud je to správný odhad pro, pak A lze tedy spočítat,. Pokud jsou takto obdržená čísla, čísla přirozená, pak člen je správný odhad pro. Samozřejmě znalost, dává triviálně i faktory. Jinou možností odhalení správného členu je také prosté testování pomocí pro náhodně volené M. Příklad (převzatý z [5]) Nechť , , 561. Rozvoj v řetězový zlomek je pak 0; 2,4,1,1,4,1,2,31,21,13,1,16,3,1,114,10,1,4,5,1,2 a tedy posloupnost členů rozvoje začíná následovně 0,,,,,,,,, 8

10 Užitím pokusného hledání pomocí 2 2 zjistíme, že d = 313. Pro pomocí předchozího spočítáme , , což už přímo vede na , Na tomto příkladě je vidět, že by možná nemuselo být nutné testovat všechny členy rozvoje, jak dokazuje A. Dujella v [5], kde také navrhuje vlastní variantu Wienerova útoku. D. Boneh a G. Durfee v [6] dále ukázali, že Wienerova mez pro nemusí být konečná a navrhli svou verzi útoku až pro. pomocí Coppersmithovy techniky hledání malých kořenů modulárních polynomiálních rovnic o dvou proměnných. Podobný přístup použili i J. Blömer a A. May [3 a 7] pro.. Oba tyto navržené útoky jsou zatím pouze heuristické, autoři poznamenávají nutnost vytvoření korektních důkazů. 4. Malý veřejný exponent K ukrácení šifrovacího nebo ověřovacího výpočetního času je obvyklé užívat malého veřejného exponentu. Nejmenší možná hodnota pro je 3, ale pro překonání některých útoků (viz např. 4.2) je doporučována hodnota Při použití tohoto vyžaduje procedura ověření podpisu jen 17 násobení oproti zhruba 100, při použití náhodného [1]. Na rozdíl od předchozího, útoky použitelné v případě malého jsou svou nebezpečností daleko od úplného prolomení systému a jejich užitečnost tkví spíše ve zjednodušování postupů pro útoků jiné. 4.1 Coppersmithova věta Jedny z nejsilnějších útoků na RSA s malým veřejným exponentem jsou zakládány na větě, jejímž autorem je D. Coppersmith. Věta (D. Coppersmith) Nechť je přirozené číslo, je monický polynom stupně. Nechť pro 0. Pak, při daném, může útočník efektivně nalézt všechna přirozená čísla splňující 0. Výpočetní čas je omezen časem běhu algoritmu na mříži dimenze, kde min,. Tato věta vede na algoritmus pro efektivní hledání všech kořenů modulo N takových, které jsou menší než. Při zmenšujícím se X klesá i časová náročnost algoritmu. Náznak důkazu viz [1]. 9

11 4.2 Hastadův útok Předpokládejme, že Bob chce poslat zašifrovanou zprávu více ruzným příjemcům,,. Každý z příjemců má svůj vlastní RSA klíč,. Předpokládáme, že je menší než všechny. Bob tedy může jednoduše zašifrovat zprávu pomocí daných veřejných klíčů a rozeslat šifrové texty odpovídajícím příjemcům. Předpokládáme dále, že útočník může snadno zachytit zprávy mezi Bobem a příjemci a získat tak všechny šifrové texty. Pro jednoduchost zápisu předpokládejme, že všechny veřejné exponenty jsou rovny 3. Potom už může útočník snadno získat M, pokud 3, následovně: Útočník zná,,, kde,,. Můžeme v bezpečí předpokládat, že gcd, = 1 pro všechna. (V případě, že by tomu tak nebylo, byla by odhalena faktorizace alespoň jednoho z modulů a tím i původní zpráva triviálně.) Aplikujeme li tedy čínskou větu o zbytku na,,, dostaneme splňující. Ale protože pro všechna, dostáváme a tedy platí i v přirozených číslech. Útočník tedy může získat původní zprávu vypočítáním prosté třetí odmocniny. Obecněji, pokud jsou veškeré veřejné exponenty rovné, může útočník získat, jakmile zachytí zpráv pro. Z toho také plyne, že útok je rozumný, jen pokud je použitý relativně malý veřejný exponent. Hastad popsal mnohem silnější verzi útoku, uvažme jednoduchou obranu proti předchozímu. Raději než rozesílání šifrované verze zprávy, Bob může doplnit zprávu ještě před šifrováním, na příklad, pokud je délky bitů, Bob může poslat 2 příjemci. Protože útočník takto zachytí šifrované verze různých zpráv, nemůže použít výše popsaný útok. Bohužel Hastad ukázal, že takovéto lineární doplňování je nedostatečné. Přesněji dokázal, že užití jakéhokoliv pevně daného polynomu na zprávu před zašifrováním není dostatečnou obranou. Předpokládejme, že pro každého příjemce,, má Bob dán pevný polynom. Pro odeslání zprávy zašle Bob zašifrované příjemci. Odposloucháváním komunikace útočník získá pro 1,,. Hastad ukázal, že pokud je zapojeno dostatečné množství příjemců, útočník má možnost získat původní zprávu ze získaných. Věta (Hastad): Nechť,, jsou po dvou vzájemně nesoudělná přirozená čísla a. Nechť je polynomů stupně nejvýše. Předpokládejme, že existuje jediné splňující 0 pro všechna 1,,. Za předpokladu, že, lze efektivně nalézt při znalosti,. Důkaz: Nechť. Můžeme bez ztráty na obecnosti předpokládat, že všechny jsou monické. (Pokud, pro nějaké, je vedoucí koeficient neinvertovatelný v, pak je 10

12 odhalena i faktorizace modulu.) Násobením každého odpovídající mocninou, lze bez ztráty na obecnosti také předpokládat, že mají všechny stejný stupeň. Zkonstruujeme polynom, kde 1 pokud a 0 pokud. Pak musí být monický, protože je monický modulo všechna. Jeho stupeň je. Dále víme, že 0. Věta pak plyne z Coppersmithovy věty v odstavci 4.1, protože / /. Tato věta ukazuje, že systém rovnic o jedné proměnné modulo (vzájemně nesoudělná) složená čísla může být efektivně vyřešen, pokud je k dispozici dostatečné množství rovnic. Zvolením vidíme, že útočník může získat z daných šifrových textů, pokud počet stran je alespoň, kde max přes všechna 1,,. Speciálně, pokud jsou všechna rovna a odesilatel pošle lineárně závislé zprávy, pak útočník může získat původní zprávu, pokud. Pro úplnost uveďme, že pro obranu proti výše popsanému útoku musí být použito náhodné doplnění zprávy namísto pevného. 4.3 Franklin Reiterův útok na zprávy v relaci. Franklin a Reiter nalezli útok pro situaci, kdy Bob zašle Alici zprávy v relaci při použití stejného modulu. Nechť, je veřejný klíč Alice. Předpokládejme, že, jsou dvě různé zprávy splňující pro nějaké veřejně známý polynom N x. K odeslání Alici může Bob jednoduše zašifrovat zamýšlené zprávy a odeslat,. Ukážeme, že se znalostí, může útočník snadno získat,. I když útok funguje pro libovolné malé, následující tvrzení formulujeme pro 3 pro zjednodušení důkazu. Tvrzení (Franklin, Reiter): Nechť 3 a, je veřejný RSA klíč. Nechť dále splňující pro nějaký lineární polynom, 0. Pak, se znalostí,,,,, může útočník získat, v čase nejvýše kvadratickém v log. Důkaz: Protože, víme, že je kořenem polynomu. Podobně je také kořenem. Lineární člen tedy dělí oba tyto polynomy. Pak tedy může útočník použít euklidovský algoritmus na spočítání největšího společného dělitele,. (Pokud algoritmus v libovolném kroku selže, je okamžitě odhalena faktorizace modulu.) Pokud bude tento společný dělitel lineární, nalezli jsme ihned. Počítání největšího společného násobku lze provést v čase kvadratickém v, log. 11

13 Ukážeme, že v případě 3 musí být nalezený největší společný dělitel lineární. Polynom se rozkládá modulo a na lineární faktor a neredukovatelný kvadratický faktor (gcd, 1 a tedy má jen jeden kořen v ). Protože nemůže dělit, největší společný dělitel musí být lineární. Pro 3 je zmiňovaný největší společný dělitel skoro vždy také lineární, až na výjimečné případy, a, kde je možné získat nelineární společný dělitel v tom případě útok samozřejmě selhává. Pro 3 má útok časovou náročnost kvadratickou v. Z toho plyne, že může být použit jen, pokud je použit malý veřejný exponent. Pro velká je omezující počítání největšího společného dělitele. 4.4 Coppersmithův útok na krátké doplnění Franklin Reiterův útok se může zdát trochu umělý, protože proč by Bob měl posílat Alici zašifrované zprávy v relaci. Coppersmith zesílil jeho útok a poukázal tím na důležitý důsledek pro doplňování zpráv. Naivní náhodný doplňovací algoritmus by mohl doplňovat otevřený text přidáním několika náhodných bitů na jeden z konců zprávy. Následující útok ukazuje nebezpečí takového jednoduchého řešení. Předpokládejme, že Bob zašle Alici zašifrovanou, takto doplněnou zprávu. Útočník zachytí tento přenos a zabraní Alici v převzetí této zprávy. Bob po nějakém čase zjistí, že Alice nereaguje a rozhodne se zaslat zprávu znovu. Opět náhodně doplní a pošle výsledný šifrový text, který útočník také zachytí. V tuto chvíli má útočník dva šifrové texty odpovídající zašifrování totožné zprávy při použití dvou různých náhodných doplnění. Následující věta ukazuje, že i když nezná samotné doplnění, může útočník získat původní otevřený text zprávy. Tvrzení: Nechť, je veřejný RSA klíč, kde je bitů dlouhé. Zvolme /. Nechť dále je zpráva délky nejvýše bitů. Definujme 2 a 2, kde, jsou různá celá čísla splňující 0, 2. Pokud zná útočník, a šifrové texty, odpovídající zprávám, (ale nezná, ), může efektivně získat. Důkaz: Definujme, a,. Víme, že pro, mají tyto polynomy společný kořen. Jinými slovy je kořen resultantu,. Stupeň je nejvýše. Dále 2 /. A tedy je malý kořen modulo a útočník ho může efektivně najít použitím Coppersmithovy věty z odstavce 4.1. Ve chvíli, kdy známe, může být pro nalezení (a tedy přímo i ) použit Franklin Reiterův útok z odstavce 4.3. Když je tedy 3, může být útok použit, pokud je délka použitého doplnění kratší, než jedna devítina zprávy. Poznamenejme, že pro doporučovanou hodnotu je útok nepoužitelný pro standardní délky modulů. 12

14 4.5 Částečné odhalení klíče Nechť, je privátní RSA klíč. Předpokládejme, že je útočník nějakým způsobem schopný získat část bitů, řekněme čtvrtinu. Může za pomoci takové informace rekonstruovat celé? Překvapivě, odpověď je kladná, pokud je odpovídající veřejný klíč dostatečně malý. Boneh, Durfee a Frankel ukázali, že pokud je, je možné rekonstruovat celé ze znalosti zlomky jeho bitů. Toto ilustruje důležitost ochrany celého privátního klíče. Věta (Boneh, Durfee, Frankel): Nechť, je privátní RSA klíč a je dlouhé bitů. Máme li /4 nejméně významných bitů, můžeme rekonstruovat celé v čase lineárním v log. Důkaz plyne z následujícího tvrzení. Tvrzení (Coppersmith) Nechť je RSA modul délky bitů. Pak se znalostí /4 nejméně významných bitů nebo /4 nejvýznamnějších bitů lze efektivně faktorizovat modul. Věta pak již přímo plyne z Coppersmithova tvrzení, protože z definice, existuje celé číslo takové, že 1 1. Protože musí 0. Redukováním rovnice modulo 2 / a zvolením / dostáváme 1 2 /. A protože známe /4 nejméně významných bitů, známe také hodnotu 2 /. Máme tedy rovnici pro neznámé,. Pro každou z možných hodnot, vyřešíme kvadratickou rovnici v proměnné a získáme tím kandidáty na hodnoty 2 /. Pro každého takového kandidáta již stačí provést algoritmus z Coppersmithova tvrzení 1 8 a pokusit se faktorizovat. Lze ukázat, že celkové množství kandidátů na hodnotu 2 / je nejvýše log a tedy po nejvýše log pokusech obdržíme faktorizaci. Tato věta je také známá jako útok na částečné odhalení klíče, existují podobné útoky i pro větší hodnoty, pokud. V závěru tohoto odstavce ukažme, že pokud je veřejný exponent malý, RSA systém odhaluje polovinu nejvýznamnějších bitů odpovídajícího privátního klíče. Abychom to ukázali, uvažme znovu rovnici 1 1 pro nějaké celé číslo 0. Se znalostí může útočník snadno spočítat 1/. Tedy /3 / 3 a je dobrá aproximace. Tento odhad ukazuje, že, pro většinu, je polovina nejvýznamnějších bitů totožná s nejvýznamnějšími bity. A protože existuje jen možných hodnot, útočník může zkonstruovat malou množinu velikosti takovou, že jeden z jejích prvků je roven polovině nejvýznamnějších bitů. V případě, že 3 lze ukázat, že vždy 2 a tedy systém úplně odhaluje polovinu nejvýznamnějších bitů privátního exponentu. 13

15 5. Útoky na implementace/postranní kanály V poslední kapitole se zaměříme na zcela jiné druhy útoků, spíše než na útočení na vlastní strukturu RSA funkce, se budeme zabývat útoky na její implementace. Takových implementací je mnoho a vlastní využití samotné šifry RSA se v každé z nich výrazně liší, není naším cílem poukázat na veškerá možná úskalí, spíše ilustrovat šíři možných napadení. Mnohé takové útoky využívají fyzická specifika použitých kryptografických prostředků, od znalosti a ovlivňování výpočetní síly karet, přes měření spotřeby elektrické energie či vyzářeného tepla až po napadání samotných přístrojů. Vycházíme z následujícího tvrzení (ve zjednodušené formulaci), které se také označuje jako tvrzení o individuálních bitech RSA. Tvrzení [11, 12]: Nechť je veřejný modul RSA a privátní exponent. Označme orákulum poskytující nezanedbatelnou informaci o nějakém individuálním bitu hodnoty pro libovolné. Pokud takové existuje, existuje pak polynomiálně složitý pravděpodobnostní algoritmus, který pro libovolný šifrový text vrací hodnotu otevřeného textu. Toto tvrzení bylo (a stále je) paradoxně používáno jako doklad o bezpečnostních vlastnostech RSA, jeho negací totiž získáme výrok, který říká, že nedokážeme li rozluštit šifrový text, nedokážeme získat ani informaci o jednotlivých bitech původního otevřeného textu, neboli že celý text je zašifrováním chráněn stejně, jako jeho jednotlivé bity. 5.1 Poznámka o složitosti ([12]) Z uvedeného tvrzení sice plyne, že pro útok na RSA lze využívat postranní informaci o jakémkoliv bitu hodnoty otevřeného textu, ale výrazné rozdíly jsou v efektivitě konkrétních útočných postupů. V tomto ohledu nejlepší možné orákulum je to, které poskytuje informaci o nejméně významném bitu zprávy (dále ). Označme takové orákulum a předpokládejme, že poskytuje nějakou nezanedbatelnou informaci o nejméně významném bitu. Tedy ~ pro a 2. Ukažme, že pokud je toto orákulum bezchybné, tedy pokud 2, potom lze libovolný šifrový text luštit se složitostí řádově počtu volání orákula. Postup luštění je založen na prohledávání metodou půlení intervalů. Připomeňme, jak se chová operace modulárního násobení hodnoty číslem 2. Platí, že ( 2 2, neboli pokud je sudé, jde o klasické dělení 2, pokud je liché, jde o posun o a dělení 2. Nyní položme a voláním získejme hodnotu pro. Předpokládejme, že 14

16 , kde, jsou nějaká celá čísla reprezentující odhad neznámé hodnoty. Bez jakékoliv další informace o hledaném textu položme 0,1. Podívejme se nyní, v jakých intervalech se pohybuje hodnota 2. Je vidět, že platí pro 2 a 2 a tedy že hodnota leží buď v intervalu /2, /2 nebo v intervalu 2, 2 v závislosti na. Součet velikostí obou intervalů je roven velikosti původního intervalu,, takže bez znalosti bychom tímto krokem žádného zpřesnění odhadu hledané hodnoty nedosáhli. Díky orákulu ale známe hodnotu, takže lze pokračovat dál. Zpráva pro nás sice stále zůstává neznámou, ale velikost intervalu možných kandidátů jsme oproti snížili na polovinu. Z vlastností šifry RSA také víme, že zpráva odpovídá šifrové zprávě 2, kde je veřejný exponent RSA. Pokračujme tedy jednoduše tím, že celý postup rekurzivně opakujeme s nastavením,,,. Postupně tak po opakováních uvedeného postupu, kde 1, dospějeme do stavu, kdy nám zbude interval obsahující jediné číslo. Tím bude hodnota 2, ze které již snadno vypočteme hledaný otevřený text Poznámka o orákulech Většina útoků pomocí postranních kanálů se v jádru skládá ze dvou pomyslných kroků, prvního objevit slabinu (ať již teoretickou, nebo čistě fyzikální) a přetvořit ji do orákula natolik užitečného, aby umožnila krok druhý vlastní útok za pomocí nějaké postranní informace. Teoreticky lze tyto dva kroky oddělit a zkoumat první jen za účelem ilustrace různých možných informačních úniků bez znalosti či dovednosti k němu doplnit krok druhý, nebo naopak konstruovat čistě teoretický útok za předpokladu, že již nějaké vhodné orákulum máme k dispozici, aniž bychom se zabývali jeho vlastní konstrukcí. Současný výzkum zná bezpočet orákul založených od časování výpočtu, měření odběru elektrické energie přes vyzářené teplo při klíčových operacích až po těžko popsatelné postupy využívající neuvěřitelnou zručnost analytiků. Není možné, ani zamýšlené, obsáhnout všechny tyto útoky, protože jejich množství roste takřka exponenciálně s množstvím aplikací RSA a jejich modifikací. 5.2 Časovací útoky Uvažme smartkartu, která slouží jako úložiště soukromého RSA klíče. Taková karta bývá samozřejmě odolná vůči vnějším zásahům v tom smyslu, že útočník by neměl být schopen pomocí zkoumání či pozměňování jejích součástí získat informace o uloženém klíči. Zajímavý útok od P. Kochera ukazuje, že pomocí přesného měření času, který karta potřebuje na vykonání požadovaných operací (dešifrování nebo podpis), lze efektivně odhalit privátní exponent. 15

17 Ukážeme, jak útok funguje na jednoduché implementaci RSA využívající algoritmus opakovaného umocňování. Nechť je bitový zápis. Tedy 2, kde 0,1 Algoritmus opakovaného umocňování počítá za použití nejvýše 2 modulárních násobení. Je založen na poznatku, že. Algoritmus pracuje následovně: Zvol a 1. Pro 0,, vykonej: (1) Pokud 1, pak, (2) Po dokončení má hodnotu. Proměnná probíhá veškeré hodnoty pro 0,,. Proměnná sbírá odpovídající mocniny obsažené v cílovém. K samotnému útoku útočník požádá katru, aby generovala podpisy na velkém množství náhodných zpráv,, a měří, čas, který kartě zabere generování každého takového podpisu. Útok po jednom získává bity začínajíc nejméně významným bitem. Víme, že je liché, a tedy 1. Uvažme druhou iteraci zmíněného algoritmu. Na počátku máme a. Pokud je 1, karta počítá součin, pokud 0, neprovádí krok (1). Nechť je čas, který kartě zabere počítání. Jednotlivá se od sebe navzájem samozřejmě liší, protože čas na výpočet přímo závisí na hodnotě (jednoduchý algoritmus modulárního dělení zabírá různý čas v závislosti na čísle, které dělí). Útočník měří ještě před samotným prováděním útoku, k tomu mu stačí znát fyzická specifika použité karty. P. Kocher [9] ukázal, že pokud 1, dva soubory veličin { a jsou korelované. Na příklad, pokud pro nějaké je výrazně větší než předpokládáme, pak je pravděpodobné, že bude také výrazně větší, než předpoklad. Na druhou stranu, pokud je 0, chovají se { a jako dva vzájemně nezávisle soubory náhodných veličin. Měřením korelace tedy může útočník určit, jestli 0 nebo 1. Bude li pokračovat dál, nic mu nebrání v použití stejného postupu při určení,, Poznamenejme také, že pokud je použit malý veřejný exponent, stačí Kocherův útok použít jen do odhalení čtvrtiny bitů díky útokům z předchozích kapitol. V zásadě jsou dva možné způsoby ochrany před výše popsaným útokem, nejjednodušší přístup je přidání odpovídající prodlevy při modulárním umocňování tak, aby vždy zabralo totožný čas. Takové řešení ovšem částečně popírá účel užití tohoto umocňování jako prostředku pro zkrácení výpočetního času. Druhý způsob navržený A. Rivestem je založen na zaslepování. Ještě před dešifrováním (podpisem) si karta vybere náhodné 16

18 a spočítá. Pak užije k podpisu a obdrží. Na konec zvolí. Takovým postupem používá karta na náhodnou zprávu, kterou útočník nezná, výsledkem je nemožnost užití popsaného útoku. P. Kocher dále objevil útok využívající podobný přístup nazývaný analýza odběru energie. Ukázal, že použitím přesného měření spotřeby karty při generování podpisů lze často snadno získat privátní klíč. Jak se ukázalo, při vícenásobném násobení je spotřeba karty měřitelně vyšší, než při jiných operacích. Měřením délky úseků se zvýšeným odběrem energie lze tedy odhadovat, jestli se v dané iteraci provedlo plné násobení nebo ne, jinými slovy určovat hodnoty jednotlivých bitů. D. Boneh a D.Brumley [10] ukázali, že časovací útoky představují reálnou hrozbu pro obecné softwarové provedení bezpečnostních aplikací. Do té chvíle se předpokládalo, že omezení plynoucí přímo z podstaty časovacích útoků (s ohledem na nutnost přesného měření časových intervalů a vyhodnocování malých diferencí asi 1 milisekunda a méně) znemožňuje jejich použití v jakémkoli reálném prostředí a omezuje je výhradně pro použití proti čipovým kartám a podobným zařízením. Stojí za zmínku, že obrana proti těmto útokům je relativně snadná [13] a byla známa již před vynalezením samotných útoků, ovšem až zmíněný článek [10] přiměl většinu aplikací ji využívat. Jde o prosté zaslepení dešifrované zprávy (v podepisovací operaci) před jejím vlastním mocněním na privátní exponent pomocí náhodné hodnoty. Většina současných časovacích útoků totiž vychází z toho, že je k dispozici nejen přesná informace o době trvání výpočtu podpisu, ale že útočník taktéž zná nebo může sám volit vstupní hodnotu pro podepsání. Pokud se pomocí zaslepení tato možnost odebere, je šance úspěchu takových útoku minimální. 5.3 Náhodné chyby Implementace dešifrovací a podepisovací operace pomocí RSA často využívají čínskou větu o zbytcích (dále také ČVZ) k urychlení výpočtu. Namísto práce, si podepisující strana (Bob) vypočítá podpisy a a ty pak zkombinuje do výsledného podpisu za využití čínské věty o zbytcích. Přesněji Bob nejprve spočítá a, kde 1 a 1. Tímto obdrží podpis jako, kde 1, 0, 0 1. Čas běhu posledního kroku výpočtu podle ČVZ je zanedbatelný v porovnání se dvěma umocňováními. Poznamenejme, že, jsou zhruba poloviční délky než a protože jednoduchá implementace násobení má kvadratickou časovou náročnost, násobení je tedy přibližně čtyřikrát rychlejší, než by bylo při provádění. Dále také je poloviční délky než a tedy výpočet je osmkrát rychlejší, než by byl výpočet. Celkově je tedy podepisovací čas zkrácen přibližně čtyřikrát, což je také důvod, proč tuto metodu používá mnoho aplikací ke zvýšení svého výkonu. 17

19 Boneh, DeMillo a Lipton ukázali, že existuje vnitřní nebezpečí při užívání výše zmíněné metody za pomoci ČVZ. Předpokládejme, že při generování podpisu náhodná chyba způsobí chybný výpočet jedné instrukce. Řekněme, že při kopírování obsahu registru dojde k převrácení hodnoty jednoho bitu. (Může být způsobena jak okolními vlivy tedy i vyvolaná úmyslně, nebo například vzácnou chybou samotného hardwaru.) Ze znalosti takto vzniklého neplatného podpisu může útočník snadno faktorizovat RSA modul. Ukážeme verzi útoku popsanou A. K. Lenstrou. Předpokládejme, že při generování podpisu došlo k právě jedné chybě. Výsledkem je, že právě jeden člen z dvojice, je vypočítán chybně, řekněme, že je správné a chybné. Výsledný podpis je tedy. Jakmile útočník obdrží, ví, že je to chybný podpis, protože. Dále ale víme, že a. A už tedy stačí jen vypočítat největší společný dělitel gcd, k získání netriviálního dělitele modulu. Aby mohl být tento útok použit, musí útočník samozřejmě znát celou podepisovanou zprávu, čímž předpokládáme, že Bob neužívá žádné metody náhodného doplňování před samotným podpisem, které jsou v tomto případě účinnou obranou. Ještě jednodušší obranou je prostá kontrola výstupu před odesláním a zabránění v předání chybných podpisů nebo dvojí počítání téhož podpisu a jeho předání pouze v případě, že se oba výsledky shodují. Takové kontroly jsou velice důležité při užívání urychlujících metod za využití ČVZ. 5.4 Bleichenbacherův útok na PKCS 1 Nechť je bitový RSA modul a je bitová zpráva, kde. Před použitím samotného RSA šifrování je přirozené doplnit zprávu na bitů přidáním náhodných čísel. Starší verze standardu zvaná public key crypthography standard 1 (PKCS 1) tento přístup používala, po doplnění vypadala zpráva následovně: 02 áá 00 í á Výsledná zpráva délky bitů byla přímo šifrována použitím RSA. První blok obsahující 02 je 12 bitů dlouhý a je použit pro označení použitého postupu při doplňování zpráv. Když zprávu formátovanou pomocí PKCS 1 zachytí příjemce (většinou se jedná o automatickou operaci, například v internetovém prohlížeči), dešifruje jí, zkontroluje úvodní blok a ořízne náhodnou část. Některé aplikace ovšem postupují jinak, kontrolují první blok, a pokud není roven 02, odešlou zpět chybovou zprávu indikující chybný formát vstupu. Bleichenbacher ukázal, že tato chybová zpráva může vést ke zničujícím důsledkům, totiž že lze šikovně využít informaci o neplatnosti vstupu k dešifrování libovolného textu. Předpokládejme, že útočník zachytil šifrový text zaslaný Bobovi a chce jej dešifrovat. K použití útoku si zvolí náhodné, vypočítá a zašle jej 18

20 Bobovi. Aplikace zpracovávající vstup na Bobově počítači se pokusí obdrženou zprávu dešifrovat. Buď odpoví chybovou zprávou, nebo neodpoví vůbec (v případě, že bylo ve správném formátu, tedy jeho úvodní blok byl roven 02). Tím tedy útočník zjistí, jestli prvních 16 bitů dešifrované zprávy je nebo není rovných 02. Efektivně tedy získává orákulum, které pro něj testuje, zda prvních 16 bitů dešifrování zprávy je nebo není rovných 02 pro libovolné. Bleichenbacher ukázal, že takové orakulum už stačí k dešifrování. 6. Shrnutí Přes 30 let výzkumu útoků na RSA vedlo k mnohým zajímavým výsledkům, ale doposud nebyl nalezen žádný způsob, jak tuto šifru úplně prolomit. Zmíněné útoky pouze ilustrují netriviálnost použití šifry RSA samotné a nebezpečí při jejím nedokonalém používání. V současnosti lze stále důvěřovat kvalitním implementacím bezpečnostních aplikací využívajícím šifrování pomocí RSA, za předpokladu využití všech doposud známých ochran proti různým útokům a pochopení principů, které za mnohými těmito útoky leží. 7. Seznam Literatury [1] D. Boneh (1999): Twenty years of attacks on the RSA cryptosystem. Notices of the American Mathematical Society (AMS), 46(2): [2] Elaine L. Render (2007): Wiener's Attack on Short Secret Exponents, August 15, [3] Johannes Blömer, Alexander May (2004): A Generalized Wiener Attack on RSA, In Practice and Theory in Public Key Cryptography (PKC 2004), Lecture Notes in Computer Science, vol. 2947, pp. 1 13, Springer Verlag, paderborn.de/cs/agbloemer/forschung/publikationen/keys.pdf [4] R. L. Rivest, B. Kaliski (2002): Encyclopedia of Cryptography and Security, kapitola RSA Problem. Kluwer. RSAProblem.pdf. [5] A. Dujella (2004): Continued fractions and RSA with small secret exponent. Tatra Mt. Math. Publ. 29 (2004), [6] D. Boneh and G. Durfee (2000): Cryptanalysis of RSA with private key d less than.. IEEE Transactions on Information Theory, 46(4): [7] Johannes Blömer, Alexander May (2001): Low Secret Exponent RSA Revisited, CaLC 2001:

21 [8] J. Dyer (2002) Lattice Reduction on Low Exponent RSA, the summer 2002 McCallum Undergraduate Research, [9] Paul C. Kocher (1996): Timing Attacks on Implementations of Diffie Hellman, RSA, DSS, and Other Systems, Proceedings of the 16th Annual International Cryptology Conference on Advances in Cryptology, ISBN: [10] D. Boneh and D. Brumley (2003): Remote timing attacks are practical, Proc. of 12th USENIX Security Symposium, pp. 1 14, 2003 [11] Hastad, J. and Näslund M. (1998): The Security of Individual RSA Bits, in Proc. of FOCS '98, pp , [12] V. Klíma, T. Rosa (2005): Achillova pata RSA, časopis Sdělovací technika 4/2005, strana [13] V. Klíma, T. Rosa (2005): Imunitní trik pro RSA, časopis Sdělovací technika 9/2005, strana

8. RSA, kryptografie s veřejným klíčem. doc. Ing. Róbert Lórencz, CSc.

8. RSA, kryptografie s veřejným klíčem. doc. Ing. Róbert Lórencz, CSc. Bezpečnost 8. RSA, kryptografie s veřejným klíčem doc. Ing. Róbert Lórencz, CSc. České vysoké učení technické v Praze Fakulta informačních technologií Katedra počítačových systémů Příprava studijních programů

Více

Šifrová ochrana informací věk počítačů PS5-2

Šifrová ochrana informací věk počítačů PS5-2 VŠFS; Aplikovaná informatika; SW systémy 2005/2006 1 Bezpečnost informací BI Ing. Jindřich Kodl, CSc. Šifrová ochrana informací věk počítačů PS5-2 VŠFS; Aplikovaná informatika; SW systémy 2005/2006 2 Osnova

Více

Čínská věta o zbytcích RSA

Čínská věta o zbytcích RSA Čínská věta o zbytcích RSA Matematické algoritmy (11MAG) Jan Přikryl Ústav aplikované matematiky ČVUT v Praze, Fakulta dopravní 5. přednáška 11MAG pondělí 10. listopadu 2014 verze: 2014-11-10 11:20 Obsah

Více

Šifrová ochrana informací věk počítačů PS5-2

Šifrová ochrana informací věk počítačů PS5-2 Bezpečnost informací BI Ing. Jindřich Kodl, CSc. Šifrová ochrana informací věk počítačů PS5-2 1 Osnova šifrová ochrana využívající výpočetní techniku např. Feistelova šifra; symetrické a asymetrické šifry;

Více

RSA. Matematické algoritmy (11MAG) Jan Přikryl. Ústav aplikované matematiky ČVUT v Praze, Fakulta dopravní. verze: :01

RSA. Matematické algoritmy (11MAG) Jan Přikryl. Ústav aplikované matematiky ČVUT v Praze, Fakulta dopravní. verze: :01 Čínská věta o zbytcích Mocnění Eulerova funkce Šifrování Závěr Čínská věta o zbytcích RSA Matematické algoritmy (11MAG) Ústav aplikované matematiky ČVUT v Praze, Fakulta dopravní 4. přednáška 11MAG ponděĺı

Více

RSA. Matematické algoritmy (11MA) Miroslav Vlček, Jan Přikryl. Ústav aplikované matematiky ČVUT v Praze, Fakulta dopravní. čtvrtek 21.

RSA. Matematické algoritmy (11MA) Miroslav Vlček, Jan Přikryl. Ústav aplikované matematiky ČVUT v Praze, Fakulta dopravní. čtvrtek 21. Čínská věta o zbytcích Šifrování Závěr Čínská věta o zbytcích RSA Matematické algoritmy (11MA) Ústav aplikované matematiky ČVUT v Praze, Fakulta dopravní 4. přednáška 11MA čtvrtek 21. října 2010 verze:

Více

Asymetrická kryptografie

Asymetrická kryptografie PEF MZLU v Brně 12. listopadu 2007 Problém výměny klíčů Problém výměny klíčů mezi odesílatelem a příjemcem zprávy trápil kryptografy po několik století. Problém spočívá ve výměně tajné informace tak, aby

Více

Protokol RSA. Tvorba klíčů a provoz protokolu Bezpečnost a korektnost protokolu Jednoduché útoky na provoz RSA Další kryptosystémy

Protokol RSA. Tvorba klíčů a provoz protokolu Bezpečnost a korektnost protokolu Jednoduché útoky na provoz RSA Další kryptosystémy Protokol RSA Jiří Velebil: X01DML 3. prosince 2010: Protokol RSA 1/18 Protokol RSA Autoři: Ronald Rivest, Adi Shamir a Leonard Adleman. a Publikováno: R. L. Rivest, A. Shamir a L. Adleman, A Method for

Více

Jak funguje asymetrické šifrování?

Jak funguje asymetrické šifrování? Jak funguje asymetrické šifrování? Petr Vodstrčil petr.vodstrcil@vsb.cz Katedra aplikované matematiky, Fakulta elektrotechniky a informatiky, Vysoká škola báňská Technická univerzita Ostrava Petr Vodstrčil

Více

Pokročilá kryptologie

Pokročilá kryptologie Pokročilá kryptologie RSA doc. Ing. Róbert Lórencz, CSc. České vysoké učení technické v Praze Fakulta informačních technologií Katedra počítačových systémů Příprava studijních programů Informatika pro

Více

Asymetrické šifry. Pavla Henzlová 28.3.2011. FJFI ČVUT v Praze. Pavla Henzlová (FJFI ČVUT v Praze) Asymetrické šifry 28.3.

Asymetrické šifry. Pavla Henzlová 28.3.2011. FJFI ČVUT v Praze. Pavla Henzlová (FJFI ČVUT v Praze) Asymetrické šifry 28.3. Asymetrické šifry Pavla Henzlová FJFI ČVUT v Praze 28.3.2011 Pavla Henzlová (FJFI ČVUT v Praze) Asymetrické šifry 28.3.2011 1 / 16 Obsah 1 Asymetrická kryptografie 2 Diskrétní logaritmus 3 Baby step -

Více

Asymetrická kryptografie a elektronický podpis. Ing. Dominik Breitenbacher Mgr. Radim Janča

Asymetrická kryptografie a elektronický podpis. Ing. Dominik Breitenbacher Mgr. Radim Janča Asymetrická kryptografie a elektronický podpis Ing. Dominik Breitenbacher ibreiten@fit.vutbr.cz Mgr. Radim Janča ijanca@fit.vutbr.cz Obsah cvičení Asymetrická, symetrická a hybridní kryptografie Kryptoanalýza

Více

ElGamal, Diffie-Hellman

ElGamal, Diffie-Hellman Asymetrické šifrování 22. dubna 2010 Prezentace do předmětu UKRY Osnova 1 Diskrétní logaritmus 2 ElGamal 3 Diffie-Hellman Osnova 1 Diskrétní logaritmus 2 ElGamal 3 Diffie-Hellman Osnova 1 Diskrétní logaritmus

Více

Obsah. Protokol RSA. Protokol RSA Bezpečnost protokolu RSA. 5. a 6. přednáška z kryptografie

Obsah. Protokol RSA. Protokol RSA Bezpečnost protokolu RSA. 5. a 6. přednáška z kryptografie Obsah RSA šifrování 5. a 6. přednáška z kryptografie 1 RSA šifrování 2 Útoky na protokol RSA Útoky při sdíleném modulu nebo exponentu Útoky při malém soukromém exponentu Implementační útoky 3 Digitální

Více

5. a 6. přednáška z kryptografie

5. a 6. přednáška z kryptografie RSA šifrování 5. a 6. přednáška z kryptografie Alena Gollová RSA širování 1/33 Obsah 1 RSA šifrování 2 Útoky při sdíleném modulu nebo exponentu Útoky při malém soukromém exponentu Implementační útoky 3

Více

KRYPTOGRAFIE VER EJNE HO KLI Č E

KRYPTOGRAFIE VER EJNE HO KLI Č E KRYPTOGRAFIE VER EJNE HO KLI Č E ÚVOD Patricie Vyzinová Jako téma jsem si vybrala asymetrickou kryptografii (kryptografie s veřejným klíčem), což je skupina kryptografických metod, ve kterých se pro šifrování

Více

Diffieho-Hellmanův protokol ustanovení klíče

Diffieho-Hellmanův protokol ustanovení klíče Diffieho-Hellmanův protokol ustanovení klíče Andrew Kozlík KA MFF UK Diffieho-Hellmanův protokol ustanovení klíče (1976) Před zahájením protokolu se ustanoví veřejně známé parametry: Konečná grupa (G,

Více

Jihomoravske centrum mezina rodnı mobility. T-exkurze. Teorie c ı sel, aneb elektronicky podpis a s ifrova nı

Jihomoravske centrum mezina rodnı mobility. T-exkurze. Teorie c ı sel, aneb elektronicky podpis a s ifrova nı Jihomoravske centrum mezina rodnı mobility T-exkurze Teorie c ı sel, aneb elektronicky podpis a s ifrova nı Brno 2013 Petr Pupı k Obsah Obsah 2 Šifrovací algoritmy RSA a ElGamal 12 2.1 Algoritmus RSA.................................

Více

Kryptografie založená na problému diskrétního logaritmu

Kryptografie založená na problému diskrétního logaritmu Kryptografie založená na problému diskrétního logaritmu Andrew Kozlík KA MFF UK Diffieho-Hellmanův protokol ustanovení klíče (1976) Před zahájením protokolu se ustanoví veřejně známé parametry: Konečná

Více

J.Breier, M.Vančo, J.Ďaďo, M.Klement, J.Michelfeit, Masarykova univerzita Fakulta informatiky

J.Breier, M.Vančo, J.Ďaďo, M.Klement, J.Michelfeit, Masarykova univerzita Fakulta informatiky Analýza postranních kanálů (kryptoanalýza hardvérových zařízení) J.Breier, M.Vančo, J.Ďaďo, M.Klement, J.Michelfeit, M.Moráček, J.Kusák, J.Hreško Masarykova univerzita Fakulta informatiky 6.5.2010 Klasifikace

Více

Správa přístupu PS3-2

Správa přístupu PS3-2 Bezpečnost informací BI Ing. Jindřich Kodl, CSc. Správa přístupu PS3-2 1 Osnova II základní metody pro zajištění oprávněného přístupu; autentizace; autorizace; správa uživatelských účtů; srovnání současných

Více

1 Linearní prostory nad komplexními čísly

1 Linearní prostory nad komplexními čísly 1 Linearní prostory nad komplexními čísly V této přednášce budeme hledat kořeny polynomů, které se dále budou moci vyskytovat jako složky vektorů nebo matic Vzhledem k tomu, že kořeny polynomu (i reálného)

Více

Miroslav Kureš. Aplikovaná matematika Ostravice 2012 2. workshop A-Math-Net Sít pro transfer znalostí v aplikované matematice

Miroslav Kureš. Aplikovaná matematika Ostravice 2012 2. workshop A-Math-Net Sít pro transfer znalostí v aplikované matematice O Weilově párování na eliptických křivkách Miroslav Kureš Aplikovaná matematika Ostravice 2012 2. workshop A-Math-Net Sít pro transfer znalostí v aplikované matematice Abstrakt. Pracovní seminární text,

Více

1 Polynomiální interpolace

1 Polynomiální interpolace Polynomiální interpolace. Metoda neurčitých koeficientů Příklad.. Nalezněte polynom p co nejmenšího stupně, pro který platí p() = 0, p(2) =, p( ) = 6. Řešení. Polynom hledáme metodou neurčitých koeficientů,

Více

Kvantové algoritmy a bezpečnost. Václav Potoček

Kvantové algoritmy a bezpečnost. Václav Potoček Kvantové algoritmy a bezpečnost Václav Potoček Osnova Úvod: Kvantové zpracování informace Shorův algoritmus Kvantová distribuce klíče Post-kvantové zabezpečení Úvod Kvantové zpracování informace Kvantový

Více

Asymetrická kryptografie a elektronický podpis. Ing. Mgr. Martin Henzl Mgr. Radim Janča ijanca@fit.vutbr.cz

Asymetrická kryptografie a elektronický podpis. Ing. Mgr. Martin Henzl Mgr. Radim Janča ijanca@fit.vutbr.cz Asymetrická kryptografie a elektronický podpis Ing. Mgr. Martin Henzl Mgr. Radim Janča ijanca@fit.vutbr.cz Obsah cvičení Asymetrická, symetrická a hybridní kryptografie Matematické problémy, na kterých

Více

Řetězové zlomky. již čtenář obeznámen. Důraz bude kladen na implementační stránku, protože ta je ve

Řetězové zlomky. již čtenář obeznámen. Důraz bude kladen na implementační stránku, protože ta je ve Faktorizace čísel pomocí řetězových zlomků Tento text se zabývá algoritmem CFRAC (continued fractions algorithm) pro rozkládání velkých čísel (typicky součinů dvou velkých prvočísel). Nebudeme se zde zabývat

Více

Obsah. Euler-Fermatova věta. Reziduální aritmetika. 3. a 4. přednáška z kryptografie

Obsah. Euler-Fermatova věta. Reziduální aritmetika. 3. a 4. přednáška z kryptografie Obsah Počítání modulo n a jeho časová složitost 3. a 4. přednáška z kryptografie 1 Počítání modulo n - dokončení Umocňování v Zn 2 Časová složitost výpočtů modulo n Asymptotická notace Základní aritmetické

Více

Eliptické křivky a RSA

Eliptické křivky a RSA Přehled Katedra informatiky FEI VŠB TU Ostrava 11. února 2005 Přehled Část I: Matematický základ Část II: RSA Část III: Eliptické křivky Matematický základ 1 Základní pojmy a algoritmy Základní pojmy Složitost

Více

MPI - 7. přednáška. Hledání inverzí v Z n. Rychlé mocnění modulo n. Lineární rovnice v Z + n. Soustavy lineárních rovnic v Z + n.

MPI - 7. přednáška. Hledání inverzí v Z n. Rychlé mocnění modulo n. Lineární rovnice v Z + n. Soustavy lineárních rovnic v Z + n. MPI - 7. přednáška vytvořeno: 31. října 2016, 10:18 Co bude v dnešní přednášce Hledání inverzí v Z n. Rychlé mocnění modulo n. Lineární rovnice v Z + n. Soustavy lineárních rovnic v Z + n. Rovnice a b

Více

asymetrická kryptografie

asymetrická kryptografie asymetrická kryptografie princip šifrování Zavazadlový algoritmus RSA EL GAMAL další asymetrické blokové algoritmy Skipjack a Kea, DSA, ECDSA D H, ECDH asymetrická kryptografie jeden klíč pro šifrování

Více

MFF UK Praha, 22. duben 2008

MFF UK Praha, 22. duben 2008 MFF UK Praha, 22. duben 2008 Elektronický podpis / CA / PKI část 1. http://crypto-world.info/mff/mff_01.pdf P.Vondruška Slide2 Přednáška pro ty, kteří chtějí vědět PROČ kliknout ANO/NE a co zatím všechno

Více

Diskrétní logaritmus

Diskrétní logaritmus 13. a 14. přednáška z kryptografie Alena Gollová 1/38 Obsah 1 Protokoly Diffieho-Hellmanův a ElGamalův Diffieho-Hellmanův a ElGamalův protokol Bezpečnost obou protokolů 2 Baby step-giant step algoritmus

Více

Příklad. Řešte v : takže rovnice v zadání má v tomto případě jedno řešení. Pro má rovnice tvar

Příklad. Řešte v : takže rovnice v zadání má v tomto případě jedno řešení. Pro má rovnice tvar Řešte v : má rovnice tvar takže rovnice v zadání má v tomto případě jedno řešení. Pro má rovnice tvar takže rovnice v zadání má v tomto případě opět jedno řešení. Sjednocením obou případů dostaneme úplné

Více

ŠIFROVACÍ METODA ZALOŽENÁ NA FRAKTÁLNÍ KOMPRESI. 1. Úvod. V posledních letech se ukázalo, že teorii fraktálů lze využít v mnoha teoretických

ŠIFROVACÍ METODA ZALOŽENÁ NA FRAKTÁLNÍ KOMPRESI. 1. Úvod. V posledních letech se ukázalo, že teorii fraktálů lze využít v mnoha teoretických Kvaternion 2 (2012, 83 89 83 ŠIFROVACÍ METODA ZALOŽENÁ NA FRAKTÁLNÍ KOMPRESI TOMÁŠ GRÍSA Abstrakt Tento článek se zabývá teoretickými principy fraktální komprese a využitím modifikovaného algoritmu fraktální

Více

Definice. Vektorový prostor V nad tělesem T je množina s operacemi + : V V V, tj. u, v V : u + v V : T V V, tj. ( u V )( a T ) : a u V které splňují

Definice. Vektorový prostor V nad tělesem T je množina s operacemi + : V V V, tj. u, v V : u + v V : T V V, tj. ( u V )( a T ) : a u V které splňují Definice. Vektorový prostor V nad tělesem T je množina s operacemi + : V V V, tj. u, v V : u + v V : T V V, tj. ( u V )( a T ) : a u V které splňují 1. u + v = v + u, u, v V 2. (u + v) + w = u + (v + w),

Více

Vzdálenost jednoznačnosti a absolutně

Vzdálenost jednoznačnosti a absolutně Vzdálenost jednoznačnosti a absolutně bezpečné šifry Andrew Kozlík KA MFF UK Značení Pracujeme s šifrou (P, C, K, E, D), kde P je množina otevřených textů, C je množina šifrových textů, K je množina klíčů,

Více

Vyhledávání. doc. Mgr. Jiří Dvorský, Ph.D. Katedra informatiky Fakulta elektrotechniky a informatiky VŠB TU Ostrava. Prezentace ke dni 21.

Vyhledávání. doc. Mgr. Jiří Dvorský, Ph.D. Katedra informatiky Fakulta elektrotechniky a informatiky VŠB TU Ostrava. Prezentace ke dni 21. Vyhledávání doc. Mgr. Jiří Dvorský, Ph.D. Katedra informatiky Fakulta elektrotechniky a informatiky VŠB TU Ostrava Prezentace ke dni 21. září 2018 Jiří Dvorský (VŠB TUO) Vyhledávání 242 / 433 Osnova přednášky

Více

1 Mnohočleny a algebraické rovnice

1 Mnohočleny a algebraické rovnice 1 Mnohočleny a algebraické rovnice 1.1 Pojem mnohočlenu (polynomu) Připomeňme, že výrazům typu a 2 x 2 + a 1 x + a 0 říkáme kvadratický trojčlen, když a 2 0. Číslům a 0, a 1, a 2 říkáme koeficienty a písmenem

Více

Základy matematické analýzy

Základy matematické analýzy Základy matematické analýzy Spojitost funkce Ing. Tomáš Kalvoda, Ph.D. 1, Ing. Daniel Vašata 2 1 tomas.kalvoda@fit.cvut.cz 2 daniel.vasata@fit.cvut.cz Katedra aplikované matematiky Fakulta informačních

Více

Úvod. Karel Klouda c KTI, FIT, ČVUT v Praze 18. dubna, letní semestr 2010/2011

Úvod. Karel Klouda c KTI, FIT, ČVUT v Praze 18. dubna, letní semestr 2010/2011 MI-MPI, Přednáška č. 11 Karel Klouda karel.klouda@fit.cvut.cz c KTI, FIT, ČVUT v Praze 18. dubna, letní semestr 2010/2011 RSA potřiapadesáté šifrování Co potřebuje k zašifrování zprávy x: číslo n, které

Více

Univerzita Karlova v Praze Pedagogická fakulta

Univerzita Karlova v Praze Pedagogická fakulta Univerzita Karlova v Praze Pedagogická fakulta SEMINÁRNÍ PRÁCE Z METOD ŘEŠENÍ 1 TEORIE ČÍSEL 000/001 Cifrik, M-ZT Příklad ze zadávacích listů 10 101 Dokažte, že číslo 101 +10 je dělitelné číslem 51 Důkaz:

Více

Polynomy. Mgr. Veronika Švandová a Mgr. Zdeněk Kříž, Ph. D. 1.1 Teorie Zavedení polynomů Operace s polynomy...

Polynomy. Mgr. Veronika Švandová a Mgr. Zdeněk Kříž, Ph. D. 1.1 Teorie Zavedení polynomů Operace s polynomy... Polynomy Obsah Mgr. Veronika Švandová a Mgr. Zdeněk Kříž, Ph. D. 1 Základní vlastnosti polynomů 2 1.1 Teorie........................................... 2 1.1.1 Zavedení polynomů................................

Více

Moderní metody substitučního šifrování

Moderní metody substitučního šifrování PEF MZLU v Brně 11. listopadu 2010 Úvod V současné době se pro bezpečnou komunikaci používají elektronická média. Zprávy se před šifrováním převádí do tvaru zpracovatelného technickým vybavením, do binární

Více

Složitost Filip Hlásek

Složitost Filip Hlásek Složitost Filip Hlásek Abstrakt. Příspěvek popisuje dva základní koncepty teoretické informatiky, Turingovy stroje a složitost. Kromě definic důležitých pojmů uvádí také několik souvisejících tvrzení,

Více

1 Mnohočleny a algebraické rovnice

1 Mnohočleny a algebraické rovnice 1 Mnohočleny a algebraické rovnice 1.1 Pojem mnohočlenu (polynomu) Připomeňme, že výrazům typu a 2 x 2 + a 1 x + a 0 říkáme kvadratický trojčlen, když a 2 0. Číslům a 0, a 1, a 2 říkáme koeficienty a písmenem

Více

Pomocný text. Polynomy

Pomocný text. Polynomy Pomocný text Polynomy Tato série bude o polynomech a to zejména o polynomech jedné proměnné (pokud nebude uvedeno explicitně, že jde o polynom více proměnných). Formálně je někdy polynom jedné proměnné

Více

Hledání kořenů rovnic jedné reálné proměnné metoda půlení intervalů Michal Čihák 23. října 2012

Hledání kořenů rovnic jedné reálné proměnné metoda půlení intervalů Michal Čihák 23. října 2012 Hledání kořenů rovnic jedné reálné proměnné metoda půlení intervalů Michal Čihák 23. října 2012 Problém hledání kořenů rovnice f(x) = 0 jeden ze základních problémů numerické matematiky zároveň i jeden

Více

Zavedení a vlastnosti reálných čísel

Zavedení a vlastnosti reálných čísel Zavedení a vlastnosti reálných čísel jsou základním kamenem matematické analýzy. Konstrukce reálných čísel sice není náplní matematické analýzy, ale množina reálných čísel R je pro matematickou analýzu

Více

Digitální podepisování pomocí asymetrické kryptografie

Digitální podepisování pomocí asymetrické kryptografie Digitální podepisování pomocí asymetrické kryptografie Jan Máca, FJFI ČVUT v Praze 26. března 2012 Jan Máca () Digitální podepisování 26. března 2012 1 / 22 Obsah 1 Digitální podpis 2 Metoda RSA 3 Metoda

Více

PŘEDNÁŠKA 7 Kongruence svazů

PŘEDNÁŠKA 7 Kongruence svazů PŘEDNÁŠKA 7 Kongruence svazů PAVEL RŮŽIČKA Abstrakt. Definujeme svazové kongruence a ukážeme jak pro vhodné binární relace svazu ověřit, že se jedná o svazové kongruence. Popíšeme svaz Con(A) kongruencí

Více

Datové struktury 2: Rozptylovací tabulky

Datové struktury 2: Rozptylovací tabulky Datové struktury 2: Rozptylovací tabulky prof. Ing. Pavel Tvrdík CSc. Katedra počítačových systémů Fakulta informačních technologií České vysoké učení technické v Praze c Pavel Tvrdík, 2010 Efektivní algoritmy

Více

Složitost a moderní kryptografie

Složitost a moderní kryptografie Složitost a moderní kryptografie Radek Pelánek Modulární systém dalšího vzdělávání pedagogických pracovníků JmK v přírodních vědách a informatice CZ.1.07/1.3.10/02.0024 Složitost a moderní kryptografie

Více

Problematika převodu zprávy na body eliptické křivky

Problematika převodu zprávy na body eliptické křivky Problematika převodu zprávy na body eliptické křivky Ing. Filip Buršík Ústav telekomunikací Fakulta elektrotechniky a komunikačních technologií Vysoké Učení Technické v Brně Purkyňova 118, 612 00 Brno,

Více

Numerická matematika 1

Numerická matematika 1 Numerická matematika 1 Obsah 1 Řešení nelineárních rovnic 3 1.1 Metoda půlení intervalu....................... 3 1.2 Metoda jednoduché iterace..................... 4 1.3 Newtonova metoda..........................

Více

a počtem sloupců druhé matice. Spočítejme součin A.B. Označme matici A.B = M, pro její prvky platí:

a počtem sloupců druhé matice. Spočítejme součin A.B. Označme matici A.B = M, pro její prvky platí: Řešené příklady z lineární algebry - část 1 Typové příklady s řešením Příklady jsou určeny především k zopakování látky před zkouškou, jsou proto řešeny se znalostmi učiva celého semestru. Tento fakt se

Více

Programování: základní konstrukce, příklady, aplikace. IB111 Programování a algoritmizace

Programování: základní konstrukce, příklady, aplikace. IB111 Programování a algoritmizace Programování: základní konstrukce, příklady, aplikace IB111 Programování a algoritmizace 2011 Připomenutí z minule, ze cvičení proměnné, výrazy, operace řízení výpočtu: if, for, while funkce příklady:

Více

Dosud jsme se zabývali pouze soustavami lineárních rovnic s reálnými koeficienty.

Dosud jsme se zabývali pouze soustavami lineárních rovnic s reálnými koeficienty. Kapitola 4 Tělesa Dosud jsme se zabývali pouze soustavami lineárních rovnic s reálnými koeficienty. Všechna čísla byla reálná, vektory měly reálné souřadnice, matice měly reálné prvky. Také řešení soustav

Více

Zpracoval: hypspave@fel.cvut.cz 7. Matematická indukce a rekurse. Řešení rekurentních (diferenčních) rovnic s konstantními koeficienty.

Zpracoval: hypspave@fel.cvut.cz 7. Matematická indukce a rekurse. Řešení rekurentních (diferenčních) rovnic s konstantními koeficienty. Zpracoval: hypspave@fel.cvut.cz 7. Matematická indukce a rekurse. Řešení rekurentních (diferenčních) rovnic s konstantními koeficienty. (A7B01MCS) I. Matematická indukce a rekurse. Indukční principy patří

Více

Zbytky a nezbytky Vazební věznice Orličky Kondr (Brkos 2010) Zbytky a nezbytky / 22

Zbytky a nezbytky Vazební věznice Orličky Kondr (Brkos 2010) Zbytky a nezbytky / 22 Zbytky a nezbytky aneb stručný úvod do kongruencí Zbyněk Konečný Vazební věznice Orličky 2009 23. 27.2.2009 Kondr (Brkos 2010) Zbytky a nezbytky 23. 27.2.2009 1 / 22 O čem to dnes bude? 1 Úvod 2 Lineární

Více

Hlubší věty o počítání modulo

Hlubší věty o počítání modulo Hlubší věty o počítání modulo Jiří Velebil: A7B01MCS 31. října 2011: Hlubší věty o počítání modulo 1/18 Příklad Vyřešte: Idea řešení: x = 3 v Z 4 x = 2 v Z 5 x = 6 v Z 21 x = 3 + 2 + 6 Musí být: 1 První

Více

1 Lineární prostory a podprostory

1 Lineární prostory a podprostory Lineární prostory a podprostory Přečtěte si: Učebnice AKLA, kapitola první, podkapitoly. až.4 včetně. Cvičení. Které z následujících množin jsou lineárními prostory s přirozenými definicemi operací?. C

Více

Polynomy nad Z p Konstrukce faktorových okruhů modulo polynom. Alena Gollová, TIK Počítání modulo polynom 1/30

Polynomy nad Z p Konstrukce faktorových okruhů modulo polynom. Alena Gollová, TIK Počítání modulo polynom 1/30 Počítání modulo polynom 3. přednáška z algebraického kódování Alena Gollová, TIK Počítání modulo polynom 1/30 Obsah 1 Polynomy nad Zp Okruh Zp[x] a věta o dělení se zbytkem 2 Kongruence modulo polynom,

Více

Necht tedy máme přirozená čísla n, k pod pojmem systém lineárních rovnic rozumíme rovnice ve tvaru

Necht tedy máme přirozená čísla n, k pod pojmem systém lineárních rovnic rozumíme rovnice ve tvaru 2. Systémy lineárních rovnic V této kapitole se budeme zabývat soustavami lineárních rovnic s koeficienty z pole reálných případně komplexních čísel. Uvádíme podmínku pro existenci řešení systému lineárních

Více

Hlubší věty o počítání modulo

Hlubší věty o počítání modulo Hlubší věty o počítání modulo Jiří Velebil: X01DML 3. prosince 2007: Hlubší věty o počítání modulo 1/17 Příklad Vyřešte: Idea řešení: x = 3 v Z 4 x = 2 v Z 5 x = 6 v Z 21 x = 3 + 2 + 6 Musí být: 1 První

Více

Digitální podepisování pomocí asymetrické kryptografie

Digitální podepisování pomocí asymetrické kryptografie Digitální podepisování pomocí asymetrické kryptografie 11. dubna 2011 Trocha historie Asymetrické metody Historie Historie Vlastnosti Asymetrické šifrování 1976 Whitfield Diffie a Martin Hellman první

Více

8 Kořeny cyklických kódů, BCH-kódy

8 Kořeny cyklických kódů, BCH-kódy 24 8 Kořeny cyklických kódů, BCH-kódy Generující kořeny cyklických kódů Nechť K je cyklický kód délky n nad Z p s generujícím polynomem g(z). Chceme najít rozšíření T tělesa Z p, tedy nějaké těleso GF

Více

4 Počítání modulo polynom

4 Počítání modulo polynom 8 4 Počítání modulo polynom Co se vyplatilo jendou, vyplatí se i podruhé. V této kapitole zavedeme polynomy nad Z p a ukážeme, že množina všech polynomů nad Z p tvoří komutativní okruh s jednotkou. Je-li

Více

Vektorové podprostory, lineární nezávislost, báze, dimenze a souřadnice

Vektorové podprostory, lineární nezávislost, báze, dimenze a souřadnice Vektorové podprostory, lineární nezávislost, báze, dimenze a souřadnice Vektorové podprostory K množina reálných nebo komplexních čísel, U vektorový prostor nad K. Lineární kombinace vektorů u 1, u 2,...,u

Více

PŘEDNÁŠKA 2 POSLOUPNOSTI

PŘEDNÁŠKA 2 POSLOUPNOSTI PŘEDNÁŠKA 2 POSLOUPNOSTI 2.1 Zobrazení 2 Definice 1. Uvažujme libovolné neprázdné množiny A, B. Zobrazení množiny A do množiny B je definováno jako množina F uspořádaných dvojic (x, y A B, kde ke každému

Více

Báze a dimenze vektorových prostorů

Báze a dimenze vektorových prostorů Báze a dimenze vektorových prostorů Buď (V, +, ) vektorový prostor nad tělesem (T, +, ). Nechť u 1, u 2,..., u n je konečná posloupnost vektorů z V. Existují-li prvky s 1, s 2,..., s n T, z nichž alespoň

Více

Riemannova hypotéza Martin Havlík 2. A

Riemannova hypotéza Martin Havlík 2. A Riemannova hypotéza Martin Havlík 2. A Motivace: Motivace mého projektu je jednoduchá, pochopit matematiky označovaný nejtěžší a nejdůležitější problém současné matematiky. Cíle: Dokázání téhle hypotézy

Více

1 Řešení soustav lineárních rovnic

1 Řešení soustav lineárních rovnic 1 Řešení soustav lineárních rovnic 1.1 Lineární rovnice Lineární rovnicí o n neznámých x 1,x 2,..., x n s reálnými koeficienty rozumíme rovnici ve tvaru a 1 x 1 + a 2 x 2 +... + a n x n = b, (1) kde koeficienty

Více

Konstrukce šifer. Andrew Kozlík KA MFF UK

Konstrukce šifer. Andrew Kozlík KA MFF UK Konstrukce šifer Andrew Kozlík KA MFF UK Kerckhoffsův princip V roce 1883 stanovil Auguste Kerckhoffs 6 principů, kterými by se měl řídit návrh šifrovacích zařízení. Například, že zařízení by mělo být

Více

Matematika IV - 5. přednáška Polynomy

Matematika IV - 5. přednáška Polynomy S Matematika IV - 5. přednáška Polynomy Michal Bulant Masarykova univerzita Fakulta informatiky 17. 3. 2008 s Obsah přednášky O Dělitelnost a nerozložitelnost Kořeny a rozklady polynomů Polynomy více proměnných

Více

kryptosystémy obecně další zajímavé substituční šifry klíčové hospodářství kryptografická pravidla Hillova šifra Vernamova šifra Knižní šifra

kryptosystémy obecně další zajímavé substituční šifry klíčové hospodářství kryptografická pravidla Hillova šifra Vernamova šifra Knižní šifra kryptosystémy obecně klíčové hospodářství klíč K, prostor klíčů T K kryptografická pravidla další zajímavé substituční šifry Hillova šifra Vernamova šifra Knižní šifra klíč K různě dlouhá posloupnost znaků

Více

Pokročilá kryptologie

Pokročilá kryptologie Pokročilá kryptologie Kryptografie eliptických křivkek doc. Ing. Róbert Lórencz, CSc. České vysoké učení technické v Praze Fakulta informačních technologií Katedra počítačových systémů Příprava studijních

Více

Interpolace Lagrangeovy polynomy. 29. října 2012

Interpolace Lagrangeovy polynomy. 29. října 2012 Interpolace Lagrangeovy polynomy Michal Čihák 29. října 2012 Problematika interpolace V praxi máme často k dispozici údaje z různých měření tzv. data. Data mohou mít například podobu n uspořádaných dvojic

Více

Zimní semestr akademického roku 2014/ prosince 2014

Zimní semestr akademického roku 2014/ prosince 2014 Cvičení k předmětu BI-ZMA Tomáš Kalvoda Katedra aplikované matematiky FIT ČVUT Matěj Tušek Katedra matematiky FJFI ČVUT Obsah Cvičení Zimní semestr akademického roku 2014/2015 2. prosince 2014 Předmluva

Více

15. KubickÈ rovnice a rovnice vyööìho stupnï

15. KubickÈ rovnice a rovnice vyööìho stupnï 15. KubickÈ rovnice a rovnice vyööìho stupnï Čas od času je možné slyšet v pořadech o počasí jména jako Andrew, Mitch, El Ňiňo. otom následuje zpráva o katastrofálních vichřicích, uragánech a jiných mimořádných

Více

Teorie informace a kódování (KMI/TIK) Reed-Mullerovy kódy

Teorie informace a kódování (KMI/TIK) Reed-Mullerovy kódy Teorie informace a kódování (KMI/TIK) Reed-Mullerovy kódy Lukáš Havrlant Univerzita Palackého 10. ledna 2014 Primární zdroj Jiří Adámek: Foundations of Coding. Strany 137 160. Na webu ke stažení, heslo:

Více

Postranními kanály k tajemství čipových karet

Postranními kanály k tajemství čipových karet SIX Research Centre Vysoké učení technické v Brně martinasek@feec.vutbr.cz crypto.utko.feec.vutbr.cz Kryptoanaly za postrannı mi kana ly Proudova analy za Pr edstavenı U vod Crypto Research Group, Vysoke

Více

Ukážeme si lineární algoritmus, který pro pevné k rozhodne, zda vstupní. stromový rozklad. Poznamenejme, že je-li k součástí vstupu, pak rozhodnout

Ukážeme si lineární algoritmus, který pro pevné k rozhodne, zda vstupní. stromový rozklad. Poznamenejme, že je-li k součástí vstupu, pak rozhodnout Ukážeme si lineární algoritmus, který pro pevné k rozhodne, zda vstupní graf má stromovou šířku nejvýše k, a je-li tomu tak, také vrátí příslušný stromový rozklad. Poznamenejme, že je-li k součástí vstupu,

Více

Matematika IV - 5. přednáška Polynomy

Matematika IV - 5. přednáška Polynomy Matematika IV - 5. přednáška Polynomy Michal Bulant Masarykova univerzita Fakulta informatiky 17. 3. 2008 Obsah přednášky O Dělitelnost a nerozložitelnost Kořeny a rozklady polynomů Polynomy více proměnných

Více

Fibonacciho čísla na střední škole

Fibonacciho čísla na střední škole Fibonacciho čísla na střední škole Martina Jarošová Abstract In this contribution we introduce some interesting facts about Fibonacci nunbers We will prove some identities using different proof methods

Více

Kongruence na množině celých čísel

Kongruence na množině celých čísel 121 Kapitola 4 Kongruence na množině celých čísel 4.1 Relace kongruence na množině celých čísel Vraťme se k úvahám o dělení se zbytkem. Na základní škole jsme se naučili, že když podělíme číslo 11 číslem

Více

Funkce, elementární funkce.

Funkce, elementární funkce. Kapitola 2 Funkce, elementární funkce. V této kapitole si se budeme věnovat studiu základních vlastností funkcí jako je definiční obor, obor hodnot. Připomeneme si pojmy sudá, lichá, rostoucí, klesající.

Více

Diskrétní matematika 1. týden

Diskrétní matematika 1. týden Diskrétní matematika 1. týden Elementární teorie čísel dělitelnost Jan Slovák Masarykova univerzita Fakulta informatiky jaro 2015 Obsah přednášky 1 Problémy teorie čísel 2 Dělitelnost 3 Společní dělitelé

Více

Cyklické kódy. Definujeme-li na F [x] n sčítání a násobení jako. a + b = π n (a + b) a b = π n (a b)

Cyklické kódy. Definujeme-li na F [x] n sčítání a násobení jako. a + b = π n (a + b) a b = π n (a b) C Ať C je [n, k] q kód takový, že pro každé u 1,..., u n ) C je také u 2,..., u n, u 1 ) C. Jinými slovy, kódová slova jsou uzavřena na cyklické posuny. Je přirozené takový kód nazvat cyklický. Strukturu

Více

Informatika Ochrana dat

Informatika Ochrana dat Informatika Ochrana dat Radim Farana Podklady předmětu Informatika pro akademický rok 2007/2008 Obsah Kryptografické systémy s veřejným klíčem, výměna tajných klíčů veřejným kanálem, systémy s veřejným

Více

8.3). S ohledem na jednoduchost a názornost je výhodné seznámit se s touto Základní pojmy a vztahy. Definice

8.3). S ohledem na jednoduchost a názornost je výhodné seznámit se s touto Základní pojmy a vztahy. Definice 9. Lineární diferenciální rovnice 2. řádu Cíle Diferenciální rovnice, v nichž hledaná funkce vystupuje ve druhé či vyšší derivaci, nazýváme diferenciálními rovnicemi druhého a vyššího řádu. Analogicky

Více

Definice (Racionální mocnina). Buď,. Nechť, kde a a čísla jsou nesoudělná. Pak: 1. je-li a sudé, (nebo) 2. je-li liché, klademe

Definice (Racionální mocnina). Buď,. Nechť, kde a a čísla jsou nesoudělná. Pak: 1. je-li a sudé, (nebo) 2. je-li liché, klademe Úvodní opakování. Mocnina a logaritmus Definice ( -tá mocnina). Pro každé klademe a dále pro každé, definujeme indukcí Dále pro všechna klademe a pro Později budeme dokazovat následující větu: Věta (O

Více

Komerční výrobky pro kvantovou kryptografii

Komerční výrobky pro kvantovou kryptografii Cryptofest 05 Katedra počítačů, Fakulta elektrotechnická České vysoké učení technické v Praze 19. března 2005 O čem bude řeč Kryptografie Kryptografie se zejména snaží řešit: autorizovanost přístupu autenticitu

Více

Testování prvočíselnosti

Testování prvočíselnosti Dokumentace zápočtového programu z Programování II (NPRG031) Testování prvočíselnosti David Pěgřímek http://davpe.net Úvodem V různých oborech (například v kryptografii) je potřeba zjistit, zda je číslo

Více

Intervalová data a výpočet některých statistik

Intervalová data a výpočet některých statistik Intervalová data a výpočet některých statistik Milan Hladík 1 Michal Černý 2 1 Katedra aplikované matematiky Matematicko-fyzikální fakulta Univerzita Karlova 2 Katedra ekonometrie Fakulta informatiky a

Více

Základy šifrování a kódování

Základy šifrování a kódování Materiál byl vytvořen v rámci projektu Nové výzvy, nové příležitosti, nová škola Tento projekt je spolufinancován Evropským sociálním fondem a státním rozpočtem České republiky Základy šifrování a kódování

Více

opravdu považovat za lepší aproximaci. Snížení odchylky o necelá dvě procenta

opravdu považovat za lepší aproximaci. Snížení odchylky o necelá dvě procenta Řetězové zlomky a dobré aproximace Motivace Chceme-li znát přibližnou hodnotu nějakého iracionálního čísla, obvykle používáme jeho (nekonečný) desetinný rozvoj Z takového rozvoje, řekněme z rozvoje 345926535897932384626433832795028849769399375

Více

2.8.6 Čísla iracionální, čísla reálná

2.8.6 Čísla iracionální, čísla reálná .8.6 Čísla iracionální, čísla reálná Předpoklady: 0080 Př. : Doplň tabulku (všechny sloupce je možné vypočítat bez kalkulačky). 00 x 0 0,0004 00 900,69 6 8 x 0,09 0, x 0 0,0004 00 x 0 0,0 0 6 6 900 0 00

Více

Věta o dělení polynomů se zbytkem

Věta o dělení polynomů se zbytkem Věta o dělení polynomů se zbytkem Věta. Nechť R je okruh, f, g R[x], přičemž vedoucí koeficient polynomu g 0 je jednotka okruhu R. Pak existuje jediná dvojice polynomů q, r R[x] taková, že st(r) < st(g)

Více