Aha, tak to máš tu tabulku ale transformovanou poněkud blbě. Základ je že
A+A=A! Takže takhle:
| A B C Č D E F G H CH I J K L M N O P R Ř S Š T U V X Y Z Ž
---+--------------------------------------------------------------------------------------
A | A B C Č D E F G H CH I J K L M N O P R Ř S Š T U V X Y Z Ž
B | B C Č D E F G H CH I J K L M N O P R Ř S Š T U V X Y Z Ž A
C | C Č D E F G H CH I J K L M N O P R Ř S Š T U V X Y Z Ž A B
Č | Č D E F G H CH I J K L M N O P R Ř S Š T U V X Y Z Ž A B C
D | D E F G H CH I J K L M N O P R Ř S Š T U V X Y Z Ž A B C Č
E | E F G H CH I J K L M N O P R Ř S Š T U V X Y Z Ž A B C Č D
F | F G H CH I J K L M N O P R Ř S Š T U V X Y Z Ž A B C Č D E
G | G H CH I J K L M N O P R Ř S Š T U V X Y Z Ž A B C Č D E F
H | H CH I J K L M N O P R Ř S Š T U V X Y Z Ž A B C Č D E F G
CH | CH I J K L M N O P R Ř S Š T U V X Y Z Ž A B C Č D E F G H
I | I J K L M N O P R Ř S Š T U V X Y Z Ž A B C Č D E F G H CH
J | J K L M N O P R Ř S Š T U V X Y Z Ž A B C Č D E F G H CH I
K | K L M N O P R Ř S Š T U V X Y Z Ž A B C Č D E F G H CH I J
L | L M N O P R Ř S Š T U V X Y Z Ž A B C Č D E F G H CH I J K
M | M N O P R Ř S Š T U V X Y Z Ž A B C Č D E F G H CH I J K L
N | N O P R Ř S Š T U V X Y Z Ž A B C Č D E F G H CH I J K L M
O | O P R Ř S Š T U V X Y Z Ž A B C Č D E F G H CH I J K L M N
P | P R Ř S Š T U V X Y Z Ž A B C Č D E F G H CH I J K L M N O
R | R Ř S Š T U V X Y Z Ž A B C Č D E F G H CH I J K L M N O P
Ř | Ř S Š T U V X Y Z Ž A B C Č D E F G H CH I J K L M N O P R
S | S Š T U V X Y Z Ž A B C Č D E F G H CH I J K L M N O P R Ř
Š | Š T U V X Y Z Ž A B C Č D E F G H CH I J K L M N O P R Ř S
T | T U V X Y Z Ž A B C Č D E F G H CH I J K L M N O P R Ř S Š
U | U V X Y Z Ž A B C Č D E F G H CH I J K L M N O P R Ř S Š T
V | V X Y Z Ž A B C Č D E F G H CH I J K L M N O P R Ř S Š T U
X | X Y Z Ž A B C Č D E F G H CH I J K L M N O P R Ř S Š T U V
Y | Y Z Ž A B C Č D E F G H CH I J K L M N O P R Ř S Š T U V X
Z | Z Ž A B C Č D E F G H CH I J K L M N O P R Ř S Š T U V X Y
Ž | A B C Č D E F G H CH I J K L M N O P R Ř S Š T U V X Y Z ŽTen horní řádek a levý sloupec by tam ani nemusely být, tabulka je obsahuje v prvním řádku a prvním sloupci.
Tímhle se odstraní to +1, a z toho vyplývající dvojitý posun. Ono to totiž blbne ještě hůř než to na první pohled vypadá.
Druhá věc je to -1. Při překročení velikosti tabulky děláš modulo, ale když máš 29 znaků s čísly 0..28, tak nemůžeš udělat modulo 28 aby ti vyšlo 0..27!
Třetí věc - zkusil sis to po zašifrování zase dešifrovat? Když uděláš malou úpravu v téhle proceduře, tak pro dešifrování bude stačit jenom změna jediného znaménka z + na - (v tvojí původní podobě bys těch znamének musel otáčet víc). Tušíš jaká úprava by to měla být?
No a poslední věc, pokud bys nechtěl mít přepínač šifrování/dešifrování, nebo dvě různé procedury (programy), můžeš zapřemýšlet nad tou reciprokou abecedou (není to
žádná novinka). Pro tu totiž používáš úplně stejný postup při šifrování i dešifrování, přitom stačí jenom malá změna tabulky. Vlevo najdeš písmeno hesla, nahoře písmeno textu, a získáš tím totéž co dělají šifrovací stroje jako Enigma nebo Hagelin:
| Ž Z Y X V U T Š S Ř R P O N M L K J I CH H G F E D Č C B A
---+--------------------------------------------------------------------------------------
A | A B C Č D E F G H CH I J K L M N O P R Ř S Š T U V X Y Z Ž
B | B C Č D E F G H CH I J K L M N O P R Ř S Š T U V X Y Z Ž A
C | C Č D E F G H CH I J K L M N O P R Ř S Š T U V X Y Z Ž A B
Č | Č D E F G H CH I J K L M N O P R Ř S Š T U V X Y Z Ž A B C
D | D E F G H CH I J K L M N O P R Ř S Š T U V X Y Z Ž A B C Č
E | E F G H CH I J K L M N O P R Ř S Š T U V X Y Z Ž A B C Č D
F | F G H CH I J K L M N O P R Ř S Š T U V X Y Z Ž A B C Č D E
G | G H CH I J K L M N O P R Ř S Š T U V X Y Z Ž A B C Č D E F
H | H CH I J K L M N O P R Ř S Š T U V X Y Z Ž A B C Č D E F G
CH | CH I J K L M N O P R Ř S Š T U V X Y Z Ž A B C Č D E F G H
I | I J K L M N O P R Ř S Š T U V X Y Z Ž A B C Č D E F G H CH
J | J K L M N O P R Ř S Š T U V X Y Z Ž A B C Č D E F G H CH I
K | K L M N O P R Ř S Š T U V X Y Z Ž A B C Č D E F G H CH I J
L | L M N O P R Ř S Š T U V X Y Z Ž A B C Č D E F G H CH I J K
M | M N O P R Ř S Š T U V X Y Z Ž A B C Č D E F G H CH I J K L
N | N O P R Ř S Š T U V X Y Z Ž A B C Č D E F G H CH I J K L M
O | O P R Ř S Š T U V X Y Z Ž A B C Č D E F G H CH I J K L M N
P | P R Ř S Š T U V X Y Z Ž A B C Č D E F G H CH I J K L M N O
R | R Ř S Š T U V X Y Z Ž A B C Č D E F G H CH I J K L M N O P
Ř | Ř S Š T U V X Y Z Ž A B C Č D E F G H CH I J K L M N O P R
S | S Š T U V X Y Z Ž A B C Č D E F G H CH I J K L M N O P R Ř
Š | Š T U V X Y Z Ž A B C Č D E F G H CH I J K L M N O P R Ř S
T | T U V X Y Z Ž A B C Č D E F G H CH I J K L M N O P R Ř S Š
U | U V X Y Z Ž A B C Č D E F G H CH I J K L M N O P R Ř S Š T
V | V X Y Z Ž A B C Č D E F G H CH I J K L M N O P R Ř S Š T U
X | X Y Z Ž A B C Č D E F G H CH I J K L M N O P R Ř S Š T U V
Y | Y Z Ž A B C Č D E F G H CH I J K L M N O P R Ř S Š T U V X
Z | Z Ž A B C Č D E F G H CH I J K L M N O P R Ř S Š T U V X Y
Ž | A B C Č D E F G H CH I J K L M N O P R Ř S Š T U V X Y Z Ž