IT rekvalifikácia. Seniorní programátori zarábajú až 6 000 €/mesiac a rekvalifikácia je prvým krokom. Zisti, ako na to!

Diskusia – Vernamova šifra

Späť

Upozorňujeme, že diskusie pod našimi online kurzami sú nemoderované a primárne slúžia na získavanie spätnej väzby pre budúce vylepšenie kurzov. Pre študentov našich rekvalifikačných kurzov ponúkame možnosť priameho kontaktu s lektormi a študijným referentom pre osobné konzultácie a podporu v rámci ich štúdia. Toto je exkluzívna služba, ktorá zaisťuje kvalitnú a cielenú pomoc v prípade akýchkoľvek otázok alebo projektov.

Komentáre
Avatar
coells
Tvůrce
Avatar
coells:20.3.2016 22:00

S termínem "neprolomitelná šifra" bys měl být opatrný, tvoje implementace je prolomitelná velice snadno a bez ohledu na to, že je to hračka, není ani bezpečná.

 
Odpovedať
20.3.2016 22:00
Avatar
Lako
Člen
Avatar
Odpovedá na coells
Lako:20.3.2016 23:34

Můžeš popsat jakým způsobem je místní implementace prolomitelná? Přijde mi, že když máš prostě text stejně dlouhý jako klíč, který asi nějak odečteš (nevím jak funguje ta šifra), tak na tom není moc co zkazit a s tím zašifrovaným textem toho moc nevymyslíš, nebo se pletu?

 
Odpovedať
20.3.2016 23:34
Avatar
coells
Tvůrce
Avatar
Odpovedá na Lako
coells:21.3.2016 0:23

Pleteš se :-)

Přečti si podmínky spolehlivosti pro OTP šifry a zamysli se nad tím, jestli jsou splněny.
Tady jsou porušeny hned dvě - uniformní distribuce a jedinečnost.

Existují různé útoky, v tomhle případě je nejjednodušší použít útok na klíč, protože první problém je v tlačítku generovat.
Máš jenom 248 různých klíčů a šifru můžeš použít jako orákulum.
Za den lze ke všemu vygenerovat jenom k*236 možných klíčů, což je extrémně malé číslo.
Navíc klíč nesmí mít závislé komponenty a už vůbec ne být lineární a tady je lineární v kongruenci.
A to ani nemluvím o CPA útoku, kde ti bude stačit řádově pár tisíc pokusů na odhalení klíče, to jsou milisekundy na CPU.

Výsledný cypher text ke všemu nemá uniformní distribuci a leakuje informace o plaintextu.
Z toho důvodu se u OTP využívá operace XOR, která při uniformní distribuci klíče zajišťuje

  1. nezávislost plain a cypher textu
  2. uniformní distribuci cypher textu
  3. závislost mezi klíčem a cypher textem, tím garantuje inverzní funkci

Na samotný cypher text se pak dá útočit přes nízkou entropii klíče i zprávy s využitím orákula.
OTP šifry se studenti běžně učí rozbíjet, aby pochopili důležitost sémantiky šifry a naučili se dodržovat podmínky.

 
Odpovedať
21.3.2016 0:23
Avatar
Odpovedá na coells
Martin Štěpánek :21.3.2016 15:10

Takže, když udělám, aby se klíč generoval přes celou unicode sadu místo jen písmen a číslic, bude neprolomitelná? Ono totiž je jediná věc, kterou jsem úplně nedomyslel. :-)

Odpovedať
21.3.2016 15:10
Všechno jde naprogramovat, chce to jen čas a chuť...
Avatar
Martin Dráb
Tvůrce
Avatar
Odpovedá na Martin Štěpánek
Martin Dráb:21.3.2016 15:25

Já bych se žádnou znakovou sadou nezatěžoval a generoval klíč prostě náhodně z rozsahu 0..2^K-1, kde K je dálka klíče (tzn. náhodně generovaná posloupnost bitů). Nevidím žádný rozumný důvod, proč klíč omezovat třeba na tisknutelné znaky.

Odpovedať
21.3.2016 15:25
2 + 2 = 5 for extremely large values of 2
Avatar
coells
Tvůrce
Avatar
 
Odpovedať
21.3.2016 16:28
Avatar
Odpovedať
21.3.2016 17:01
Všechno jde naprogramovat, chce to jen čas a chuť...
Avatar
coells
Tvůrce
Avatar
Odpovedá na Martin Štěpánek
coells:21.3.2016 17:22

Proč? Protože v předchozím příspěvku jsem napsal hned několik důvodů a ty se mě takhle zeptáš na jediný z nich.
Na wikipedii fikaně píšou "v principu nerozluštitelná", nepíšou "nerozluštitelná" ale v článek je stejně nepřesný a s chybami.

Principiální důkaz uvedl ve 40. letech Shannon, ten ale stojí na podmínkách, které zatím nedokážeš pochopit, protože potřebuješ matematiku.
Až budeš na vysoké studovat kryptografii, vysvětlí ti to tam, prozatím se musíš spokojit s tím, že prostě nebude.
Je to věc pravděpodobnosti a statistiky a středoškolská matematika na vysvětlení nestačí.

Když šifru implementuje amatér, není dokonce ani bezpečná, natož nerozluštitelná.
Během kurzu jsem za pár minut rozbil OTP implementovanou mnohem lépe, než je ta tvoje, rozbití špatně použité AES256 mi trvalo asi 30 sekund, diskrétní logaritmy a RSA za pár minut.
V klidu si s tím hraj, ale nenech se unést falešným pocitem bezpečnosti nebo toho, že bys to dokázal správně naimplementovat a použít.

 
Odpovedať
21.3.2016 17:22
Avatar
hanpari
Člen
Avatar
Odpovedá na Martin Štěpánek
hanpari:21.3.2016 17:32

Vypadá to, že přispěju také troškou do mlýna :)

http://cryptopals.com/
https://www.coursera.org/courses?…

PS:
Opravdu se musíte všichni odkazovat na wikipedii?
Jedna věc je znalost kryptografie, druhá pak pochopení prostého faktu, že wikipedie není autoritativní zdroj informací. Tam si může kdokoliv plácnout cokoliv.

Jediný autoritativní zdroj informací, o kterém vím, je Stopařův průvodce po galaxii. :)

 
Odpovedať
21.3.2016 17:32
Avatar
dejma
Člen
Avatar
Odpovedá na hanpari
dejma:23.3.2016 16:46

@hanpari

Jediný autoritativní zdroj informací, o kterém vím, je Stopařův průvodce po galaxii.

Pod to bych se rád podepsal. Sorry za OT

 
Odpovedať
23.3.2016 16:46
Robíme čo je v našich silách, aby bola tunajšia diskusia čo najkvalitnejšia. Preto do nej tiež môžu prispievať len registrovaní členovia. Pre zapojenie sa do diskusie sa zaloguj. Ak ešte nemáš účet, zaregistruj sa, je to zadarmo.

Zatiaľ nikto nevložil komentár - buď prvý!