McEllisova šifra.

Slides:



Advertisements
Podobné prezentace
LOGISTICKÉ SYSTÉMY 14/15.
Advertisements

Zpracování informací a znalostí Datové struktury a algoritmy pro vyhledávání informací Doc. RNDr. Jan Rauch, CSc. Katedra informačního a znalostního.
Úvod do klasických a moderních metod šifrování Jaro 2008, 7. přednáška.
Asymetrická kryptografie
Vzorová písemka Poznámka: Bonusové příklady jsou nepovinné, lze za ně ale získat body navíc. (2 body) Definujte pojem gradient. Vypočítejte gradient funkce.
Základy informatiky přednášky Kódování.
Sylabus V rámci PNV budeme řešit konkrétní úlohy a to z následujících oblastí: Nelineární úlohy Řešení nelineárních rovnic Numerická integrace Lineární.
Základy informatiky přednášky Efektivní kódy.
Radek Horáček IZI425 – Teorie kódování a šifrování
Radim Farana Podklady pro výuku pro akademický rok 2013/2014
Šifrovaná elektronická pošta Petr Hruška
PRETTY GOOD PRIVACY ŠIFROVÁNÍ ZPRÁV. JE KRYPTOGRAFICKÝ BALÍK, KTERÝ JE VYUŽÍVÁN PŘEDEVŠÍM PRO ŠIFROVÁNÍ ZPRÁV A SOUBORŮ A VYTVÁŘENÍ, OVĚŘOVÁNÍ DIGITÁLNÍCH.
Radim Farana Podklady pro výuku
Fakulta životního prostředí Katedra informatiky a geoinformatiky
Třída P (PTIME) DEF: P je třída všech jazyků, které jsou rozhodnutelné deterministickým Turingovým strojem v polynomiálním čase. Neboli: Třída P je.
Časová složitost algoritmů
Perfektní kódy.
Statistika 2 Aritmetický průměr, Modus, Medián
P-těžké, np-těžké a np-úplné problémy
Distribuce klíčů. Metoda Diffie Hellman Použiji jednosměrnou funkci f(x)=p x mod q p,q jsou velká prvočísla. Uživatel A zvolí tajný klíč t, uživatel B.
Rozpoznávání v řetězcích
Základní operace s maticemi
Výpočetní složitost Odhlédneme-li od realizace algoritmu na konkrétním hardwaru a v konkrétním prostředí informačního systému, lze časovou složitost hodnotit.
Základní operace s maticemi
Počítačová chemie (5. přednáška)
Teorie čísel a šifrování Jan Hlava, Gymnázium Jiřího Ortena Kutná Hora Petr Šebek, Gymnázium Uherské Hradiště.
Monte Carlo simulace Experimentální fyzika I/3. Princip metody Problémy které nelze řešit analyticky je možné modelovat na základě statistického chování.
Úvod do klasických a moderních metod šifrování
NP-úplné problémy v grafech
RSA šifra Ronald Rivest, Adi Shamir a Leonard Adlemann.
Teorie čísel Prvočíslo Eulerova funkce φ(n)
Elektronický podpis Ochrana Dat Jan Renner
Sylabus V rámci PNV budeme řešit konkrétní úlohy a to z následujících oblastí: Nelineární úlohy Řešení nelineárních rovnic Numerická integrace Lineární.
Teorie čísel Prvočíslo Generování prvočísel: Erathosenovo síto
Radim Farana Podklady pro výuku
Doc. Josef Kolář (ČVUT)Prohledávání grafůGRA, LS 2010/11, Lekce 4 1 / 15Doc. Josef Kolář (ČVUT)NP-úplné problémyGRA, LS 2012/13, Lekce 13 1 / 14 NP-ÚPLNÉ.
RSA – poznámky k algoritmu
Lineární kódy.
Teorie čísel Prvočíslo Eulerova funkce φ(n)
Feistlovy kryptosystémy Posuvné registry Lucifer DES, AES Horst Feistel Německo, USA IBM.
Hybridní kryptosystémy
McEllisova šifra. James Ellis( ) Clifford Cocks, Malcolm Williamson Alice Bob zpráva šum Odstranění šumu.
Inferenční statistika - úvod
Vícerozměrné statistické metody Vícerozměrné statistické rozdělení a testy, operace s vektory a maticemi Jiří Jarkovský, Simona Littnerová.
Bezpečnost systémů 2. RSA šifra *1977 Ronald Rivest *1947 Adi Shamir *1952 Leonard Adelman *1945 University of Southern California, Los Angeles Protokol.
Symetrická šifra Šifrovací zobrazení y = φ(x,k) Dešifrovací zobrazení x = ψ(y,k)
Lineární kódy.
Kódování a šifrování Monoalfabetické šifry Polyalfabetické šifry
Informační bezpečnost VY_32_INOVACE _BEZP_16. SYMETRICKÉ ŠIFRY  Používající stejný šifrovací klíč jak pro zašifrování, tak pro dešifrování.  Výhoda.
EMM21 Ekonomicko-matematické metody 2 Prof. RNDr. Jaroslav Ramík,CSc.
Složitost algoritmu Vybrané problémy: Při analýze složitosti jednotlivých algoritmů často narazíme na problém, jakým způsobem vzít v úvahu velikost vstupu.
Symetrická šifra Šifrovací zobrazení y = φ(x,k) Dešifrovací zobrazení x = ψ(y,k)
Korelace. Určuje míru lineární vazby mezi proměnnými. r < 0
Úvod do databázových systémů
ALGEBRAICKÉ STRUKTURY
Základní pojmy v automatizační technice
KIV/ZD cvičení 7 Tomáš Potužák.
Operační program Vzdělávání pro konkurenceschopnost
Feistlovy kryptosystémy
Úvod do klasických a moderních metod šifrování
McEllisova šifra 1.
Bezpečnost informačních systémů
Úvod do klasických a moderních metod šifrování
Výpočetní složitost algoritmů
Bezpečnost systémů 2.
Toky v sítích.
Název projektu: Moderní výuka s využitím ICT
Symetrické šifrování Asymetrické šifrování
McEllisova šifra.
ANALÝZA A KLASIFIKACE DAT
Transkript prezentace:

