Важнейшим для развития криптографии был результат К. Шеннона о существовании и единственности абсолютно стойкого шифра. Единственным таким шифром является какая-нибудь форма так называемой ленты однократного использования, в которой открытый текст «объединяется» с полностью случайным ключом такой же длины. Этот результат был доказан К. Шенноном с помощью разработанного им теоретико-информационного метода исследования шифров. Обсудим особенности строения абсолютно стойкого шифра и возможности его практического использования.
Пусть { Ki; 0< i<n } – независимые случайные переменные, принимающие равновероятные значения на множестве Zm:
P{(K 0, K 1,..., Kn -1)=(k 0, k 1,..., kn -1)}=(1/ m) n.
Одноразовая системашифрования преобразует исходный текст
(x 0, x 1,..., xn -1) в шифрованный текст (y 0, y 1,..., yn -1) при помощи подстановки Цезаpя:
yi =Е k (xi)=(ki + xi) mod m, i =0,..., n-1.
Для такой системы подстановки используют также термин "одноразовая лента" и "одноразовый блокнот". Пространство ключей К системы одноразовой подстановки состоит из векторов (k 0, k 1,..., kn -1) и содержит mn точек.
|
|
Процесс шифрования фактически представляет собой наложение белого шума в виде бесконечного ключа на исходный текст, которое меняет статистические характеристики языка источника. Системы одноразового использования теоретически не расшифруемы, так как не содержат достаточной информации для восстановления текста.
Подчеркнем, что для абсолютной стойкости существенным является каждое из следующих требований к ленте однократного использования:
1) полная случайность и равновероятность ключа (это, в частности, означает, что ключ нельзя вырабатывать с помощью какого-либо детерминированного устройства);
2) равенство длины ключа и длины открытого текста;
3) однократность использования ключа.
В случае нарушения хотя бы одного из этих условий шифр перестает быть абсолютно стойким, и появляются принципиальные возможности для его вскрытия (хотя они могут быть трудно реализуемыми). Но именно эти условия и делают абсолютно стойкий шифр очень дорогим и непрактичным. Прежде чем пользоваться таким шифром, мы должны обеспечить всех абонентов достаточным запасом случайных ключей и исключить возможность их повторного применения.
В случае передачи информации по компьютерным сетям, в частности для информационных систем, где приходится шифровать многие миллионы знаков, задача, хотя, и решена теоретически, с практической точки зрения не подвинулась не на шаг, так как передача секретного текста заменяется передачей секретного ключа точно такой же длины.
|
|
1.24. Шифр Вернама
Простым примером реализации абсолютно стойкого шифра (при использовании ключа,равного по длине исходному тексту) является шифр, предложенный в 1926 году сотрудником фирмы AT&T Вернамом. Разработанное Вернамом на основе этого аппарата считывающее устройство и оборудование для шифрования использовалось в то время корпусом связи армии США.
Шифр использует двоичное представление символов исходного текста с использованием телеграфного кода Бодо, где каждая буква исходного текста переводилась в пятибитовый символ с использованием старинного телетайпа фирмы AT&T и записывалась на бумажной перфоленте. Таким же образом записывался на перфоленте и ключ. При шифровании, которое могло быть выполнено простым наложением двух перфолент одинаковой длины друг на друга, ключ добавлялся к исходному тексту путем побитового сложения Å по модулю два символов открытого текста и ключа:
yi = xi Å ki, i=1,…, n.
Здесь х1 х2 ... xп – открытый текст, k1 k2 ... kп – ключ, y1 y2 ... yп – шифрованный текст.
Дешифрование выполняется аналогично (наложением перфолент) и состоит в сложении по модулю два символов шифртекста с той же последовательностью ключей:
yi Å ki = xi Å ki Å ki = xi, i=1,…,n.
При этом последовательности ключей, использованные при шифровании и дешифровании, при сложении по модулю два компенсируют друг друга и в результате восстанавливаются символы х исходного текста.
Однако при реализации метода Вернама возникают серьезные проблемы, связанные с необходимостью доставки получателю такой же последовательности ключей, как у отправителя, либо с необходимостью, безопасного хранения идентичных последовательностей ключей у отправителя и получателя. Эти недостатки системы шифрования Вернама преодолены при шифровании методом гаммирования.