E-mailem dostanete šifrový text, který vznikl zašifrováním kousku anglického textu modifikovanou Vigenèrovou šifrou. Cílem je odhalit použité heslo. Modifikace šifry spočívá ve dvou aspektech:
Můžete si prohlédnout šifrovací skript.
Následující tabulka ukazuje přiřazení čísel jednotlivým znakům abecedy. Máme tak např. "Q" ⊕ "?" = 22 ⊕ 5 = 101102 ⊕ 001012 = 100112 = 19 = "N". Tabulka navíc udává relativní četnost jednotlivých znaků v původním textu.
Číslo | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 |
---|---|---|---|---|---|---|---|---|
Znak | ! | ' | , | . | ; | ? | A | B |
Četnost | 0.137 % | 1.244 % | 2.117 % | 0.853 % | 0.306 % | 0.109 % | 8.006 % | 1.372 % |
Číslo | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 |
Znak | C | D | E | F | G | H | I | J |
Četnost | 1.725 % | 5.079 % | 12.274 % | 1.879 % | 2.078 % | 7.728 % | 5.698 % | 0.084 % |
Číslo | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 |
Znak | K | L | M | N | O | P | Q | R |
Četnost | 0.989 % | 4.023 % | 2.034 % | 6.462 % | 7.155 % | 1.185 % | 0.069 % | 4.873 % |
Číslo | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 |
Znak | S | T | U | V | W | X | Y | Z |
Četnost | 5.347 % | 9.137 % | 2.512 % | 0.754 % | 2.887 % | 0.067 % | 1.785 % | 0.034 % |
Pro účely programování vám jistě bude lépe vyhovovat následující formát tabulky:
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"]
p = [0.137, 1.244, 2.117, 0.853, 0.306, 0.109, 8.006, 1.372, 1.725, 5.079, 12.274, 1.879, 2.078, 7.728, 5.698, 0.084, 0.989, 4.023, 2.034, 6.462, 7.155, 1.185, 0.069, 4.873, 5.347, 9.137, 2.512, 0.754, 2.887, 0.067, 1.785, 0.034]