Pokročilá kryptologie

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

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

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

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

Jak funguje asymetrické šifrování?

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

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

MFF UK Praha, 22. duben 2008

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

doc. Ing. Róbert Lórencz, CSc.

Asymetrická kryptografie

Y36BEZ Bezpečnost přenosu a zpracování dat. Úvod 2. Róbert Lórencz. lorencz@fel.cvut.cz

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.

Aplikovaná numerická matematika - ANM

Pokročilá kryptologie

asymetrická kryptografie

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

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

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

Správa přístupu PS3-2

Složitost a moderní kryptografie

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

Informatika Ochrana dat

Eliptické křivky a RSA

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

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

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

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

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

Úvod RSA Aplikace, související témata RSA. Ing. Štěpán Sem Festival Fantazie, Štěpán Sem

Trocha teorie Ošklivé lemátko První generace Druhá generace Třetí generace Čtvrtá generace O OŠKLIVÉM LEMÁTKU PAVEL JAHODA

Šifrování veřejným klíčem

C5 Bezpečnost dat v PC

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

KRYPTOGRAFIE VER EJNE HO KLI Č E

Aplikovaná numerická matematika

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

9. DSA, PKI a infrastruktura. doc. Ing. Róbert Lórencz, CSc.

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

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

Modulární aritmetika, Malá Fermatova věta.

Diskrétní logaritmus

Prvočísla, dělitelnost

Karel Klouda c KTI, FIT, ČVUT v Praze 28. února, letní semestr 2010/2011

Algoritmy okolo teorie čísel

Matematické algoritmy (11MAG) Jan Přikryl

Úvod do kryptologie. 6. března L. Balková (FJFI ČVUT v Praze) Primality Testing and Factorization 6. března / 41

Základy kryptografie. Beret CryptoParty Základy kryptografie 1/17

Algoritmy okolo teorie čísel

Kódování a Šifrování. Iveta Nastoupilová

Generátory náhodných a

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

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

Šifrová ochrana informací věk počítačů KS - 5

ElGamal, Diffie-Hellman

Komerční výrobky pro kvantovou kryptografii

Modulární aritmetika, Malá Fermatova věta.

PSK2-16. Šifrování a elektronický podpis I

Identifikátor materiálu: ICT-2-04

online prostředí, Operační program Praha Adaptabilita, registrační číslo CZ.2.17/3.1.00/31165.

Y36BEZ Bezpečnost přenosu a zpracování dat. Úvod. Róbert Lórencz. lorencz@fel.cvut.cz

Matematické algoritmy (11MAG) Jan Přikryl. verze: :29

Základy kryptologie. Kamil Malinka Fakulta informačních technologií

Testování prvočíselnosti

Osnova přednášky. Seznámení s asymetrickou kryptografií, díl 1. O pojmu bezpečnost Poznámka o hodnocení kryptografické bezpečnosti.

Generující kořeny cyklických kódů. Generující kořeny. Alena Gollová, TIK Generující kořeny 1/30

Y36PSI Bezpečnost v počítačových sítích. Jan Kubr - 10_11_bezpecnost Jan Kubr 1/41

Autentizace uživatelů

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

příklad Steganografie Matematické základy šifrování šifrování pomocí křížů Hebrejské šifry

Historie matematiky a informatiky Cvičení 2

Datové struktury 2: Rozptylovací tabulky

České vysoké učení technické v Praze Fakulta elektrotechnická Katedra telekomunikační techniky Asymetrické kryptosystémy I

CO JE KRYPTOGRAFIE Šifrovací algoritmy Kódovací algoritmus Prolomení algoritmu

4. Teorie informace, teorie složitosti algoritmů. doc. Ing. Róbert Lórencz, CSc.

Kryptografie, elektronický podpis. Ing. Miloslav Hub, Ph.D. 27. listopadu 2007

Dynamické programování

Historie matematiky a informatiky Cvičení 1

Tel.: (+420)

Lineární algebra : Polynomy

základní informace o kurzu základní pojmy literatura ukončení, požadavky, podmiňující předměty,

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

Univerzita Karlova v Praze Matematicko-fyzikální fakulta BAKALÁŘSKÁ PRÁCE. Jiří Mareš Srovnání algoritmů pro kryptografii s veřejným klíčem

