Prezentace se nahrává, počkejte prosím

Prezentace se nahrává, počkejte prosím

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

Podobné prezentace


Prezentace na téma: "McEllisova šifra. James Ellis(1924-1997) Clifford Cocks, Malcolm Williamson Alice Bob zpráva šum Odstranění šumu."— Transkript prezentace:

1 McEllisova šifra

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

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

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

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

6 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 = P T, velikost n x n Součin K = S * G * P, velkost n x k

7 Příklad Generující matice G Inverzní matice S

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

9 Příklad Součinová matice K

10 Š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é

11 Příklad K= X = (1010) t = ( ) X*K = ( ) y = ( )

12 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

13 Příklad dešifrování Přijmu y = ( ) Spočítám m=y*P -1 =( ) Spočítám syndrom m: synd(m)=m*H=(100) K „chybě“ došlo na 4. místě: x*S*G=( ) 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)

14 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.

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

16 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

17 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

18 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í

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

20 Porovnání složitosti algoritmů Podstatný rozdíl je mezi složitostí vyjadřitelnou polynomem a složitostí jinou NN2N2 N8N8 2N2N N!N!

21 Při operací za s. NN2N2 N8N8 2N2N N!N! 1<1s 5 10<1s 15<1s1 s<1s15 min 20<1s10 s<1s31 let 30<1s2 min1 s 100 * Věk vesmíru 50<1s3 h11 dní 100<1s3 měs Věk vesmíru

22 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)

23 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 $ Často řešeny přibližnými a heuristickými metodami

24 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ů

25 Diagram složitosti úloh

26 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) = p t mod q = α –Známe-li p,q a t, snadno určíme α –Známe-li p, q a α, nelze jednoduše určit t


Stáhnout ppt "McEllisova šifra. James Ellis(1924-1997) Clifford Cocks, Malcolm Williamson Alice Bob zpráva šum Odstranění šumu."

Podobné prezentace


Reklamy Google