Абсолютно надежное шифрование, шифр Вернама и номерные станции

33-1203

Леська повернулась на стуле, лицо ее было немного разочарованным.

— И это все? — спросила она.

Я протянул «Ну-у-у…» и неопределенно покачал головой. Она прошлась по последнему диапазону из конца в конец: супергетеродин подсвистывал, находя очередную несущую. Китайцы и корейцы читали новости, турки крутили музыку, чуть слышно белорусы поздравляли «сябров» (друзей, то есть) с днем рождения, кто-то отчаянно морзил, гудели радары или бог его знает что оно такое… Обычный вечерний эфир на коротких волнах.

Диапазонный барабан отщелкнулся с привычным грохотом. Леська выключила «Ишим», и враз стало темно.

— А я, честно говоря, думала, что это интереснее. Ну, «Голос Америки» услышать, или «Би-би-си». Или хотя бы какую-то хорошую музыку. А так — ничего толкового.

— «Голос Америки» тебе ничего особого не скажет, все новости и так в интернете есть. И музыку «запрещенную» никто не крутит — нет больше запретов.

Я сверился с расписанием в телефоне.

— А вот что-то таинственное послушать можно. Ну-ка, дай место.

Я придвинул свой стул и включил приемник. На стены легли уютные желтые полоски — это шкала светится так, что читать можно. Выбрал диапазон, нашел частоту. Динамик шумел.

— И? — спросила Леська.

— Две минуты. Надеюсь, в этот раз она будет вещать.

Я вытянул из-под приемника тетрадь, записал дату, время по Гринвичу и частоту. Ручка в ожидании зависла над бумагой.

Три. Семь. Семь, — заговорил «Ишим» женским голосом. Все-таки вещает!

Три. Семь. Семь. Дробь. Пять.

Леська порывалась было узнать, что это, но я шикнул, чтобы не мешала записывать.

— Всем спасибо, вы слушали номерную радиостанцию «Хельга», — сказал я после того, как записал последнюю цифру, а приемник снова зашипел пустым эфиром. — Далеко не уходите, за вами уже выехали. Да сиди ты, я шучу!

Вообще, о Леське-Бензовозихе я бы мог рассказывать целую неделю без остановки, уж больно она яркий персонаж. Познакомились мы на моем втором курсе, когда она, еще только первокурсница, постучалась к нам в комнату и попросила спичек. Как недальновидно! Слово за слово, Ален Делоном по столу — и уже через неделю мы гуляли по набережной, а в кармане лежали билеты со вчерашнего фильма. Правда, дальше этого дело так и не зашло, и вскоре мы перешли в фазу обычных приятельских отношений: привет-привет, чё, как сама, как кошечка, как собачка? Нынешним летом добавилось еще «приезжай в гости, на море поедем». Леська искала себе парня, я — девчонку, но общаться мы не переставали, потому как нашли друг в друге идеальных собеседников. С кем еще можно сидеть допоздна и разговаривать о всякой всячине, как не с Бензовозом?

Какая она из себя, спрашиваете? Ой, ну вылитая Эмма Робертс, такая же брюнетка. Но на этом сходство заканчивается. Леська вообще бабища по моим меркам высоченная, на голову выше моих 1710 миллиметров. Однако самое заметное в ней – далеко не рост. Культурные люди называют фигуру с небольшой грудью и широкими бедрами «грушей» или «буквой А», некультурные – «лампочкой» или даже «духовкой». А мне, когда я впервые увидел Леську, сразу вспомнился бензовоз, на котором работает отец. Его «МАЗ» тоже маленький спереди и широченный сзади. Первое время я называл ее «Леся-Бензовоз», чем немало веселил своих соседей по комнате, а потом, на третьем уже курсе, для краткости переименовал в Бензовозиху, что стоило мне нескольких очень страшных минут. Но об этом я уж как-нибудь потом расскажу.

Что есть криптографическое преобразование? Это преобразование, которое переводит информацию (открытый текст) в вид, непонятный посторонним лицам (закрытый текст, он же шифр).

Секретным элементом, или ключом криптографического преобразования называется информационный элемент, который неизвестен противнику или посторонним лицам, но известен законным пользователям информации.

Во время шифрования открытый текст подвергается прямому криптопреобразованию (открытый текст -> закрытый текст) с использованием определенного ключа. При расшифровывании все происходит с точностью до наоборот — закрытый текст становится открытым (обратное криптографическое преобразование) при участии ключа. Нельзя не упомянуть и дешифрование (криптоанализ) — это когда обратное криптопреобразование применяется без знания ключа, иными словами, происходит взлом.