3. Aritmetika nad F p a F 2

Počet kreditů: 5 Forma studia: kombinovaná. Anotace: Předmět seznamuje se základy dělitelnosti, vybranými partiemi algebry, šifrování a kódování.


Vzdálenost jednoznačnosti a absolutně

Ochrana dat Obsah. Výměna tajných klíčů ve veřejném kanálu. Radim Farana Podklady pro výuku. Kryptografické systémy s tajným klíčem,

Univerzita Karlova v Praze Pedagogická fakulta

PA159 - Bezpečnostní aspekty

Matematika (CŽV Kadaň) aneb Úvod do lineární algebry Matice a soustavy rovnic

Charakteristika tělesa

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

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

Informatika / bezpečnost

Andrew Kozlík KA MFF UK

Bezpečnostní mechanismy

19. a 20. přednáška z kryptografie

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

Transkript:

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 novou fakultu ČVUT je spolufinancována Evropským sociálním fondem a rozpočtem Hlavního města Prahy v rámci Operačního programu Praha adaptabilita (OPPA) projektem CZ.2.17/3.1.00/31952 Příprava a zavedení nových studijních programů Informatika na ČVUT v Praze. Praha & EU: Investujeme do vaší budoucnosti R. Lórencz (ČVUT FIT) RSA MI-KRY, 2011, Předn. 5.-6. 1 / 25

Obsah přednášky RSA Principy kryptografie s veřejným klíčem (VK) Kryptografické systémy s VK R. Lórencz (ČVUT FIT) RSA MI-KRY, 2011, Předn. 5.-6. 2 / 25

RSA (1) Úvod Zabezpečení utajené komunikace v síti každá komunikující dvojice musí používat šifrovací klíč Pokud je šifrovací klíč známý je dešifrovací klíč vygenerovatelný s použitím malého počtu operací. Šifrovací systém veřejného klíče (VK) je řešení problému s přidělovaním klíče pro utajenou komunikaci. Šifrovací systém VK má šifrovací klíč veřejný VK a tajný SK. Vypočítat dešifrovací transformaci ze šifrovací je problém. Použitím VK je zřízena utajená komunikace v síti s několika subjekty. Každý subjekt má VK a SK pro daný šifrovací systém. Subjekt si ponechává určité utajené soukromé informace vnesené do konstrukce šifrovací transformace pomocí SK. Seznam klíčů VK 1, VK 2,..., VK n je veřejný. R. Lórencz (ČVUT FIT) RSA MI-KRY, 2011, Předn. 5.-6. 3 / 25

RSA (2) Subjekt 1 vysílá zprávu m subjektu 2: Zpráva blok (obvykle 1) určité délky; bloku OT m odpovídá blok ŠT, písmena numerické ekvivaleny. Subjekt 2 s použitím dešifrovací transformace dešifruje blok ŠT. Podmínka: dešifrovací transformace nemůže být nalezena v rozumném čase někým jiným než subjektem 2 neautorizované subjekty komunikace nemůžou dešifrovat zprávu bez znalosti klíče. Princip RSA šifrovacího systému Uveden Rivestem, Shamirem a Adlemanem v roce 1970. RSA je šifrovací systém VK a je založený na modulárním umocňování. Dvojice (e, n) je VK klíče; e - exponent a n - modul. n součin dvou prvočísel p a q, tj. n = pq a gcd (e, Φ(n)) = 1. R. Lórencz (ČVUT FIT) RSA MI-KRY, 2011, Předn. 5.-6. 4 / 25

RSA (3) Zašifrování OT: písmena numerické ekvivalenty, vytváříme bloky s největší možnou velikostí (se sudým počtem číslic). Pro zašifrování zprávy m na ŠT c použijeme vztah: E(m) = c = m e n, 0 < c < n. K dešifrování požadujeme znalost inverze d čísla e modulo Φ(n), gcd(e, Φ(n)) = 1 inverze existuje. Pro dešifrování bloku c platí: D(c) = c d n = m ed n = m kφ(n)+1 n = (m Φ(n) ) k m n = m n, kde ed = kφ(n) + 1 pro nějaké celé číslo k ( ed Φ(n) = 1) a z Eulerovy věty platí m Φ(n) n = 1, kde gcd (m, n) = 1. Pravděpodobnost, že m a n nejsou nesoudělná je extrémně malá. Ale co se stane, když m an jsou soudělná?! R. Lórencz (ČVUT FIT) RSA MI-KRY, 2011, Předn. 5.-6. 5 / 25

RSA (4) Důkaz Platí, že gcd(m, n) = gcd(m, pq) 1 Protože p a q jsou prvočísla platí bud : m = αp nebo m = βq, kde α a β jsou celá čísla, pro které platí α < q a β < p. Předpokladejme, že x = αp a teda gcd(m, β) = 1. Dále platí kde k je celé kladné číslo. 1 1 k (m Φ(q) ) k (mod q), Výraz (m Φ(n) ) k můžeme potom psát: (m Φ(n) ) k (m (p 1)(q 1) ) k ((m Φ(q) ) k ) (p 1) 1 (p 1) 1 (mod q) Potom (m Φ(n) ) k = 1 + γq, kde γ je celé číslo. Vynásobením této rovnice hodnotou m dostávame: m(m Φ(n) ) k = m + mγq = m + (αp)γq = m + αγ(pq) = m + αγn R. Lórencz (ČVUT FIT) RSA MI-KRY, 2011, Předn. 5.-6. 6 / 25

RSA (4) Důkaz 2 Z toho plyne m(m Φ(n) ) k m (mod n) a platí D(c) = c d n = m ed n = m kφ(n)+1 n = (m Φ(n) ) k m n = m n, Square-and-Multiply algoritmus pro modulární umocňování Vstup: základní element m, exponent H = t i=0 h i2 i, kde h i {1, 0} a h t = 1 a modul n. Výstup: m H mod n Inicializace: r = m Algoritmus: 1 FOR i = t 1 DOWNTO 0 1 r = r 2 mod n 2 IF h i = 1 THEN r = rm mod n 2 RETURN (r) R. Lórencz (ČVUT FIT) RSA MI-KRY, 2011, Předn. 5.-6. 7 / 25

RSA (4) Příklad Šifrovací modul je součinem dvou prvočísel 43 a 59. Potom dostáváme n = 43 59 = 2537 jako modul. e = 13 je exponent, kde platí gcd (e, Φ(n)) = gcd (13, 42 58) = 1. Dále plati Φ(2537) = (43 1) (59 1) = 42 58 = 2436. Pro zašifrování zprávy PUBLIC KEY CRYPTOGRAPHY, převedeme OT do číselných ekvivalentů písmen textu vytvoříme bloky o délce 4 číslic (n je 4ciferné!) a dostáváme: 1520 0111 0802 1004 2402 1724 1519 1406 1700 1507 2423, Písmeno X = 23 je výplň (padding). Pro šifrování bloku OT do bloku ŠT použijme vztah c = m 13 2537. Šifrovaním prvního bloku OT 1520 dostáváme blok ŠT c = (1520) 13 2537 = 95. R. Lórencz (ČVUT FIT) RSA MI-KRY, 2011, Předn. 5.-6. 8 / 25

RSA (5) Zašifrováním všech bloků OT dostáváme: 0095 1648 1410 1299 0811 2333 2132 0370 1185 1457 1084. Pro dešifrování zprávy, která byla zašifrována RSA šifrou, musíme najít inverzi e = 13 1 Φ(n), kde Φ(n) = Φ(2537) = 2436. S použitím Euklidova algoritmu získáme číslo d = 937, které je multiplikativní inverzí čísla 13 modulo 2436. K dešifrování bloku c ŠT použijeme vztah: který platí, protože m = c 937 2537, 0 m 2537, c 937 2537 = (m 13 ) 937 2537 = m (m 2436 ) 5 2537 = m, kde jsme použili Eulerovu větu m Φ(2537) 2537 = m 2436 2537 = 1, když platí gcd (m, 2537) = 1, a to je splněno pro každý blok/zprávu m OT. R. Lórencz (ČVUT FIT) RSA MI-KRY, 2011, Předn. 5.-6. 9 / 25

