Біграмний шифр

Матеріал з Вікіпедії — вільної енциклопедії.
Перейти до навігації Перейти до пошуку

Біграмний шифр — це криптографічний алгоритм, який призначений для шифрування груп з двох букв (біграм).

Вважається, що «батько» біграмних шифрів — це німецький абат Йоганес Трісемус, який ще в 1508 році у своїй роботі по криптології, яка називалася «Поліграфія», вперше зазначив можливість шифрування біграмм, тобто, дволітерними поєднаннями. Їх стійкість до розкриття виявилася набагато вищою, ніж у інших попередників, тому деякі біграмні шифри зберегли свою актуальність аж до Другої світової війни.

Біграмний «Шифр Плейфера» використовувався Великою Британією в роки Першої світової війни.

Біграмний шифр «Подвійний квадрат» був винайдений англійцем Чарльзом Вітстоном в 1854 році, і навіть використовувався німцями в роки Другої світової війни.

Характеристика[ред. | ред. код]

Біграми використовуються в одній з найуспішніших мовних моделей для розпізнавання мови.[1] вони є приватним випадком N-грам.

Частота чергувань голосних і приголосних може бути використана в криптографії для створення криптограми. Частоти біграм є одним з підходів до статистичної мовної ідентифікації.

Формула може бути наступна:

Тобто, ймовірність , враховуючи попередній маркер , дорівнює ймовірності біграмі , або спільній сумі двох токенів , поділеної на ймовірність попереднього маркера.

Частота біграм в англійській мові[ред. | ред. код]

Частота найбільш поширених букв — біграм в невеликій англійській таблиці:[2]

th 1.52       en 0.55       ng 0.18
he 1.28       ed 0.53       of 0.16
in 0.94       to 0.52       al 0.09
er 0.94       it 0.50       de 0.09
an 0.82       ou 0.50       se 0.08
re 0.68       ea 0.47       le 0.08
nd 0.63       hi 0.46       sa 0.06
at 0.59       is 0.46       si 0.05
on 0.57       or 0.43       ar 0.04
nt 0.56       ti 0.34       ve 0.04
ha 0.56       as 0.33       ra 0.04
es 0.56       te 0.27       ld 0.02
st 0.55       et 0.19       ur 0.02

Див. також[ред. | ред. код]

Примітки[ред. | ред. код]

Посилання[ред. | ред. код]