Substituční šifry

Monoalfabetická šifra

Jedná se o jednu z nejjednodušších šifer, která využívá pouze jednu šifrovou abecedu, tedy každému znaku z originální abecedy náleží jeden znak z šifrový abecedy. Výhodou monoalfabetické šifry je její jednoduchost. Její největší nevýhodou je pak zranitelnost vůči frekvenční analýze. Z jednotlivých písmen či dvojic lze odhadnout spojky a předložky a písmena postupně dosazovat do dalších neznámých slov. Dále lze spočítat výskyt jednotlivých znaků a porovnat je s výskytem písmen v abecedě použitého jazyka. Pokud je text dostatečně dlouhý, lze ho dešifrovat i bez klíče.

Caesarova šifra

Tato šifra byla údajně vymyšlena a používána Juliem Caesarem. Její princip spočívá v nahrazování znaků otevřeného textu písmeny o tři místa dále v abecedě. Lze ale použít i posun o jiný počet míst.


Otevřená abeceda
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
Šifrová abeceda
D E F G H I J K L M N O P Q R S T U V W X Y Z A B C

Příklad:
Tajna Zprava
Wdmqd Csudyd









Atbash

Šifrovací systém vynalezen a používán Židy. Nejdříve je nutné určit vzdálenost písmene od začátku abecedy a nahradit ho písmenem se stejnou vzdáleností od konce. Dochází tedy k nahrazení prvního znaku abecedy posledním, druhého znaku předposledním atd.


Otevřená abeceda
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
Šifrová abeceda
Z Y X W V U T S R Q P O N M L K J I H G F E D C B A

Příklad:
Tajna Zprava
Gzqmz Akizez

Polyalfabetická šifra

Funguje na stejném principu jako monoalfabetická šifra, ale využívá více než jednu šifrovou abecedu. K zašifrování zprávy se používala pomůcka známá jako Vigenérův čtverec. Ve čtverci byla na prvním řádku napsána normální abeceda bez posunu, na každém dalším řádku byla abeceda posunuta o jeden znak - posuvná šifra s klíčem "b", "c" atd. Následně bylo potřeba zvolit klíč. Klíč může být slovo jakékoliv délky větší než jedna - v tomto případě by se opět jednalo o monoalfabetickou šifru. Samotný proces šifrování pak probíhal tak, že první písmeno otevřeného textu se zaměnilo za písmeno odpovídající posunutí o první znak klíče. Druhé písmeno bylo nahrazeno stejným způsobem, ale šifrová abeceda byla posunuta o druhý znak klíče. V případě, že klíč byl kratší než původní text a došlo k použití všech znaků, pokračovalo se opět od prvního znaku klíče.

Vigeneruv Čtverec

Chceme-li zašifrovat otevřený text "Toto je tajna zprava" musíme si nejdříve zvolit heslo. V tomto příkladu nám jako heslo poslouží slovo Kozel. Protože je naše heslo kratší než otevřený text, napíšeme ho víckrát za sebou.

K O Z E  L K  O Z E L K  O Z E L K O
    
T O T O  J E  T A J N A  Z P R A V A
      

K zašifrování textu teď musíme najít první písmeno naší zprávy "T" v prvním řádku Vigenerova čtverce, tímto definujeme sloupec. Teď už nám jen stačí najít první písmeno hesla v prvním sloupci čímž definujeme řádek. První znak šifrového textu nalezneme na místě kde se protne sloupec s řádkem, v tomto případě je to znak "D". Takto pokračujeme s každým písmenem. Zašifrovaný text bude vypadat takto:

Dcss uo hznyk novlfo