KLASIKA A HISTORIE ŠIFER
V tomto článku bych se chtěl zabývat historickými šiframi, ale
takovými,aby šly praktikovat na počítači. Proto se tu nebudu zmiňovat
o různých fintách s papírem, šifrovacími knihami atp.
V historii byly velice oblíbené různé substituce, ale protože
nebyly vynalezeny počítače a ani jiné složitější stroje, byly
používány různé šifrovací tabulky. První, o které se chci zmínit, je
TABULA RECTA, kterou jako první publikoval roku 1581 Johannes
Trithemius. Šifrovalo se podle tabulky, ve které bylo N nad sebou
umístěných abeced posunutých o jedno písmeno (N = počet písmen
abecedy (v Trithemově době N = 24 (italská abeceda), dnes N = 26)).
První písmeno se šifrovalo prvním řádkem, druhé druhým, atd. Došlo-li
se k Ntému písmenu, šifrovalo se zase od začátku.
Tabula Recta
Otevřený text OT = VYHEN
Šifrovaný text ST= VZJHR
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
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 a
c 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
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
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 d
f g h i j k l m n o p q r s t u v w x y z a b c d e
g h i j k l m n o p q r s t u v w x y z a b c d e f
. . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . .
v w x y z a b c d e f g h i j k l m n o p q r s t u
w x y z a b c d e f g h i j k l m n o p q r s t u v
x y z a b c d e f g h i j k l m n o p q r s t u v w
y z a b c d e f g h i j k l m n o p q r s t u v w x
z 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
Na počítači samozřejmě tabulku nepotřebujeme. Zastoupí ji vzorec
ST = (OT + (E-1)) mod N, kdy E je pořadí písmene v textu a N délka
abecedy (pro abecedu A=0,B=1,..,Z=25). Dešifrovaní probíhá obdobně
dle vztahu OT = (ST + (N-(E-1)) mod N
Další podobnou šifrou je VIGENEROVA šifra. Jak již název napovídá je
nazvána po Francouzovi Blaise de Vigenerem, který ji však nevymyslel.
Vynalezl ji Giovanni Battista Belaso, který ji zveřejnil roku 1553.
Využívá také výše zmíněnou tabulku, ale použití řádků nezávisí na
jejich pořadí, ale na klíči.
Klíč K = BAF
OT = VYHEN
Necháme klíč běžet na textem vznikne
BAFBA
VYHEN
OT šifrujeme řádkem, který začíná na písmeno klíče
ST = WYMFN
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
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 a
c 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
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
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 d
F g h i j k l M n o p q r s t u v w x y z a b c d e
g h i j k l m n o p q r s t u v w x y z a b c d e f
. . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . .
u v w x y z a b c d e f g h i j k l m n o p q r s t
v w x y z a b c d e f g h i j k l m n o p q r s t u
w x y z a b c d e f g h i j k l m n o p q r s t u v
x y z a b c d e f g h i j k l m n o p q r s t u v w
y z a b c d e f g h i j k l m n o p q r s t u v w x
z 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
A jako u předchozí šifry tuto tabulku nepotřebujeme, máme-li
počítač. Pro tuto šifru platí vzorec ST = (OT + K) mod N, kde K je
písmeno klíče. (pro abecedu A=0,B=1,..,Z=25. Dešifrováni probíhá
stejně jen podle klíče K = N - K
Roku 1563 vydal Giovanni Battista Porta knihu, ve které byla
popsána obecná polyalfabetická šifra. Tu dostaneme z Vigenerovy
pouhým zpřeházením řádků.
Nakonec předkládám prográmek, který vám předvede první dvě
z dnes zmíněných šifer.
Poznámky k programu
a) šifrování i dešifrování funguje, ale není jisté jde-li opravdu
o zmíněné šifry
b) neumí pracovat s diakritikou
c) je psán jako ukázka, takže je v praxi asi nepoužitelný
d) můžete ho exportovat prostředním myšítkem
No a protože je tento program jen ukázkový přikládám druhý,
lepší a ještě lacinější. Šlo to těžko, ale tady to máte. Tento
program šifruje obecný soubor (dokonce i EXE) a běhá celkem dobře
takže se dá po drobných úpravách použít i prakticky (zašifrovat bratrovy
hry, otcovy důležité materiály a pak zapomenout klíč atp.)
HIPP
(některé informace přejaty z časopisu CHIP)
výheň