Kódování textu a šifrování

Přejít ke cvičením na toto téma »

Kódování i šifrování mají společné to, že mění podobu textu. Mají však jiný účel. Cílem šifrování je uchování tajemství. Cílem kódování není utajení, pouze spolehlivý záznam či přenos zprávy.

Základní kódování textu bylo využíváno ještě před příchodem počítačů. Například Morseova abeceda se používala pro přenos zpráv telegrafem a Braillovo písmo kóduje text pro čtení hmatem. Pro kódování textu v počítačích se používají metody založené na binárních číslech (nuly a jedničky).

Kódování zprávu neutají. Pokud zapíšeme zprávu PES pomocí Morseovy abecedy (.--.|.|...), tak každý, kdo tuto abecedu zná, si může zprávu snadno přečíst. K utajení zprávy slouží šifrování. Lidé rádi něco tají, takže šifrování se používá skoro tak dlouho jako psaní. Již ve starověku se šifrování hojně používalo, známá je například Caesarova šifra. Šifrování hrálo mnohokrát důležitou roli v dějinách, klíčovou událostí bylo například v průběhu druhé světové války prolomení německého šifrovacího stroje Enigma.

Šifrování hraje důležitou roli i dnes. Bez kvalitních šifer by například nebylo možné elektronické obchodování. Každý uživatel internetu pravidelně používá šifrování, i když o tom třeba vůbec neví, protože šifrování provádí automaticky webový prohlížeč.

Téma šifrování si můžete procvičit několika způsoby:

  • Základní šifry – základní principy šifrování (transpozice, substituce) ilustrované na jednoduchých příkladech.
  • Šifry s nápadem – tyto šifry se nepoužívají pro praktické účely, ale dobře poslouží jako trénink myšlení a test základních kryptoanalytických dovedností.
  • Šifrování: pojmy a principy – pokročilejší téma, které se zabývá přesněji způsoby použití šifrování a hlavními pojmy.

Základní kódování textu

Přejít ke cvičením na toto téma »

Informace běžně kódujeme jako text, který zapisujeme na papír pomocí písmen abecedy. Zápis pomocí písmen na papír ale není jediný způsob, jak můžeme text zakódovat.

  • Morseova abeceda přiřazuje každému písmenu kód, který se skládá z teček a čárek. Používala se dříve především pro přenos informací telegrafem.
  • V námořní vlajkové abecedě má každé písmeno svoji vlajku. Text se kóduje jako řada vlajek.
  • V semaforové abecedě vysílající kóduje písmena pomocí různých pozic rukou, ve kterých drží barevné praporky. Stejně jako námořní vlajková abeceda má využití například mezi námořníky pro komunikaci na dálku.
  • Braillovo písmo kóduje písmena pomocí hrbolků v mřížce 2×3. Toto písmo je určeno pro lidi s postižením zraku pro čtení hmatem.
  • Počítače ukládají písmena pomocí číselných kódů. Kódování textu v počítačích se věnuje samostatné téma.

Kódování textu v počítačích

Přejít ke cvičením na toto téma »

V počítači jsou všechny informace uloženy jako nuly a jedničky. Pro uložení textové informace tedy potřebujeme kódování, které text převede na nuly a jedničky. V 60. letech 20. století za tímto účelem vznikla ASCII tabulka, která znakům přiřazovala čísla od 0 do 255 a tato čísla se následně zapsala v binární soustavě do jednoho bytu.

ASCII kódování však umožňovalo kódovat pouze písmena anglické abecedy a některé další základní znaky. Proto byl později vyvinutý standard Unicode, který umožňuje zápis nejen základních písmen, ale i jiných světových abeced a mnoha dalších symbolů (např. sněhuláka: ☃). Jaké další znaky se v Unicode nachází, můžete prozkoumat zde. Zatímco Unicode přiřazuje znakům čísla, různá kódování (např. UTF-8) určují, jak tato čísla převést na jedničky a nuly, které se uloží v počítači. Např. Unicode kóduje sněhuláka jako číslo 2603 v šestnáctkové soustavě. UTF-8 toto číslo zakóduje do tří bytů s hodnotami 11100010, 10011000 a 10000011.

Transpoziční šifry

Transpoziční šifry mění pouze pořadí písmen, nikoliv jejich vzhled. Základní transpoziční šifry jsou založeny na přepsání textu do řádku nebo do mřížky podle jednoduchého principu. Příklady:

  • zápis pozpátku (JABLONEC → CENOLBAJ)
  • zápis ob jedno písmeno (JABLONEC → JOANBELC)
  • prohazování sousedních písmen (JABLONEC → AJLBNOCE)
  • šifrovací mřížka