Надо оговориться, что взлом нецелесообразен, если:
а) очень большие затраты на его осуществление (нужны десять суперкомпьютеров стоимостью $ 42 млн каждый, а информация того не стоит);
б) занимает неразумно большое количество времени (результат будет, но через миллион лет);
в) к моменту дешифровки информация станет неактуальной (цитируя фильм «ДМБ»: «Пока противник рисует карты наступления, мы меняем ландшафты, причем вручную. Когда приходит время атаки, противник теряется на незнакомой местности и приходит в полную небоеготовность»).

Криптографические преобразования бывают симметричными и несимметричными. Симметричные, в свою очередь, делятся на блочные и потоковые. Все они обладают определенными достоинствами и недостатками и в разной степени противостоят взлому. Но только для одного вида шифров доказано, что взломать их невозможно в принципе! Это так называемые абсолютно надежные шифры.

Будем называть шифрование абсолютно надежным, если противник, перехватив закрытый текст и не имея информации о ключе, после проведения любого количества операций по криптоанализу так и не сможет понять понять содержащейся в тексте информации. Как это возможно? Например, перехватив конкретное сообщение из трех символов (пусть это будет «Д9В», и даже пусть будет известно, что язык исходного сообщения — русский) и пытаясь его расшифровать, противник приходит к выводу, что этим сообщением могли быть:
— ТО-САМОЕ-СЛОВО;
— КОТ;
— ДОМ;
— множество других осмысленных трехбуквенных слов;

аббревиатуры вроде:
— УНЧ;
— ВЭФ;
— МАЗ;
— множество трехбуквенных аббревиатур;

числа:
— 000;
— 001;
— 002;
— числа от 003 до 999;

и даже:
— ЫЯЙ;
— ЪАК;
— 2Ы1;
— множество не несущих смысла сочетаний букв и цифр длиной три символа.

Может быть, противник даже попал в точку с вариантом «КОТ», но поди знай, вдруг все-таки «ВЭФ» — для него оба эти сообщения равновероятны. А в восьми буквах может быть как «НАСТУПАЙ», так и «ОТСТУПАЙ», если вообще не «БЕНЗОВОЗ».

Необходимые условия для получения абсолютно надежного шифрования:
1. Длина ключа шифрования должна быть не меньше длины шифруемого сообщения.

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

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

Допустим, создать достаточно длинный ключ — не проблема. Использовать его один раз — тоже. Но вот создать абсолютно случайную последовательность, или, как ее еще называют, гамму, не так-то просто.

Допустим, есть алфавит из 50 символов (33 буквы, 10 цифр, пробел и несколько других знаков). Назовем последовательность символов случайной, если выполняются три условия:
1. Для любого символа последовательности вероятность того, что он равен «А», «Б», «В», … , «6», «!» (короче — любому символу алфавита) равна 1/50 (1/n в общем случае, где n — мощность алфавита, то есть количество символов в нем).
2. Угадать, чему равен следующий символ, можно с вероятностью 1/n.
Например, последовательность «1,61803» можно уверенно продолжить: «3988749…» (значение золотого сечения). При шифровании эту последовательность использовать нельзя, так как она предсказуема.
3. Зная некоторое количество символов, невозможно с вероятностью более 1/n назвать предыдущий символ.
Например, дана последовательность «…16 32 64 128…». Можно без труда назвать предыдущие символы: «1 2 4 8», потому как явно прослеживается 2^k, где k = 0, 1, 2 и так далее . Эту последовательность тоже нельзя использовать при шифровании.

Истинно случайная числовая гамма-последовательность не может быть получена по какому-либо алгоритму, и появление в ней любого символа из алфавита равновероятно — 1/n. Для получения случайных последовательностей используются генераторы, основанные на процессах, которые подвержены сложным законам и протекают достаточно непредсказуемо. Например:
1. Шум p-n-перехода. Если достаточно точно измерять текущий через переход ток, можно заметить, что он имеет хаотический характер. Сюда же относятся фликкер-шум и другие шумоподобные процессы.
2. Процесс радиоактивного распада. Предсказать, когда распадется атом, невозможно (привет коту Шредингера; жаль, хорошая была зверюга). Тот же счетчик Гейгера генерирует щелчки через случайные промежутки времени.

Однако применение абсолютно надежного сопряжено с некоторыми трудностями.
1. Само генерирование случайной последовательности. Ну не у всех же дома есть коробка урана или амперметр с двадцатью знаками после запятой! Поэтому на практике могут использоваться псевдослучайные последовательности.  По результатам статистических тестов они похожи на случайные, но не являются ими, так как были получены в результате работы определенного алгоритма. Генератор псевдослучайных чисел — алгоритм, по которому, получая на вход одно случайное число (затравку, англ. seed), можно получить на выходе последовательность псевдослучайных чисел. Используя одну и ту же затравку, можно раз за разом получать одну и ту же последовательность чисел.
2. Гамма-последовательность должна быть и у отправителя, и у получателя сообщения. Ее ни в коем разе нельзя передавать по открытому каналу связи, в который противник может сунуть (и обязательно сунет!) свой любопытный пятак. Получив ключ, противник сможет расшифровать все, что им зашифровано. Гамму надо передавать только по защищенному от противника каналу, но вот парадокс — если есть такой канал, то зачем вообще что-то шифровать? Можно передавать открытые тексты прямо по нему.

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

— Чего я там забыла? — удивилась она.

— Мне-то почем знать? Может, северные сияния будешь фотографировать, — я чуть наступил на ее любимую мозоль. Она мечтательно закивала и протянула «Так-то да».

И несмотря на то что ты далеко, я все равно хочу иметь возможность что-то тебе сообщить. Секретное. Настолько секретное, что ни телефон, ни интернет, ни почту использовать нельзя — кругом враги, все прослушивается, просматривается, записывается. Или вот поехала ты по зимнику на «Урале». Вокруг на пятьдесят километров только Сибирь. Интернет, телефон, почта? Забудь. Можно от тоски тронуться, если никаких весточек от близких людей нет. Выручит радиоприемник. Так уж и быть, перед отъездом подарю тебе «ВЭФ 216», слушай с удовольствием. Радиоволны далеко летят, сможешь мою передачу хоть на краю земли поймать.

Практическая реализация абсолютно надежного шифрования называется шифром Вернама.

Сначала мы договариваемся об алфавите сообщений. Пусть он будет таким — простым и очевидным, как в левой таблице:

Хотя для осложнения работы противника лучше назначить символам другие числовые соответствия — пусть ломает голову! Таблица справа как раз это демонстрирует. Но для учебных целей пойдет и первый вариант.

Затем я генерирую несколько длинных гамм (30 символов пока хватит). Генераторами будут сайты randstuff.ru и castlots.org. Понятное дело, что они выдают псевдослучайные последовательности и для настоящего шифрования не годятся.

760514151808213303100342134266

358344087660876296880511058306

480093372716280190066003435700

849101220630380019771483398643

Для удобства разбиваю гаммы на группы по пять цифр:

76051 41518 08213 30310 03421 34266

35834 40876 60876 29688 05110 58306

48009 33727 16280 19006 60034 35700

84910 12206 30380 01977 14833 98643

Надо оговориться, как в дальнейшем различать гаммы между собой. Каждой из них надо назначить идентификатор: это может быть либо первая группа из пяти чисел, либо отдельная группа из трех чисел. Мне больше нравится такой вариант:

212 76051 41518 08213 30310 03421 34266

085 35834 40876 60876 29688 05110 58306

006 48009 33727 16280 19006 60034 35700

377 84910 12206 30380 01977 14833 98643

Если гамм достаточно много, есть смысл размещать идентификаторы в естественном числовом порядке — 001, 002 и так далее. Я написал первые пришедшие в голову.

В итоге у меня набирается довольно много гамма-последовательностей: кто его знает, сколько ты пробудешь на своем Таймыре! А общаться надо, пусть и в одну сторону, но неделю, месяц, год. Будет обидно, если гаммы закончатся, а столько еще надо сказать!

Для удобства я записываю каждую гамма-последовательность с ее идентификатором на отдельную страничку ма-а-аленького блокнота. Алфавитную таблицу приклеиваю ко внутренней стороне обложки. И делаю еще один точно такой же блокнот для тебя.

Потом мы, как в старых шпионских фильмах, встречаемся в кафе в центре города. Оба такие, знаешь, в черных плащах с поднятыми воротниками, в шляпах и темных очках. Я при всех дарю тебе «ВЭФ» и незаметно шепчу: «Блокнот за темброблоком, слушай каждую вторую пятницу месяца в 18:00 по Гринвичу на 6200 кГц». И расходимся. Ты едешь в Норильск или куда там захочешь, а я остаюсь дома.

Наконец, наступает день связи. Что мне хочется сказать? Конечно, что скучаю. Так и пишу:

СКУЧАЮ. ЖДУ.

В соответствии с алфавитной таблицей перевожу буквы в цифры:
С -> 18
К -> 11
У -> 20

Получается:

18 11 20 24 00 31 44 33 07 04 20 44

Разделяю получившуюся последовательность на группы по пять цифр, недостающие места в последней группе забиваю нулями:

18112 02400 31443 30704 20440

Выбираю любую понравившуюся гамму.

377 84910 12206 30380 01977 14833 98643

Складываю по модулю 10 получившийся открытый текст с гаммой:

         18112 02400 31443 30704 20440
M10+
     377 84910 12206 30380 01977 14833 98643

В сложении по любому модулю нет ничего сложного — это, по сути, взятие остатка от деления:
2 + 2 = 4;   4 < 10;   —> 4

4 меньше 10, нацело на него не делится. В остатке — 4. Очень наглядно это видно при делении «столбиком».

4 + 7 = 11;   11 > 10;   —> 1

11 больше 10, можно разделить, да еще 1 в остатке. Ее и беру как результат сложения.

25 + 7 = 32;   32 > 10;   —> 2

32 на 10 нацело не делится, ближайшее — 30. В остатке 2.

Простое правило: любое число, взятое по модулю 10 — это значение числа, стоящего в самом младшем разряде. 1556 по модулю 10 — это 6. 2000 — это 0. 15693 — это 3.

В общем, складывал-складывал открытый текст с гаммой, и получил вот что:

         18112 02400 31443 30704 20440
M10+
     377 84910 12206 30380 01977 14833 98643
 =   377 92022 14606 61723 31671 34273

То, что сообщение получилось короче гаммы — не беда. Было бы хуже, если бы ее длины не хватило.

Чтобы немного облагородить шифр и позаботиться о получателе, посчитаю, сколько вышло групп по пять цифр, и припишу их к идентификатору:

377/5 92022 14606 61723 31671 34273

Человек на том конце радиоволны услышит, что в шифротексте всего пять групп по пять, и будет планировать свое время. А то ведь как придет шифровка на три десятка групп — с непривычки и записывать устанешь!

Шифр готов, остается только послать его в эфир. Можно применить азбуку Морзе, но ни ты, Леська, ни я ее не знаем. Придется озвучивать. Сам я не хочу этим заниматься — ни к чему противнику слышать мой голос. Пусть синтезаторы речи работают!

Еще некоторые моменты. Выход на связь ровно в 18:00 по Гринвичу. Первые три минуты будет звучать «вызов» (те самые 377/5), чтобы ты могла уединиться, настроить приемник, поправить внешнюю антенну и так далее. Затем каждая группа цифр зачитывается дважды. Потом — проверка: каждая группа зачитывается один раз. И сигнал окончания передачи. Некоторые номерные станции (а у меня, без сомнения, получилась именно она) перед самой передачей посылают в эфир какой-то маркер — тональные сигналы или кусочек мелодии. Некоторые станции делают это постоянно — «держат частоту», чтобы на ней никто не устроился со своей передачей. Я тоже сделаю маркер, мне не жалко, но давать его буду только перед выходом на связь. За электричество тоже кому-то платить надо, верно?

И примерно вот что получится:

После того, как я все зашифровал, использованную страницу шифроблокнота надо уничтожить. Неспроста шифр Вернама называется еще «шифром одноразовых блокнотов».

А радиоволна летит, преград не зная, делая триста тысяч километров в секунду. Мою передачу слышат тысячи людей, случайно вставших на частоту 6200 кГц. Сотни противников. Десятки записывают цифры в тетради. Но эта передача только для тебя, Леська, и только ты со своим «ВЭФом» узнаешь, что скрыто за цифрами. Все, что нужно — правильно принять шифровку и вычесть из нее по модулю 10 соответствующий ключ.

     377/5 92022 14606 61723 31671 34273

Приняла? Ищи в блокноте гамму с идентификатором 377.

 377 84910 12206 30380 01977 14833 98643

Есть такая! Теперь начинай вычитать по модулю 10.

     377/5 92022 14606 61723 31671 34273
M10-
       377 84910 12206 30380 01977 14833 98643

Правила вычитания ненамного сложнее:

4 — 2 = 2;   2 < 10;   —> 2

Два меньше десяти — остаток два. Все так же, как и при сложении.

(1)1 — 7 = 4;   4 < 10;   —> 4 

В случае, когда получается отрицательное число (1 — 7 = -6), достаточно взять «с потолка» единицу и приписать ее в старший разряд числа, из которого вычитаешь. Не один, а одиннадцать: имею право!

Чуть более длинный путь — прибавить к десяти получившееся отрицательное число:

1 — 7 = -6;   10 + (- 6) = 4;   4 < 10;   —> 4 

Результат не изменился.

     377/5 92022 14606 61723 31671 34273
M10-
       377 84910 12206 30380 01977 14833 98643
 =         18112 02400 31443 30704 20440

Полученные цифры открытого текста надо сгруппировать по две и при помощи алфавитной таблицы восстановить исходное сообщение (не забыв потом уничтожить страницу шифроблокнота):

18 11 20 24 00 31 44 33 07 04 20 44
С  К  У  Ч  А  Ю  .     Ж  Д  У  .

И где-то в далекой Игарке покатится горячая женская слеза по обожженному северными ветрами лицу…

Леська, ты чего, спишь, что ли? Давай-ка дуй в кровать. Я такие телеги про радио могу часами толкать, а у тебя электричка завтра…


Отрывок из повести «Твой дом там, где твой Бензовоз».

Спасибо художнице Саше за классный рисунок!

Спасибо Дашке за то, что, сама того не зная, побыла Леськой!

Запись опубликована в рубрике Писательское, Радиоприемники, Random с метками . Добавьте в закладки постоянную ссылку.

