16
по модулю мощности алфавита. Например, зашифруем открытый текст
шифр
Виженера на ключе з а д а ч а. Длина блоков (и ключа) равна 6.
Текст
разбивается на два блока: (шифрви)(женера), каждый из которых побуквенно
складывается с ключом: (шифрви)+(задача)=(25,9,21,17,3,9)+
32
(8,1,5,1,24,1) =
= (33,10,26,18,27,10)
mod32
=(1,10,26,18,27,10) = АЙЩСЪЙ,
(женера)+(задача)=(7,6,14,6,17,1)+
32
(8,1,5,1,24,1)=(15,7,19,7,9,2)=ОЖТЖИБ.
Итоговая криптограмма: АЙЩСЪЙОЖТЖИБ.
При дешифровании из
блока криптограммы побуквенно вычитается
ключ. Так, зная, что криптограмма LAGZJEUUXRTJE получена на ключе
Виженера p r o b l e m («задача»), легко восстанавливаем открытый текст.
Сначала из первого блока криптограммы побуквенно вычитаем ключ:
LAVGZJE – PROBLEM = (12,1,22,7,26,10,5) –
26
(16,18,15,2,12,5,13) = (-4,
-17,7,5,14,5,-8)
mod26
=
(22,9,7,5,14,5,18) = vigener,
затем ключ побуквенно
вычитается из второго блока криптограммы:
UUXRTJE-PROBLEM=(21,21,24,18,20,10,5)-
26
(16,18,15,2,12,5,13) =
=(5,3,9,16,8,5,-8)
mod26
=(5,3,9,16,8,5,18)=ecipher. Открытый текст: Vigenere
cipher (шифр Виженера).
В дальнейшем понадобится и
умножение по модулю m: оно
выполняется аналогично сложению – в качестве результата
берется остаток
от деления на
m обычного произведения сомножителей. Например, для
умножения по модулю 4 получаем следующую таблицу:
×
4
0 1 2 3
0
0 0 0 0
1
0 1 2 3
2
0 2 0 2
3
0 3 2 1
Отметим необычное равенство 2×
4
2=0, оба сомножителя отличны от
нуля, а их произведение равно нулю.
Составьте таблицы сложения и умножения по модулям 5 и 6. По модулю 6 для
каждого из чисел 1, 2, 3, 4, 5, 0 укажите противоположное. Например, -2
mod 6
=4.