McEllisova šifra

James Ellis(1924-1997) Clifford Cocks, Malcolm Williamson šum Bob Alice zpráva Odstranění šumu

Klíč 3 matice Prověrková matice H Hammingova kódu řádu r, velikost n=2r-1 x r. Příslušná generující matice G má velikost n x k=2r-r-1 Regulární matice S, velikost k x k Permutační matice P, velikost n x n

Příklad 1 Hammingova prověrková matice řádu 3, velikost 7 x 3 1 Regulární matice S, velikost 4x4 1 1

Příklad Permutační matice P, velikost 7x7 Odpovídá permutaci 3257164 1

Dále potřebuji spočítat Generující matici Hammingova kódu G, velikost n x k Inverzní matici k S: S-1, velikost k x k Inverzní matici k P: P-1 = PT , velikost n x n Součin K = S * G * P, velkost n x k

Příklad Generující matice G Inverzní matice S-1 1 1

Příklad Inverzní permutační matice P-1 Odpovídá permutaci 5217364 1

Příklad Součinová matice K 1

Šifrování Vstupní zpráva x Spočítám y = x*K + t t je náhodný „chybový“ vektor délky n s vahou 1 Šifrování je nedeterministické

Příklad 1 K= X = (1010) t = (0000100) X*K = (0010101) y = (0010001)

Dešifrování Přijmu zprávu y = x*K+t = x*S*G*P+t Přenásobím zprava maticí P-1 , dostanu m = (x*S*G*P+t)*P-1 = x*S*G*P*P-1+t*P-1 = x*S*G+t*P-1 Vektor t*P-1 má váhu 1, „chybu“ odstraním metodou pro dekódování Hammingových kódů, získám x*S Přenásobím zprava maticí S-1, dostanu x

