Мультипликативный шифр
При использовании техники шифрования Цезаря шифрование и дешифрование символов включает преобразование значений в числа с помощью простой базовой процедуры сложения или вычитания.
Если умножение используется для преобразования в зашифрованный текст, это называется wrap-aroundситуация. Учтите, что буквы и соответствующие цифры будут использоваться, как показано ниже -
Числа будут использоваться для процедуры умножения, а соответствующий ключ равен 7. Основная формула, которая будет использоваться в таком сценарии для генерации мультипликативного шифра, выглядит следующим образом:
(Alphabet Number * key)mod(total number of alphabets)
Число, полученное через вывод, отображается в таблице, упомянутой выше, и соответствующая буква принимается в качестве зашифрованной буквы.
Основная функция модуляции мультипликативного шифра в Python следующая:
def unshift(key, ch):
offset = ord(ch) - ASC_A
return chr(((key[0] * (offset + key[1])) % WIDTH) + ASC_A)
Note- Преимущество мультипликативного шифра в том, что он может работать с очень большими ключами, такими как 8 953 851. Компьютеру потребуется довольно много времени, чтобы перебрать большинство из девяти миллионов ключей.