Skip to content
Snippets Groups Projects
Commit 3701a306 authored by Martin Mareš's avatar Martin Mareš
Browse files

Merge branch 'master' into 'master'

Překlepy

See merge request !1
parents fb53a617 df2f90f8
No related branches found
No related tags found
1 merge request!1Překlepy
...@@ -163,7 +163,7 @@ Zatímco symetrické šifry obvykle mají lineární časovou složitost, všech ...@@ -163,7 +163,7 @@ Zatímco symetrické šifry obvykle mají lineární časovou složitost, všech
\:Alice zašifruje klíč~$N$ asymetricky: $z = E_A(K_E, y)$. \:Alice zašifruje klíč~$N$ asymetricky: $z = E_A(K_E, y)$.
\:Alice pošle Bobovi $y$ a~$k$. \:Alice pošle Bobovi $y$ a~$k$.
\:Bob použije asymetrickou šifru, aby získal klíč $N = D_A(K_D, z)$. \:Bob použije asymetrickou šifru, aby získal klíč $N = D_A(K_D, z)$.
\:Bob použije symetrickou šifry, aby získal zprávu $x = D_S(N, y)$. \:Bob použije symetrickou šifru, aby získal zprávu $x = D_S(N, y)$.
\endlist \endlist
} }
...@@ -218,7 +218,7 @@ Začneme triviálním protokolem, postupně budeme odhalovat jeho slabiny a opra ...@@ -218,7 +218,7 @@ Začneme triviálním protokolem, postupně budeme odhalovat jeho slabiny a opra
\subsection{První pokus: potřebujeme padding} \subsection{První pokus: potřebujeme padding}
Použijeme symetrickou šifru. Než Bob odjede, domluví se s~Alicí na nějakém klíči, ideálně náhodně vygenerovaném. Použijeme symetrickou šifru. Než Bob odjede, domluví se s~Alicí na nějakém klíči, ideálně náhodně vygenerovaném.
Pokaždé když bude chtít Alice chtít poslat zprávu, vytvoří řetězec tvaru {\tt PRIHOD\sp 12345} Pokaždé když bude chtít Alice poslat zprávu, vytvoří řetězec tvaru {\tt PRIHOD\sp 12345}
nebo {\tt KONEC}, zašifruje ho a~odešle. nebo {\tt KONEC}, zašifruje ho a~odešle.
Co je na tomto protokolu špatně? Především z~něj \uv{prosakuje} spousta informací. Jelikož symetrické šifry Co je na tomto protokolu špatně? Především z~něj \uv{prosakuje} spousta informací. Jelikož symetrické šifry
...@@ -231,7 +231,7 @@ Tomu se říká \em{padding} neboli \em{vycpávka}. Důležité je, aby padding ...@@ -231,7 +231,7 @@ Tomu se říká \em{padding} neboli \em{vycpávka}. Důležité je, aby padding
když přijmeme opadovanou zprávu, musíme být schopni padding odstranit a získat zprávu původní. když přijmeme opadovanou zprávu, musíme být schopni padding odstranit a získat zprávu původní.
Jelikož naše zprávy jsou textové a nekončí na mezeru, stačí na jejich konec přidat mezery. Jelikož naše zprávy jsou textové a nekončí na mezeru, stačí na jejich konec přidat mezery.
Aliciny peněžní rezervy sotva tvoří víc než $10^{13}$ tolarů,\foot{Jak jsme k~číslu přišli: Aliciny peněžní rezervy sotva tvoří víc než $10^{13}$ tolarů,\foot{Jak jsme k~číslu přišli:
Ekonomové odhadují že peněz v~hotovosti a na snadno dostupných účtech Ekonomové odhadují, že peněz v~hotovosti a na snadno dostupných účtech
je cca $8\cdot 10^{12}\;{\rm USD}$. Viz \url{https://www.rankred.com/how-much-money-is-there-in-the-world/}. je cca $8\cdot 10^{12}\;{\rm USD}$. Viz \url{https://www.rankred.com/how-much-money-is-there-in-the-world/}.
} takže stačí na částku rezervovat 13 číslic a na celou zprávu 20 znaků. } takže stačí na částku rezervovat 13 číslic a na celou zprávu 20 znaků.
...@@ -243,7 +243,7 @@ vidí v~televizním přenosu, jak Bob zareagoval na kterou zašifrovanou zprávu ...@@ -243,7 +243,7 @@ vidí v~televizním přenosu, jak Bob zareagoval na kterou zašifrovanou zprávu
slovník známých zpráv s~jejich významy. slovník známých zpráv s~jejich významy.
Pomoc je snadná: Před šifrováním ke zprávě přidáme nějakou nonci, třeba náhodný 64-bitový Pomoc je snadná: Před šifrováním ke zprávě přidáme nějakou nonci, třeba náhodný 64-bitový
řetězec. Pak už bude velmi nepravděpodobně, že by útočník potkal tutéž zašifrovanou zprávu řetězec. Pak už bude velmi nepravděpodobné, že by útočník potkal tutéž zašifrovanou zprávu
vícekrát. vícekrát.
\subsection{Přehrávací útoky: hodí se sériová čísla} \subsection{Přehrávací útoky: hodí se sériová čísla}
...@@ -277,10 +277,10 @@ jeho nejvyšší bit), takže Bob napříště zahodí všechny autentické zpr ...@@ -277,10 +277,10 @@ jeho nejvyšší bit), takže Bob napříště zahodí všechny autentické zpr
Také můžeme upravovat částky. Pokud uhodneme, kolikamístnou částku Alice poslala (to se dá Také můžeme upravovat částky. Pokud uhodneme, kolikamístnou částku Alice poslala (to se dá
podle průběhu dražby tipovat), můžeme následující mezeru změnit na nulu a tím částku vynásobit podle průběhu dražby tipovat), můžeme následující mezeru změnit na nulu a tím částku vynásobit
deseti. Navíc první číslice bude často jednička\foot{Pravděpodobně se i zde uplatňuje tzv. deseti. Navíc první číslice bude často jednička\foot{Pravděpodobně se i zde uplatňuje tzv.
\linkurl{https://cs.wikipedia.org/wiki/Benford\%C5\%AFv_z\%C3\%A1kon}{Benfordův zákon}.} \linkurl{https://cs.wikipedia.org/wiki/Benford\%C5\%AFv_z\%C3\%A1kon}{Benfordův zákon}.},
a pokud si to útočník správně tipne, může ji změnit na jakoukoliv jinou číslici. a pokud si to útočník správně tipne, může ji změnit na jakoukoliv jinou číslici.
Konečně můžeme zkusit změnit {\tt PRIHOD} na {\tt KONEC\sp} a tím donutit Boba odejít z~dražby. Konečně můžeme zkusit změnit {\tt PRIHOD} na {\tt KONEC\sp}, a tím donutit Boba odejít z~dražby.
Na to bychom ale potřebovali, aby Bob ignoroval přebytečné číslice za příkazem {\tt KONEC}. Na to bychom ale potřebovali, aby Bob ignoroval přebytečné číslice za příkazem {\tt KONEC}.
Nebo pokud bychom uhodli, že Alice chce skončit, mohli bychom naopak z~konce udělat jakékoliv Nebo pokud bychom uhodli, že Alice chce skončit, mohli bychom naopak z~konce udělat jakékoliv
přihození. přihození.
...@@ -307,16 +307,16 @@ Alice si bude udržovat počítadlo zpráv a podle něj nastavovat sekvenční ...@@ -307,16 +307,16 @@ Alice si bude udržovat počítadlo zpráv a podle něj nastavovat sekvenční
Nonce bude generovat náhodně. Nonce bude generovat náhodně.
Bob si bude pamatovat poslední přijaté sekvenční číslo. Bob si bude pamatovat poslední přijaté sekvenční číslo.
Když mu přijde zpráva, nejdříve ověří podpis a pokud nesouhlasí, zprávu zahodí. Když mu přijde zpráva, nejdříve ověří podpis, a pokud nesouhlasí, zprávu zahodí.
Jinak zprávu dešifruje, porovná její sekvenční číslo s~posledním přijatým, a~pokud Jinak zprávu dešifruje, porovná její sekvenční číslo s~posledním přijatým, a~pokud
nové není větší, zprávu zahodí. nové není větší, zprávu zahodí.
Pokud zpráva prošla i~tímto textem, Bob ji považuje za autentickou a provede příkaz. Pokud zpráva prošla i~tímto textem, Bob ji považuje za autentickou a provede příkaz.
\subsection{Překvapení na závěr} \subsection{Překvapení na závěr}
Alice je spokojená -- vydražila svého milovaného Tuxe všem nepřátelům navzdory. Alice je spokojená -- vydražila svého milovaného Tuxe navzdory všem nepřátelům.
Tak se při příští dražbě pokusí osvědčený protokol použít znovu. Ale ouha, nepřátelům Tak se při příští dražbě pokusí osvědčený protokol použít znovu. Ale ouha, nepřátelům
se najednou daří postrkávat příkazy, které Alice neposílala. se najednou daří podstrkovat příkazy, které Alice neposílala.
Co je špatně? Inu, sériová čísla sice brání přehrávání zpráv v~rámci jedné instance protokolu, Co je špatně? Inu, sériová čísla sice brání přehrávání zpráv v~rámci jedné instance protokolu,
ale už ne kopírování zpráv z~jedné instance protokolu do druhé. ale už ne kopírování zpráv z~jedné instance protokolu do druhé.
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment