Выбрать книгу по жанру
Фантастика и фэнтези
- Боевая фантастика
- Героическая фантастика
- Городское фэнтези
- Готический роман
- Детективная фантастика
- Ироническая фантастика
- Ироническое фэнтези
- Историческое фэнтези
- Киберпанк
- Космическая фантастика
- Космоопера
- ЛитРПГ
- Мистика
- Научная фантастика
- Ненаучная фантастика
- Попаданцы
- Постапокалипсис
- Сказочная фантастика
- Социально-философская фантастика
- Стимпанк
- Технофэнтези
- Ужасы и мистика
- Фантастика: прочее
- Фэнтези
- Эпическая фантастика
- Юмористическая фантастика
- Юмористическое фэнтези
- Альтернативная история
Детективы и триллеры
- Боевики
- Дамский детективный роман
- Иронические детективы
- Исторические детективы
- Классические детективы
- Криминальные детективы
- Крутой детектив
- Маньяки
- Медицинский триллер
- Политические детективы
- Полицейские детективы
- Прочие Детективы
- Триллеры
- Шпионские детективы
Проза
- Афоризмы
- Военная проза
- Историческая проза
- Классическая проза
- Контркультура
- Магический реализм
- Новелла
- Повесть
- Проза прочее
- Рассказ
- Роман
- Русская классическая проза
- Семейный роман/Семейная сага
- Сентиментальная проза
- Советская классическая проза
- Современная проза
- Эпистолярная проза
- Эссе, очерк, этюд, набросок
- Феерия
Любовные романы
- Исторические любовные романы
- Короткие любовные романы
- Любовно-фантастические романы
- Остросюжетные любовные романы
- Порно
- Прочие любовные романы
- Слеш
- Современные любовные романы
- Эротика
- Фемслеш
Приключения
- Вестерны
- Исторические приключения
- Морские приключения
- Приключения про индейцев
- Природа и животные
- Прочие приключения
- Путешествия и география
Детские
- Детская образовательная литература
- Детская проза
- Детская фантастика
- Детские остросюжетные
- Детские приключения
- Детские стихи
- Детский фольклор
- Книга-игра
- Прочая детская литература
- Сказки
Поэзия и драматургия
- Басни
- Верлибры
- Визуальная поэзия
- В стихах
- Драматургия
- Лирика
- Палиндромы
- Песенная поэзия
- Поэзия
- Экспериментальная поэзия
- Эпическая поэзия
Старинная литература
- Античная литература
- Древневосточная литература
- Древнерусская литература
- Европейская старинная литература
- Мифы. Легенды. Эпос
- Прочая старинная литература
Научно-образовательная
- Альтернативная медицина
- Астрономия и космос
- Биология
- Биофизика
- Биохимия
- Ботаника
- Ветеринария
- Военная история
- Геология и география
- Государство и право
- Детская психология
- Зоология
- Иностранные языки
- История
- Культурология
- Литературоведение
- Математика
- Медицина
- Обществознание
- Органическая химия
- Педагогика
- Политика
- Прочая научная литература
- Психология
- Психотерапия и консультирование
- Религиоведение
- Рефераты
- Секс и семейная психология
- Технические науки
- Учебники
- Физика
- Физическая химия
- Философия
- Химия
- Шпаргалки
- Экология
- Юриспруденция
- Языкознание
- Аналитическая химия
Компьютеры и интернет
- Базы данных
- Интернет
- Компьютерное «железо»
- ОС и сети
- Программирование
- Программное обеспечение
- Прочая компьютерная литература
Справочная литература
Документальная литература
- Биографии и мемуары
- Военная документалистика
- Искусство и Дизайн
- Критика
- Научпоп
- Прочая документальная литература
- Публицистика
Религия и духовность
- Астрология
- Индуизм
- Православие
- Протестантизм
- Прочая религиозная литература
- Религия
- Самосовершенствование
- Христианство
- Эзотерика
- Язычество
- Хиромантия
Юмор
Дом и семья
- Домашние животные
- Здоровье и красота
- Кулинария
- Прочее домоводство
- Развлечения
- Сад и огород
- Сделай сам
- Спорт
- Хобби и ремесла
- Эротика и секс
Деловая литература
- Банковское дело
- Внешнеэкономическая деятельность
- Деловая литература
- Делопроизводство
- Корпоративная культура
- Личные финансы
- Малый бизнес
- Маркетинг, PR, реклама
- О бизнесе популярно
- Поиск работы, карьера
- Торговля
- Управление, подбор персонала
- Ценные бумаги, инвестиции
- Экономика
Жанр не определен
Техника
Прочее
Драматургия
Фольклор
Военное дело
Криптономикон, часть 2 - Стивенсон Нил Таун - Страница 131
Для «Пасьянса» в колоде должен быть полный набор из 52 карт и двух джокеров. Джокеры должны как-то отличаться. (Обычно так оно и есть. В колоде, на которую я смотрю, когда пишу, на джокерах звезды: на одном большая, на другом маленькая.) Пусть один джокер будет А, другой Б. Обычно графический элемент у джокеров одинаковый, отличается только размер. Назовите больший джокер «Б» от слова «больше». Если вам так проще, напишите на джокерах «А» и «Б», но помните, что, если вас поймают, вам придется объяснять это тайной полиции.
Для инициализации колоды возьмите ее в руку, лицом вверх. Потом разложите карты в начальной последовательности, которая представляет собой ключ. (Про ключ я объясню позже, но это не то же, что ключевой поток.) Теперь мы готовы сгенерировать цепочку букв ключевого потока.
Вот «Пасьянс»:
1. Найдите джокер А. Переложите его на одну карту вниз. (То есть поменяйте местами с картой, которая лежит сразу под ним.) Если джокер — нижняя карта в колоде, положите его под верхнюю карту.
2. Найдите джокер Б. Переложите его на две карты вниз. Если джокер — нижняя карта в колоде, положите его под две верхние карты. Если предпоследняя, положите сразу под верхнюю. (В общем, представьте, что колода — это петля… ну, поняли.)
Важно выполнять эти два шага в указанной последовательности. Есть соблазн облениться и перекладывать джокеры в том порядке, в каком они вам попадутся. Это не страшно, если только они не лежат близко.
Так что если колода до шага 1 выглядела так:
то после шага 2 она будет выглядеть:
Если есть сомнения, помните, что джокер А надо перекладывать первым. И будьте внимательны, когда джокеры внизу колоды.
3. Подснимите колоду. То есть поменяйте карты над первым джокером с картами под вторым джокером. Если колода выглядела так:
то после подснимания она будет выглядеть:
«Первый» и «второй» джокер относятся к джокерам, которые лежат соответственно ближе и дальше от верха колоды. На этом шаге не важно, какой из них А, какой Б.
Помните, что джокеры и карты между ними не перекладываются; местами меняются нижняя и верхняя стопка. Если в одной из стопок карт нет (джокеры лежат рядом, либо один из них сверху или снизу), считайте эту стопку пустой и перемещайте ее, как полную.
4. Подснимите по счету. Взгляните на нижнюю карту. Превратите ее в число от 1 до 53. (Последовательность мастей, как в бридже: трефы, бубны, червы, пики. Если карта ¦, ее значение соответствует достоинству. Если это ¦, то достоинству плюс 13. Если ¦, достоинству плюс 26. Если ¦, достоинству плюс 39. Один из джокеров — 53.) Отсчитайте от верха колоды это число. (Я обычно считаю от 1 до 13 требуемое число раз: это проще, чем последовательно досчитывать до больших чисел.) Выньте карты ниже той, до которой вы досчитали, оставив последнюю внизу. Если колода выглядела так:
и девятой картой была 4, после подснимания она будет выглядеть так:
Последняя карта остается на месте, чтобы сделать шаг обратимым. Это важно для математического анализа его безопасности.
5. Найдите карту-результат. Посмотрите на верхнюю карту. Переведите ее в число от 1 до 53, как описано выше. Отсчитайте это число карт. (Считайте верхнюю карту номером первым.) Запишите карту после той, до которой вы досчитали, на листке бумаги. Если это джокер, ничего не записывайте и начните снова с шага 1.) Это первая карта-результат. Заметьте, что этот шаг не изменяет состояние колоды.
6. Переведите карту в число. Как и прежде, пользуйтесь последовательностью мастей, принятой в бридже, в порядке возрастания: ¦, ¦, ¦ и ¦. То есть от Т¦ до К¦ — от 1 до 13, от Т¦ до К¦ — от 14 до 26, от T¦ до К¦ — от 27 до 39, и от Т¦ до К¦ — от 40 до 52.
Вот и весь «Пасьянс». С его помощью вы можете получить столько чисел ключевого потока, сколько потребуется.
Знаю, что в разных странах колоды немного разные. В целом не важно, какую последовательность мастей использовать или как переводить карты в цифры. Важно лишь, чтобы отправитель и получатель сговорились о правилах. Если вы не будете выполнять все операции одинаково, вы не сможете общаться.
«Пасьянс» надежен в той мере, в какой надежен его ключ. То есть простейший способ взломать «Пасьянс» — выяснить, каким ключом пользуются коммуниканты. Если у вас нет хорошего ключа, все остальное бесполезно. Вот несколько советов по поводу обмена ключом.
1. Перетасуйте колоду. Случайный ключ — самый лучший. Один из коммуникантов может случайным образом перетасовать колоду и разложить вторую точно таким же способом. Одна должна быть у получателя, вторая — у отправителя. Большинство людей плохо тасуют карты, поэтому перетасуйте колоду не меньше десяти раз. Лучше взять колоду, которой уже играли, чем только что распечатанную. Обязательно нужно иметь запасную колоду, разложенную в том же порядке, иначе, сделав ошибку, вы уже не сможете прочесть сообщение. И помните, что ключ уязвим: тайная полиция может найти колоду и переписать ее порядок.
2. Используйте бриджевые комбинации. Расклады бриджа, которые печатают в газетах или книгах по карточным играм, соответствуют 95-битному ключу. Если коммуниканты договорятся, как, исходя из этого, раскладывать колоды и куда помещать джокеры (может быть, после первых двух карт, упомянутых в разборе), это сработает. Учтите: тайная полиция может найти колонку с бриджем в газете, которой вы решили пользоваться, и списать порядок карт. Можно сговориться на чем-нибудь вроде «используй колонку бриджа из газеты в твоем родном городе на день зашифровки сообщения» или похожем. Можно использовать список ключевых слов для поиска на веб-сайте «Нью-Йорк таймс». Поиск даст вам какую-нибудь статью; возьмите бриджевую колонку из номера, в котором она напечатана. Если ключевые слова будут найдены или перехвачены, их сочтут паролем. Придумайте какой-нибудь свой вариант: помните, что тайная полиция тоже читает книги Нила Стивенсона.
3. Используйте пароль для расклада колоды. В этом методе для первоначального расклада используется алгоритм «Пасьянса». И отправитель, и получатель знают пароль. (Например, «SECRET KEY».) Начните с колоды, разложенной по порядку, самая младшая сверху, последовательность мастей, как в бридже. Проделайте операцию «Пасьянс», но вместо шага 5 выполните еще одно подснимание по счету, основываясь на первой букве пароля (в данном примере 19). (Не забудьте положить верхние карты сразу над нижней картой колоды, как и раньше.) Выполните это по разу на каждую букву. Еще две буквы определят положение джокеров. Помните, впрочем, что уровень случайности на букву в стандартном английском примерно 1, 4 бита. Для безопасности нужен пароль по меньшей мере из 80 букв; я рекомендую не меньше 120. (Уж простите, но более короткий ключ не дает надежного уровня безопасности.)
Вот несколько примеров, чтобы потренироваться с «Пасьянсом»:
Пример 1: Начните с неразложенной колоды: Т¦ — К¦, Т¦ — K¦, Т¦ — К¦, Т¦ — К¦, джокер А, джокер Б (можете считать это последовательностью 1—52, А, Б). Тогда первые десять результатов:
53, естественно, пропускается. Я оставил это число только для ясности. Если открытый текст:
то шифртекст:
Пример 2: Используя метод настройки 3 ключ «FOO», получаем первые 15 результатов:
Если открытый текст состоит из одних «А», то шифртекст будет:
- Предыдущая
- 131/132
- Следующая