Příklad dešifrování Přijmu y = (0010001) Spočítám m=y*P-1=(0001100) Spočítám syndrom m: synd(m)=m*H=(100) K „chybě“ došlo na 4. místě: x*S*G=(0000100) Na základě generující matice G spočítám x*S = (0100) Přenásobím S-1: x=x*S* S-1=(1010)

Další úvahy Pro konstrukci šifry potřebuji určit matice H, S, P. Na jejich základě jednoduchými algoritmy spočítám matice G, S-1, P-1, K. Pro dešifrování potřebuji znát všechny tyto matice Pro šifrování mi stačí znát matici K Z matice K nelze matice H, S a P jednoduše odvodit.

Symetrická šifra Šifrovací zobrazení y = φ(x,k) Dešifrovací zobrazení x = ψ(y,k)

Asymetrická šifra Šifrovací zobrazení y = φ(x,v) Dešifrovací zobrazení x = ψ(y,t) v … veřejný, známý, šifrovací klíč t …soukromý, tajný, dešifrovací klíč Existuje jednoduchá funkce f: v=f(t) Funkce f -1 je obtížně vyčíslitelná F je jednocestná funkce

Další využití (autorizace, „elektronický podpis“) Pokud navíc platí φ ◦ ψ = ψ ◦ φ Zprávu x „podepíši“ transformací ψ(x,t) a odešlu. Příjemce použije transformaci φ: φ(ψ(x,t),v) = φ ◦ ψ (x) = ψ ◦ φ (x) = x Zpráva je autorizována McEllisův algoritmus nelze pro autorizaci použít

Základní pojmy teorie složitosti algoritmů Časová složitost algoritmů Vyjadřujeme v počtu operací Složitost algoritmu je funkcí velikosti vstupních dat Zajímá nás složitost Minimální Průměrná Maximální Složitost limitní

Příklady výpočtů složitosti Vyhledání minimální hodnoty O(n) Součet matic O(n2) Součin matic O(n3) Seřazení souboru čísel O(n.log n) Úloha obchodního cestujícího n! Úloha o batohu 2n

Porovnání složitosti algoritmů Podstatný rozdíl je mezi složitostí vyjadřitelnou polynomem a složitostí jinou N N2 N8 2N N! 1 2 5 25 400000 32 120 10 100 108 1024 106 15 225 109 32000 1012 20 400 1010 1018 30 900 1011 1032 50 2500 1013 1015 1064 10000 1016 1030 10157

Při 1 000 000 000 operací za s. N N2 N8 2N N! 1 <1s 5 10 15 1 s 15 min 20 10 s 31 let 30 2 min 100 * Věk vesmíru 50 3 h 11 dní 100 3 měs Věk vesmíru

Třídění úloh podle složitosti P-úlohy Je znám algoritmus, který je řeší a má maximální složitost odhadnutelnou polynomickou funkcí NP-úlohy (nedeterministicky polynomiální) Není znám algoritmus, který je řeší a má maximální složitost odhadnutelnou polynomickou funkcí Je znám algortimus s minimální složitostí danou polynomickou funkcí (ověření výsledku)

NP – úplné problémy Patří do třídy NP Lze na sebe navzájem převádět. Pokud bude nalezet p-algoritmus pro jeden z nich, bude fungovat i pro všechny ostatní. Otevřená otázka P=NP? Vypsáno nadací Calyjako jeden ze 7 „problémů tisíciletí“ v roce 2000, odměna 1000000 $ Často řešeny přibližnými a heuristickými metodami

Příklady np-úplných problémů Travel Salesman Problem Knapsack problem Problém splnitelnosti formule Problém parketovatelnosti A dalších minimálně 100 problémů

Diagram složitosti úloh

Další NP problémy Problém faktorizace součinu dvou prvočísel A=p.q, známe A, třeba určit p a q Pro přesnou formulaci je třeba si uvědomit, co je zde velikost vstupních dat. Problém modulárních rovnic f(t) = pt mod q = α Známe-li p,q a t, snadno určíme α Známe-li p, q a α, nelze jednoduše určit t