RSA (6) RSA - definece systému klíčů Výstup: veřejný klíč VK = (n, e), exponent soukromého klíče = (d) 1 Vyhledáme dva velké prvočísla p a q. 2 Vypočítáme n = pq a Φ(n) = (p 1)(q 1). 3 Zvolíme veřejný exponent e {1, 2,... Φ(n) 1}takové, že platí 4 Spočítáme SK d tak, že gcd(e, Φ(n)) = 1 de (mod Φ(n)). Dvojici VK = (n, e) prohlásíme za veřejný klíč (a zveřejníme), dvojici SK = (n, d) prohlásíme za soukromý klíč. Podmínka gcd(e, Φ(n)) = 1 zaručuje, že inverze e modulo Φ(n) existuje a je to číslo d exponent privátní části klíče. R. Lórencz (ČVUT FIT) RSA MI-KRY, 2011, Předn. 5.-6. 10 / 25

RSA (6) Exponent d můžeme vypočítat použitím EEA s použitím vstupních hodnot n a e kde platí vztah: gcd(φ(n), e) = sφ(n) + te. V případě, že gcd(φ(n), e) = 1 víme, že e je platný veřejný klíč. Také víme, že parametr t je vypočítaný pomocí EEA vyjadřuje inverzi e, pro kterou platí d = t mod Φ(n). Pokud e a Φ(n) jsou soudělná čísla zvolíme nové e a výpočet gcd(φ(n), e) opkakujeme. R. Lórencz (ČVUT FIT) RSA MI-KRY, 2011, Předn. 5.-6. 11 / 25

RSA (6) Postup pro genrování VK a SK : Každý subjekt najde 2 velká náhodná prvočísla p a q se 100 dekadickými číslicemi za rozumnou dobu. Z věty o prvočíslech plyne, že pravděpodobnost toho, že takto vybraná čísla jsou prvočísla, 2/ log (10 100 ). Pro nalezení prvočísla potřebujeme v průměru 1/(2/ log (10 100) ) 115 testů takových celých čísel. Ke zjištění, jestli jsou takto náhodně vybraná lichá celá čísla prvočísly, použijeme Rabinův-Millerův pravděpodobnostní test. 100číslicové celé liché číslo je testováno Rabin-Millerovým testem pro 100 "svědků". Pravděpodobnost, že testované číslo je složené je 10 60. Každý subjekt provádí daný výpočet pouze dvakrát. R. Lórencz (ČVUT FIT) RSA MI-KRY, 2011, Předn. 5.-6. 12 / 25

RSA (7) Jakmile jsou prvočísla p a q nalezena je vypočítán šifrovací exponent e (platí gcd (e, Φ(pq)) = 1). Doporučení: zvolit e jako nějaké prvočíslo > p a q. Pokud 2 e > n = pq a znemožnění odkrytí bloku otevřeného textu m následným jednoduchým umocňováním celého čísla c, kde c = m e n, 0 < c < n, bez provedení redukce modulo n. Podmínka 2 e > n zaručí, že každý blok otevřeného textu m, kde je zašifrovaný umocněním a následnou redukcí modulo n. R. Lórencz (ČVUT FIT) RSA MI-KRY, 2011, Předn. 5.-6. 13 / 25

RSA (8) Bezpečnost RSA Modulární umocňování potřebné k šifrování zprávy s použitím RSA může být provedeno při VK a m o velikosti 200 dekadických číslic za několik málo sekund počítačového času. Se znalostí p a q (Φ(n) = Φ(pq) = (q 1)(r 1)) a s použitím Euklidova algoritmu lze najít dešifrovací klíč d, kde de Φ(n) = 1, K objasnění proč znalost šifrovacího klíče (e, n), který je veřejný, nevede lehce k nalezení dešifrovacího klíče (d, n) je důležité si uvědomit, že k nalezení dešifrovacího klíče d jako inverzi šifrovacího klíče e modulo Φ(n) vyžaduje znalost hodnot p a q, které umožní snadný výpočet Φ(pq) = (p 1)(q 1). V případě, kdy nepoznáme hodnoty p a q, je nalezení Φ(n) podobně složité jako faktorizace celého čísla n. R. Lórencz (ČVUT FIT) RSA MI-KRY, 2011, Předn. 5.-6. 14 / 25

