Blog: Alter World

Виртуальный мир является своеобразным Alter Ego мира реального…

Простейшая криптография..

2 комментария 7 января 2006, 22:29 • Разное

На одном из занятий в АКАдемии в группе по основам программирования речь шла о шифрах и простой криптографии. Слушатели на том же занятии делали небольшие программы-шифраторы и дешифраторы. Естественно, что в качестве алгоритмов шифрации были взяты простые реализации: шифрация перестановкой и заменой. В первом случае составлялись анаграммы, и программировался только шифратор, во втором случае они делали шифратор и дешифратор. Хотя в случае замены шифр казался сложным, но на самом деле его ничего не стоило «расколоть» − об этом я им тоже рассказывал.

Собственно говоря, всё раскалывание шифров замены состоит в определении частоты использования символов. Для английского языка частота появления в тексте букв латинского алфавита будет одна, для русского − другая, для итальянского − третья и так далее. К сожалению, на то занятие я не смог найти частотные характеристики букв русского языка, так что программу-взломщик написать не удалось. Спустя же несколько дней после занятия мне попалась на глаза эта табличка с частотами букв русского алфавита − где же она была раньше?!

Частота появления в тексте букв русского алфавита, в процентах

Буква Частота Буква Частота
А 8 Р 5
Б 2 С 6
В 5 Т 6
Г 2 У 2
Д 3 Ф менее 1
Е, Ё 9 Х 1
Ж 1 Ц менее 1
З 2 Ч 2
И 8 Ш 1
Й 1 Щ менее 1
К 3 Ь, Ъ 2
Л 4 Ы 2
М 3 Э менее 1
Н 6 Ю 1
О 11 Я 2
П 3 пробел между словами 18

Теперь по этим данным можно написать программу-дешифратор практически любого шифра замены (при условии, что смещение было постоянным и зависимость смещения линейная, в случае нелинейной зависимости нужно подумать над дешифратором).

Надо будет попробовать сделать по этой табличке веб-приложение (web-app) по дешифрации простых шифров замены, можно даже с применением технологии ajax − милое развлечение будет.

Ещё заметки на эту тему:

2 комментария

Вы можете подписаться на комментарии к этой статье через RSS или отправить к ней TrackBack.

  1. ass2006 • 9 января 2006 г. в 04:39

    Hi, a nice blog you have here. You will surely get an bookmark 🙂 Forum

  2. Александр Вольф • 10 января 2006 г. в 02:42

    Интересно, как может такая примитивная криптография соотносится с топом порносайтов от Задницы 2006?

Оставить свое мнение

XHTML: Вы можете использовать эти тэги: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>