Шифр Бофора — полиалфавитный подстановочный шифр создан сэром Фрэнсисом Бофортом. Шифр похож на шифр Виженера, со слегка измененным механизмом шифрования и использованием tabula recta (также известная как таблица Виженера). Применялся в роторной шифровальной машине M-209.
Длина ключа (K) должна быть равной длине исходного текста. Для этого циклически записывают ключевое слово до тех пор, пока его длина не будет соответствовать длине исходного текста.
Для того чтобы зашифровать открытый текст (M) с использованием ключа (K) нужно:
Для того чтобы дешифрировать шифротекст (C) с использованием ключа (K) нужно:
Пусть дан исходный текст: C = "HELLOWORLD"
и ключ: K = "KEY"
Длина клера - 10 символов, значит и длина ключа также должна равнятся 10 символам.
K = "KEYKEYKEYK"
. . . . . . . . .
Шифротекст (C) - "DANZQCWNNH"
. . . . . . . . .
Дешифрованный текст (M) - "HELLOWORLD"
m = "HELLOWORLD"
k = "KEY"
k = (k*(len(m))+k)[:len(m)] # подгоняем ключ
c = ''.join([chr(((ord(k[i]) - ord(m[i])) % 26)+ord("A")) for i in xrange(len(m))]) # шифруем
print c # выдаст DANZQCWNNH
Данная страница на сайте WikiSort.ru содержит текст со страницы сайта "Википедия".
Если Вы хотите её отредактировать, то можете сделать это на странице редактирования в Википедии.
Если сделанные Вами правки не будут кем-нибудь удалены, то через несколько дней они появятся на сайте WikiSort.ru .