Э. Таненбаум - Компьютерные сети. (4-е издание) (DJVU) (1130092), страница 222
Текст из файла (страница 222)
Этот метод, известный как одноразовый блокнот, теоретически является панацеей от любых атак, независимо от вычислительных мощностей, которыми обладает или будет когда-либо в будущем обладать взломщик. Объясняется этот невероятный факт с помощью теории информации; дело в том, что в зашифрованном сообщении не содержится никакой информации для взломщика, поскольку любой открытый текст является равновероятным кандидатом. Пример практического использования одноразового блокнота показан на рис. 8.3. Для начала фраза «1 1оуе уоц.» («Я люблю тебя.») преобразуется в 7-битный АЗСП-код. Затем выбирается одноразовая последовательность, Последовательность 1, которая складывается по модулю 2 с сообщением. В результате получается некий шифр.
Для того чтобы его разгадать, криптоаналитику придется перебрать все возможные одноразовые последовательности, всякий раз проверяя, каким получается открытый текст. Например, если попробовать расшифровать послание с помощью Последовательности 2 (рис. 8.3), получится текст «Е1у)з 11уез» («Элвис жив»). Обсуждение правдоподобности этого утверждения выходит за рамки данной книги, однако, как мы видим, исходное сообщение разгадать не удалось, но при этом получилась вполне нормальная с точки зрения английской грамматики фраза. На самом деле, для любой последовательности из 11 символов в кодировке А5СП найдется одноразовый блокнот для ее генерации. Именно это мы имеем в виду, говоря, что в зашифрованном тексте не содержится никакой информации: из него можно извлечь любое сообщение подходящей длины.
Сообщение 1: 1001001 0100001 1101100 1101111 1110110 1100101 0100000 1111001 1101111 1110101 0101110 Последовательность 1: 1010010 1001011 1110010 1010101 1010010 1100011 0001011 0101010 1010111 1100110 0101011 Зашифрованный текст: 0011011 1101011 0011110 0111010 0100100 0000110 0101011 1010011 0111000 0010011 0000101 Последовательность 2: 1011110 0000111 1101000 1010011 1010111 0100110 1000111 0111010 1001110 1110110 1110110 Открытое ссюбщенив 2 1000101 1101100 1110110 1101001 1110011 0100000 1101100 1101001 1110110 1100101 1110011 Рис.
8.3. использование одноразового блокнота для шифрования сообщений и возможность получения произвольного открытого сообщения из зашифрованного путем подстановки другой ключевой последовательности Одноразовые ключи теоретически являются очень мощным инструментом, однако у них есть ряд практических недостатков. Во-первых, такой длинный ключ невозможно запомнить, поэтому и отправитель, и получатель должны носить с собой письменную копию ключа Если есть опасность того, что одна из этих копий может быть захвачена неприятелем, хранение письменных копий оказывается весьма нежелательным.
Кроме того, полный объем данных, которые могут быть переданы, ограничен размером доступного ключа. Если шпиону повезет и он добудет большое количество информации, может выясниться, что он не сможет пе- а26 Глава 8. Безопасность в сетях редать все эти сведения в центр, так как ему не хватит длины ключа. Еще одна проблема заключается в чувствительности данного метода к потерянным или вставленным символам. Если отправитель или получатель потеряют синхронизацию, все данные, начиная с этого места, будут испорчены. С появлением компьютеров метод одноразового блокнота может получить практическое применение. Ключ можно хранить на специальном диске РЧР, содержащем несколько гигабит информации.
Он даже не вызовет особых подозрений, если его перевозить в коробке от видеокомпакт-диска и в начале даже записать несколько минут фильма. Конечно, в сетях со скоростями передачи данных, исчисляюшимися гигабитами, необходимость менять компакт-диск через каждые 30 секунд быстро утомит. Получается, что РЪ'Р с одноразовым ключом нужно вручить лично в руки будушему получателю секретного сообщения, а такой подход резко снижает вероятность практического использования метода одноразового блокнота Квантовая криптография Интересно, что решение проблемы передачи по сети одноразовой последовательности пришло из довольно далекой науки — квантовой механики.
Эта область остается экспериментальной, однако многообещающей. Если удастся усовершенствовать этот метод, все задачи криптографии можно будет решать с помощью одноразовых последовательностей, ведь это самый надежный способ защиты информации. Далее мы вкратце опишем суть технологии, называемой квантовой криптографией. В частности, мы рассмотрим протокол ВВ84, названный так в честь его создателей и года, в котором его описание было впервые опубликовано (Венце~ и Вгаззагд, 1984). Допустим, пользователь по имени Алиса хочет передать одноразовую последовательность другому пользователю, Бобу, Алиса и Боб называются принципалами, это главные герои в нашей истории.
Например, Боб может быть банкиром, а Алиса — лицом, желающим вступить в деловые отношения с ним. В последнее время практически во всех материалах, касающихся криптографии, имена «Алиса» и «Боб» традиционно используются для обозначения принципалов. Шифровальщики вообще обожают разного рода традиции. Если бы мы стали описывать тут взаимоотношения Андрея и Беллы вместо Алисы и Боба, ни одному слову в этой главе никто бы не поверил (стало бы понятно, что автор, на самом деле, далек от криптографии).
А так, может быть, поверят. Поэтому пусть Алиса и Боб будут героями нашей книги. Итак, если Алисе и Бобу удастся установить единую одноразовую последовательность, их переговоры будут полностью конфиденциальными. Задача стоит следующим образом: как им обменяться секретным ключом, не передавая друг другу Р'1гР7 Мы можем предположить, что оба пользователя находятся на разных концах одного оптоволоконного кабеля, по которому они могут передавать и принимать световые импульсы. Тем не менее, нашлась бесстрашная шпионка Труди, которой удалось установить на пути этого кабеля активное подслушивающее устройство, Она может считывать сигналы, идущие в обоих направлениях. Кроме того, она может посылать как в одну, так и в другую сторону фальши- КРиптогРафия 827 вые сообщения. Ситуация для Алисы и Боба, казалось бы, безнадежная.
Но тут на помощь приходит квантовая криптография, и мы сейчас увидим, что у наших героев появляется лучик надежды. Квантовая криптография базируется на том факте, что свет передается маленькими порциями, называемыми фотонами и обладающими некоторыми необычными свойствами. Кроме того, пропуская свет через поляризационный фильтр, можно добиться его поляризации. Этот факт известен, прежде всего, тем, кто носит солнцезащитные очки, а также фотографам.
Световой луч (то есть поток фотонов), проходя через такой фильтр, поляризуется в направлении оси фильтра (например, вертикально). Если после этого пропустить луч через второй фильтр, интенсивность света на выходе будет пропорциональна квадрату косинуса угла между осями фильтров. Если оси расположить перпендикулярно, фотоны через фильтры проникнуть не смогут. Абсолютная ориентация осей в пространстве значения не имеет — важно только их взаимное расположение.
Чтобы сгенерировать одноразовый блокнот, Алисе понадобятся два набора поляризационных фильтров. Первый набор состоит из вертикального и горизонтального фильтров. Это называется прямолинейным базисом. Базис — это просто система координат. Второй набор фильтров отличается от первого только тем, что он повернут на 45', то есть один фильтр можно представить в виде линии, идущей из нижнего левого угла в верхний правый, а другой — из верхнего левого в нижний правый угол. Это называется диагональным базисом. Итак, у Алисы есть два набора фильтров, и она может поставить любой из них на пути светового луча.
Но четыре стеклышка-поляризатора — это нечто в стиле сказки про Алису в стране чудес. В реальности имеется кристалл, одна из четырех возможных поляризаций которого изменяется электронным способом с огромной скоростью. У Боба есть такое же устройство, как у Алисы. Тот факт, что у Алисы и Боба есть по два базиса, играет важную роль в квантовой криптографии. В каждом базисе Алиса обозначает одно из направлений нулем, а другое, соответственно, — единицей. В примере, показанном далее, мы предполагаем, что она выбрала вертикальное направление в качестве нулевого, а горизонтальное — в качестве единичного.
Независимо от этого направлению «нижний левый — верхний правый» присваивается значение О, а направлению «верхний левый — нижний правый» вЂ” 1. Эта информация передается Бобу в виде открытого текста. Теперь Алиса берет одноразовый блокнот, построенный, например, генератором случайных чисел (этот генератор сам по себе, кстати, представляет собой довольно сложный предмет), и передает его Бобу. Передача производится поразрядно, для каждого бита один из двух базисов выбирается случайным образом.
Чтобы передать бит, фотонная пушка испускает один фотон, поляризованный таким образом, чтобы он мог пройти через базис, выбранный для этого бита, Например, базисы могут выбираться в такой последовательности: диагональный, прямолинейный, прямолинейный, диагональный, прямолинейный и т. д, Чтобы передать одноразовый блокнот, состоящий из последовательности 1001110010100110, с помощью этих базисов, посылаются фотоны, показанные на рис. 8А, а. Для данного одноразового блокнота и соответствующей ему последовательности базисов единственным образом определяется поляризация, применяемая для каждого 828 Глава Б.
Безопасность в сетях бита. Биты, посылаемые одним фотоном за единицу времени, называются кван- тобитами. Номер битв О Данные 1 1 2 3 4 6 6 7 8 9 10 11 12 13 14 0 0 1 1 1 0 0 1 0 1 0 0 1 1 16 0 То, что отправляет Алиса в " ~ и " вк „г" +-и +-и„г „кя +-+ Базисы М Боба „г и.'в ~' ' и'1 и-+ в;и полУчавт з Нвт Да Нвт Да Нвт Нвт Нвт Да Дв Нвт Да Да Да Нет Дв Нвт Одноразовый блокнот 0 1 0 1 1 0 0 1 Базисы Труди Блокнот Труди Рис.