12 отзывов на “Абсолютно надежное шифрование, шифр Вернама и номерные станции

  1. Anton:

    Познавательно. Я не знал про эти вычеты по модулю 10. Как-то слышал на 31м — солдатик цифры зачитывал. Уязвимое место такого шифрования — если поймают человека с блокнотиком и выспросят у него все особенности передачи.

  2. Anton:

    А вы разбирались шифрованием по книге? Часто в литературе встречается — например в «Нашем человеке в Гаванне».

    • Можно на передающей стороне вычитать по модулю 10, а складывать на приемной, разницы нет. Именно так и было в оригинале статьи, по которой я весной 2014-го изучал шифр Вернама. Сейчас, увы, этой статьи не смог найти. Если использовать двоичный код, то сложение по модулю 2 используется в обоих случаях, так как эта операция обратна самой себе. А еще можно задать алфавиту числовые коды 000…888 и вести вычисления по модулю 8, чтобы противник совсем уж загрустил. И до кучи передавать цифры на английском, чтобы все думали, будто бы станция «не наша», ну а внутри-то послания na translite.
      Станции разные есть, какие-то живыми голосами читают и явно «онлайн» (бывают даже ошибки, и на том конце говорят «Отставить!», слышал где-то такую запись), но большинство предпочитает «консервированные» голоса. По-разному зачитывают и числа — «живые» могут произносить, например, «триста семьдесят семь», а синтезаторы — «три семь семь». Или даже «тройка семерка семерка». Это уже у кого как, у меня здесь только учебный пример.
      Да, если «активные радиослушатели» поймают адресата сообщений или хотя бы украдут его блокнот, то смогут многое узнать. Хотя возможна и многофакторная защита — например, получено слово «РАСЧЕСКА», и только адресат знает, что оно означает «Вася, к нам завтра приезжает моя мама».
      Посмотрел книжный шифр. Уже не помню, может, на третьем курсе чуть-чуть его касались. Тоже интересная штука и не очень сложная. Гамма, опять же, почти вечная — одну и ту же букву можно найти и зашифровать как на пятой, так и на сто пятой странице. Вот только книжку надо с собой носить постоянно, в наш цифровой век это уже может натолкнуть на некоторые подозрения.
      А можно и по книжке в бук-ридере шифровать, я думаю. Или даже по статической веб-странице, которая годами не меняется.

  3. Vlad:

    Привет !
    Где найти всю повесть Твой дом там, где твой Бензовоз??

    • Ее сначала надо написать :) Есть много набросков и несколько готовых эпизодов, но в целом это типичный долгострой-«маньяна».
      Так что как только — так сразу.

  4. Vlad:

    Слог у тебя отличный!!! Так что пиши! Не откладывай в долгий ящик….
    Можешь несколько эпизодов на пикабу разместить, если народ воспримет позитивно, тебе это новых сил добавит !!!

    • Спасибо! Посмотрим, как летом будет.
      На «Пикабу» вряд ли пойду: с огромной кулстори про шифрование в весельчаки не пробиться, да и «Бензовоз», несмотря на такие вот позитивные эпизоды, состоит не только из них. Найдется место и экзистенциализму «Двухполосного шоссе», и эскапизму «Исчезающей точки». Плюс есть еще одна мелочь:

      Так что далеко ходить не буду, здесь, в «Рэндом стаффе», и так иногда собирается аудитория любителей историй про радио, машины, радио в машинах, машинах на радио…
      Да и вообще, мне привычнее сначала работать, а потом только публиковать статью/рассказ/приемник. Наобещаешь с три короба, а ничего не сделаешь — как потом себя уважать? Так что даже не факт, что эта история про шифрование будет в окончательном варианте повести — сейчас это, скорее, спин-офф, ответвление сюжета с теми же героями.

  5. Иван:

    Всё абсолютно верно! По принципу «Одноразового блокнота», работает связь первых государственных лиц, дипломатических консульств, спецслужб и, конечно же вооруженных сил.
    Главный момент указан на то, что Ключ должен использоваться только один раз! А те Сертификационные центры, что выдают Ключ сроком на год, которым Вы пользуетесь, как раз имеет уязвимость в случае попадания хотя бы одного открытого послания в руки перехватчика. В таком случае, все Ваши годовые переписки станут чьим-то достоянием…
    Не лишним будет сказать, что лучше заготовить сотню-другую Ключей-паролей, обменяться ими при личной встрече, а при общении шифровками иметь два компьютера. Один без подключения к интернету — на нем Вы будете шифровать и расшифровывать, копируя только шифровку на флеш. А второй для отправки шифровки с этой флеш. Только в таком случае Вы будете защищены от любых кейлогеров, снимков с экрана и т.д.. Т.е., Любой перехват исключит возможность наблюдения самих процессов шифрования. Ну, а уж если информация секретна в космических масштабах, то после каждого «переноса» шифровок с компьютера на компьютер, флеш-карту можно форматировать, чтобы исключить перенос какого-нибудь авторуна…
    Пользуйтесь шифрованием в бизнес процессах, при личной переписки… Везде, где только возможно. Только так Вы защитите свою себя от сбора на Вас имеющейся информации. И никогда не храните «для истории» отработанный материал!
    P.S. А для того, чтобы не привлекать к себе внимания со стороны своими шифровками, пользуйтесь Стеганограмой — скрытие шифровки в фото, отправленного с видом на дом, речку, горы, цветы…

    • Правильно! 21-й век на дворе, все давно компьютерами делается. Аналогично можно шифровать и цифровые файлы — только алфавит станет бинарным, ноль да один, а механизм работы тот же.
      Стеганография — тоже очень интересная тема. Может, когда-то и о ней немного напишу.

  6. Vg:

    Ваша манера писать — просто мое почтение!! Ну а все-таки, дом там, где бензовоз увидел свет? И вообще, мне кажется, вы очень интересный человек, я бы с вами с удовольствием пообщался.

    • Спасибо. Был продолжающий эпизод из той же вселенной на тему стоматологии (можно найти в разделе «Писательское»). И это всё. Настоящий Бензовоз, исчезнув с моего радара, забрала с собою и необходимость что-либо о ней писать.

  7. В примере ошибка.
    Б Р О М А Л
    01 17 15 13 00 12
    01171 51300 12
    По методике последнюю группу надо дополнить тремя нулями:
    01171 51300 12000
    Но если уже этот код вернуть опять к алфавиту, то появится лишняя буква «А», ведь она тоже имеет код 00:
    Б Р О М А Л А0
    Решение: исправить таблицу соответствий так, чтобы алфавит начинался с 01. Комбинация 00 — служебная, и означает конец посылки.

Добавить комментарий

Заполните поля или щелкните по значку, чтобы оставить свой комментарий:

Логотип WordPress.com

Для комментария используется ваша учётная запись WordPress.com. Выход /  Изменить )

Google photo

Для комментария используется ваша учётная запись Google. Выход /  Изменить )

Фотография Twitter

Для комментария используется ваша учётная запись Twitter. Выход /  Изменить )

Фотография Facebook

Для комментария используется ваша учётная запись Facebook. Выход /  Изменить )

Connecting to %s