Раздел: Документация
0 ... 94 95 96 97 98 99 100 ... 169 для всех блоков нгифруемьгх массивов, а не только для первых двух отличающихся, как это было в общем случае. Последнее соотношение позволяет восстановить оба открытых сообщения, причем тем легче, чем большей избыточностью они обладают. Данная ситуация по сути представляет случай повторного использования одноразовой гаммы и влечет те же самые катастрофические для шифра последствия. Вот почему для систем шифрования, в которых используются потоковые режимы, необходимо обеспечивать уникальность синхропосылки в случаях, когда возможно зашифрование нескольких массивов данных на одном и том же ключе. Что такое PGP? PGP (Pretty Good Privacy) - программа, служащая для кодирования и/или подписывания сообщений, файлов и любой другой информации, представленной в электронном виде. В основе работы PGP лежит алгоритм RSA (Rivest-Shamir-основанный на наличии двух ключей - открытого и секретного. Открытый ключ распространяется максимальному количеству людей (через KeyServera, лично, и т. п.), а секретный должен находиться только у владельца (причем в надежном месте; если к компьютеру, на котором вы работаете, имеют доступ другие люди — храните свой секретный ключ на дискете). Криптостойкость алгоритма RSA основывается на том, что современной математике не известны алгоритмы разложения больших простых чисел за реальное время. Зачем это нужно? Итак, вы хотите передать мне какой-либо файл по электронной почте и при этом быть уверенным, что никто другой, кроме меня, не сможет прочитать этот файл: вы берете мой открытый ключ, кодируете им свой файл и отправляете файл мне. Никто, кроме меня, не сможет прочитать этот закодированный файл без моего секретного ключа. Другой пример: вы хотите, отправляя свои письма, быть уверенным в том, что никто не исказил содержимое письма, для этого вы подписываете письмо электронной подписью с помощью вашего секретного ключа и посылаете его (письмо). Получив ваше письмо и обладая вашим открытым ключом, я могу удостовериться в том, что ни один бит информации не был искажен при прохождении письма. Хорошим примером использования элек- 293 тронной подписи может служить способ распространения дополнений к антивирусу Dr.Web. Как им пользоваться? Для начала нужно создать пару ключей (открытый и закрытый). Это делается с помощью программы PGPkeys. Я советую вам использовать ключи не менее 1024 бит. В freeware-версии программы можно создавать только ключиСтарый тип ключей можно создать с помощью коммерческой версии или с помощью PGP 2.6.Х. Ваша пара ключей занесется в общий список доступных вам ключей (в основном, конечно, открытых). Теперь, имея пару ключей, вы можете легко подписывать, кодировать файлы (в стандартный explorer добавился пункт меню PGP по правой кнопке мышки), а также буфер обмена (clipboard) через программу, запущенную в traye (при установке сама прописывает эту программу в startup меню). Советую делать резервную копию базы данных открытых ключей (pubring.pkr), а также хранить секретный ключ (secring.skr) и файл randseed.bin на дискете, доступной только вам. Что такое Rijndael? представляет собой итеративный блочный шифр, имеющий переменную длину блоков и различные длины ключей. Длина ключа и длина блока могут быть независимо друг от друга 192 или 256 бит. Мы объясним структуру шифра и это не является руководством для реализации. «Состояние», Ключ шифрования и Число Циклов Разнообразные преобразования работают с промежуточным результатом, называемым Состоянием (State). Определение: промежуточный результат шифрования назовем «состоянием» (State) Состояние можно представить в виде прямоугольного массива байтов. Этот массив имеет 4 строки, а число столбцов обозначено как Nb и равно длине блока, деленной на 32. Ключ шифрования также представлен в виде прямоугольного массива с четырьмя строками. Число столбцов обозначено как Nk и 294 равно длине ключа, деленной на 32. Это показано на рисунке 1. В некоторых случаях ключ шифрования показан как линейный массив 4-байтовых слов. Слова состоят из 4 байтов, которые находятся в одном столбце (при представлении в виде прямоугольного массива).
Рисунок1. Пример представления Состояния (Nb-6) и Ключа шифрования (Nk-4) Входные данные для шифра («открытый текст», если используется режим шифрования ЕСВ) обозначаются как байты состояния в порядке аО,0, al,0, аЗ,0, аО,1, al,l, аЗ,1, а4,1... После завершения действия шифра выходные данные получаются из байтов состояния в же порядке. Число циклов обозначено как Nr и зависит от значений Nb и Nk. Оно приведено в таблице 1.
: Таблица Число циклов (Nr) как функция от длины ключа и длины блока 295 0 ... 94 95 96 97 98 99 100 ... 169
|