Existují i složitější transpoziční šifry, které umožňují šifrovat podle hesla.

Substituční šifry

Substituční šifry naopak zachovávají pořadí písmen, ale mění jejich podobu. Základní substituční šifrou je posun v abecedě (nazývaný též Caesarova šifra), kdy písmena nahrazujeme za jiná písmena, např. při posunu o jedna zašifrujeme BRNO → CSOP (B se posune na C, R se posune na S a tak dále). Složitějším příkladem substituční šifry je šifrování podle hesla (Vigenèrova šifra).

Podobné substitučním šifrám je kódování, např. Morseova abeceda, Braillovo písmo, či ASCII tabulka. Kódování samo o sobě však není šifrou, protože zprávu neutají. Když zapíšeme zprávu pomocí Morseovy abecedy, tak každý, kdo tuto abecedu zná, si ji snadno může přečíst.

Při praktických aplikacích šifrování je typicky základní šifrovací princip známý a bezpečnost šifry je založena na utajení klíče. V následujících cvičeních si můžete zkusit šifry, k jejichž vyluštění musíte odhalit jejich šifrovací princip. Takové šifry slouží především pro zábavu, využívají se například hojně v šifrovacích hrách, pokladovkách a soutěžích. I přesto, že tyto šifry nemají přímé praktické použití, můžete se na nich dobře procvičit principy základních šifer, ale i logické myšlení, hledání vzorů a trpělivost.

Šifrování: pojmy a principy

Přejít ke cvičením na toto téma »

Základní situace

Účelem šifrování je utajit zprávu. Obrázek znázorňuje základní situaci: Alice chce poslat Bobovi zprávu. Text této zprávy nazýváme holý text. Tento holý text Alice zašifruje pomocí předem domluveného šifrovacího postupu a tajného klíče. Tím vznikne zašifrovaný text, který Alice pošle Bobovi. Bob zašifrovaný text pomocí klíče rozšifruje a může si přečíst zprávu.

Šifrovaný text může někdo zachytit (na obrázku je to Eva). Eva se může pokusit zprávu odhalit, má to ale těžké, protože nezná tajný klíč (a případně ani použitý šifrovací princip). Provádí tedy luštění, které je o kus náročnější než rozšifrování.

Pojmy

  • Kryptologie je odborný název pro šifrování a luštění šifer. Dvě hlavní části kryptologie jsou kryptografie a kryptoanalýza.
  • Kryptografie se zabývá samotnými šifrovacími postupy, které používají ti, kdo spolu chtějí utajeně komunikovat (na obrázku Alice a Bob).
  • Kryptoanalýza se zabývá tím, co dělá na obrázku Eva, tedy jak vyluštit zachycenou zprávu, u které neznáme šifrovací klíč či způsob zašifrování.

Typy šifer

  • Transpozice mění pouze pořadí písmen, nikoliv jejich vzhled.
  • Substituce zachovává pořadí písmen, ale mění jejich podobu.
    • Monoalfabetická substituce nahrazuje jedno písmeno vždy za stejný znak. Příkladem je Caesarova šifra (posun v abecedě).
    • Polyalfabetická substituce nahrazuje písmeno za různé znaky v závislosti na poloze v textu. Příkladem je Vigenèrova šifra
  • Steganografie je snaha o úplné utajení existence zprávy, například pomocí neviditelného inkoustu nebo nenápadném skrytí textu v obrázku.

Metody kryptoanalýzy (prolomení šifer)

Útok hrubou silou spočívá ve vyzkoušení všech možných klíčů.

Frekvenční analýza spočívá v analýze frekvencí (četností) znaků ve zprávě. Tento způsob analýzy šifer je založen na využití toho, že písmena v jazyce jsou zastoupena velmi nerovnoměrně, např. v češtině je písmeno E velmi časté, zatímco F málo časté.

Moderní šifry

Moderní šifry jsou výrazně složitější než zápis pozpátku či posun v abecedě, typicky využívají pokročilou matematiku a složité algoritmy. Příkladem moderní šifry je RSA.

Moderní šifry jsou dvou základních typů:

  • Symetrické šifry využívají pro šifrování i dešifrování stejný tajný klíč (stejně jako na výše uvedeném obrázku s Alicí a Bobem).
  • Asymetrické šifry využívají pro zašifrování veřejný klíč a pro dešifrování tajný soukromý klíč. Tyto šifry lze využít i pro realizaci elektronického podpisu.
NAPIŠTE NÁM

Děkujeme za vaši zprávu, byla úspěšně odeslána.

Napište nám

Nevíte si rady?

Nejprve se prosím podívejte na časté dotazy:

Čeho se zpráva týká?

Vzkaz Obsah Ovládání Přihlášení Licence