1 / 17

McEllisova šifra

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=2 r -1 x r. Příslušná generující matice G má velikost n x k=2 r -r-1

duff
Download Presentation

McEllisova šifra

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. McEllisova šifra

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

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

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

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

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

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

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

  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 = (0000100) • X*K = (0010101) • y = (0010001)

  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 = (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)

  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

More Related