RSA (9) Problem faktorizace a RSA (1) Pokud p a q jsou 100číslicová prvočísla n je 200číslicové. Nejrychlejší známé algoritmy pro faktorizaci potřebují 10 6 roků počítačového času k faktorizaci takových celých čísel. Naopak, pokud známe d, ale neznáme Φ(n), je možné lehce faktorizovat n, protože víme, že ed 1 je násobkem Φ(n). Pro takovou úlohu existují speciální algoritmy faktorizace celého čísla n s použitím nějakého násobku Φ(n). Dosud nebylo prokázáno dešifrování zprávy zašifrované s použitím RSA bez faktorizace n! pokud neexistuje žádná metoda pro dešifrování RSA bez provedení faktorizace modulu n je RSA šifrovací systém metodou používající faktorizaci! R. Lórencz (ČVUT FIT) RSA MI-KRY, 2011, Předn. 5.-6. 15 / 25

RSA (10) Problem faktorizace a RSA (2) Výpočetní náročnost je tím větší, čím větší je modul. Zprávy šifrované s použitím RSA systému se stávají zranitelné proti útokům v tom okamžiku, když se faktorizace n stane proveditelnou v "reálných podmínkách"! Znamená to zvýšenou pozornost při výběru a používání prvočísel p a q k zajištění ochrany utajení zpráv, které mají být utajeny na desítky a stovky let. Ochrana proti speciálním, rychlým technikám pro faktorizaci n = pq. Například obě hodnoty p 1 a q 1 by měly mít velký prvočíselný faktor, tedy gcd (p 1, q 1) by mělo být malé a p a q by měly mít rozdílnou desítkovou reprezentaci v délce několika málo číslic. R. Lórencz (ČVUT FIT) RSA MI-KRY, 2011, Předn. 5.-6. 16 / 25

RSA (11) Schémata kryptografie veřejného klíče Soubor veřejných klíčů Šifrování Klíč VK 2 Klíč SK 2 OT E VK ŠT D SK OT Odesílatel 1 Adresát 2 Klíč SK 1 Autentizace Soubor veřejných klíčů Klíč VK 1 OT D SK ŠT E VK OT Odesílatel 1 Adresát 2 R. Lórencz (ČVUT FIT) RSA MI-KRY, 2011, Předn. 5.-6. 17 / 25

Digitální podpis a RSA (1) Šifrovací systém RSA lze použít pro vyslání podepsané zprávy. Při použití podpisu se příjemce zprávy může ujistit, že zpráva přišla od oprávněného odesílatele a že tomu tak je na základě nestranného a objektivního testu. Takové ověření je potřebné pro elektronickou poštu, elektronické bankovnictví, elektronický obchod atd. Princip Necht subjekt 1 vysílá podepsanou zprávu m subjektu 2. Subjekt 1 spočítá pro zprávu m OT S = D SK1 (m) = m d 1 n1, kde SK 1 = (d 1, n 1 ) je tajný dešifrovací klíč pro subjekt 1. Když n 2 > n 1, kde VK 2 = (e 2, n 2 ) je veřejný šifrovací klíč pro subjekt 2, subjekt 1 zašifruje S pomocí vztahu c = E VK2 (S) = S e 2 n2, 0 < c < n 2. R. Lórencz (ČVUT FIT) RSA MI-KRY, 2011, Předn. 5.-6. 18 / 25

Digitální podpis a RSA (2) Když n 2 < n 1 subjekt 1 rozdělí S do bloků o velikosti menší než n 2 a zašifruje každý blok s použitím šifrovací transformace E VK2. Pro dešifrování subjekt 2 nejdříve použije soukromou dešifrovací transformaci D SK2 k získání S, protože D SK2 (c) = D SK2 (E VK2 (S)) = S. K nalezení OT m předpokládejme, že byl vyslán subjektem 1, subjekt 2 dále použije veřejnou šifrovací transformaci E VK1, protože E VK1 (S) = E VK1 (D SK1 (m)) = m. Zde jsme použili identitu E VK1 (D SK1 (m)) = m, která plyne z faktu, že E VK1 (D SK1 (m)) = (m d 1 ) e 1 n1 = m d 1e 1 n1 = m, protože d 1 e 1 Φ(n1 ) = 1. R. Lórencz (ČVUT FIT) RSA MI-KRY, 2011, Předn. 5.-6. 19 / 25

Digitální podpis a RSA (3) Kombinace OT m a podepsané verze S přesvědčí subjekt 2, že zpráva byla vyslána subjektem 1. Také subjekt 1 nemůže odepřít, že on vyslal danou zprávu, protože žádný jiný subjekt než 1 nemůže generovat podepsanou zprávu S z originálního textu zprávy m. Digitální podpis Odesílatel 1 Adresát 2 D SK E VK D SK E VK OT ŠT OT SK 1 VK 1 SK 2 VK 2 R. Lórencz (ČVUT FIT) RSA MI-KRY, 2011, Předn. 5.-6. 20 / 25

RSA-CRT (1) Urychlení šifrování Pro urychlení šifrování je normou doporučena množina šifrovacích exponentů e. Exponenty se vyznačují malou Hammingovou váhou šifrování probíhá rychle v několika krocích, viz modulární umocňování. Například e = 11 2, 1011 2, 10001 2, 2 16 + 1,... VK e e v binární podobě #MUL + #SQ 3 11 3 17 10001 5 2 16 + 1 1 0000 0000 0000 0001 17 R. Lórencz (ČVUT FIT) RSA MI-KRY, 2011, Předn. 5.-6. 21 / 25

RSA-CRT (1) Urychlení dešifrování Pro urychlení dešifrování se využívá rozklad pomocí Čínské věty o zbytcích - RSA-CRT Potom se při dešifrování počítá s čísly poloviční délky zrychlení 4 až 8 násobné oproti původnímu dešifrovacímu výpočtu. Definice RSA-CRT Necht p a q jsou prvočísla. Vypočítáme n = pq, Φ(n) = (p 1)(q 1). Zvolíme e, 1 < e < n, gcd(e, Φ(n)) = 1 a spočítáme d = e 1 Φ(n). Vypočítáme d p = d p 1, d q = d q 1, q inv = q 1 p. Dvojici VK = (n, e) prohlásíme za veřejný klíč (a zveřejníme), šestici SK = (n, p, q, d p, d q, q inv ) prohlásíme za soukromý klíč. R. Lórencz (ČVUT FIT) RSA MI-KRY, 2011, Předn. 5.-6. 22 / 25

RSA-CRT (2) Šifrování a dešifrování Pro šifrování platí stejný vztah jako pro RSA: c = m e n. Pro dešifrování v RSA-CRT musí platit pro d p a d q následující kongruence: ed p 1 mod (p 1) ed q 1 mod (q 1) R. Lórencz (ČVUT FIT) RSA MI-KRY, 2011, Předn. 5.-6. 23 / 25

RSA-CRT (3) Dešifrování 1 Vypočteme 2 Vypočteme m 1 = c dp p m 2 = c dq q h = q 1 p (m 1 m 2 ) p 3 Vypočteme m = m 2 + hq Krok 1 je výpočetně nejnáorčnější. Počítáme ale s polovičními délkami čísel než v případě RSA. Výpočet m 1 a m 2 je datově nezávislý a lze ho provádět paralelně. V kroku 2 je nenáročné násobení rozdílu m 1 a m 2 s předpočítanou konstantou q 1 p s a následnou redukcí modulo p. Poslední krok představuje nejméně náročné násobení a sčítaní. R. Lórencz (ČVUT FIT) RSA MI-KRY, 2011, Předn. 5.-6. 24 / 25

Asymetrická a symetrická kryptografie (1) Asymetrické šifrování SK 2 z VK 2 nelze schůdně vypočítat Klíč VK 2 Klíč SK 2 OT E VK ŠT D SK OT Odesílatel 1 Adresát 2 Symetrické šifrování K E a K D stejné nebo snadno převoditelné Klíč K E Klíč K D OT E K ŠT D K OT Odesílatel 1 Odesílatel 1 může i dešifrovat Adresát 2 R. Lórencz (ČVUT FIT) RSA MI-KRY, 2011, Předn. 5.-6. 25 / 25