Отправляет email-рассылки с помощью сервиса Sendsay
  Все выпуски  

RusFAQ.ru: Криптография


Информационный Канал Subscribe.Ru

РАССЫЛКИ ПОРТАЛА RUSFAQ.RU

/ КОМПЬЮТЕРЫ И ПО / Криптография / Шифрование данных

Выпуск № 7
от 01.05.2005, 00:10

Администратор:Калашников О.А.
В номере:Вопросов: 1, Ответов: 1


Вопрос № 20244: Доброго времени суток! Подскажите, пожалуйста алгоритмы, с помощью которых можно оценить качество шифрования, сгенерированной ключевой последовательности и т.д. Особенно интересует подобная проверка с помощью оценок энтропии. Растолкуйте, как это...

Вопрос № 20244
Доброго времени суток!
Подскажите, пожалуйста алгоритмы, с помощью которых можно оценить качество шифрования, сгенерированной ключевой последовательности и т.д. Особенно интересует подобная проверка с помощью оценок энтропии. Растолкуйте, как это можно сделать, или дайте ссылочку, где можно про это почитать.
Спасибо!
Отправлен: 26.04.2005, 00:00
Вопрос задал: Yaroslave (статус: Посетитель)
Всего ответов отправлено: 1

Отвечает: lupus campestris
Здравствуйте, Yaroslave!
Предположим, что у тебя на руках есть алгоритм шифрования и ты хочешь оценить его качество. Ты можешь проверить, устойчив ли он к существующим типам атак (встреча посередине, просто перебор, разделяй и побеждай, аналитический метод, метод криптоанализа при неравновероятной гамме, метод перекрытия гаммы, корреляционные атаки на поточные шифры, линейный и дифференциальный криптоанализ блочных шифров), кроме того, могут быть атаки, разработанные специально для твоего шифрпреобразования и если ты хочешь узнать, силльный ли у тебя шифратор, ты можешь просто опубликовать его схему и найдутся люди, которые будут ломать голову над тем, как бы его сломать - это все вполне серьезно, именно так и проходили выборы нового стандарта алгоритма шифрования в США.
Это со стороны криптоанализа.
Теперь со стороны криптосинтеза... Есть же определенные теоремы и так сказать правила, которые, как минимум, нужно соблюдать, чтобы твое шифрпреобразование было стойким. Например, что касается псевдослучаный последовательностей. Обычно их "изготовляют" с помощью линейного регистра сдвига и функции усложнения. Для достижения максимального периода на регистре сдвига, он должен образовываться транзитивным полиномом (g(x)=a+bx (mod p^k) транзитивен тогда и только тогда, когда: 1) (a,p)=1; 2) b=1 (mod p), p!=2; 3) b=1 (mod 4), p=2.). Транзитивный - это, простыми словами, когда он с максимальным циклом и очень маленьким хвостиком на подходе. А в качестве функции усложнения можно использовать треугольные функции. Пусть yi(z1,...,zi) - i координатная функция, представленная в виде многочлена Жегалкина, а gi - сгруппированные мономы, в которые не входит zi. Тогда предъявляются следующие требования: 1) все покоординатные функции должны быть линейны по старшей переменной; 2) а для i>1 gi имеет нечетный вес, а g1=1.
Если твой генератор псевдослучайный чисел не удовлетворяет этим требованиям, то он не самый удачный...
Теперь про энтропию (если ты еще не уснул ;) ).
Энтропия - это мера хаоса, т.е. если ты все знаешь, то энтропия равна нулю.
Применительно к нашей теме... Энтропия равняется среднему значению собственной информации. :)
Скажем, есть у тебя набор сообщений и каждому из них приписана вероятность его появления - все вместе это называется ансамбль сообщений. Тогда количество информации, которое в среднем должно иметься в нашем распоряжении для того, чтобы однозначно выделить любое сообщение из ансамбля, называется средним значением собственной информации.
I(x)=-сумма по всем k(P(x)*logP(x))=H(x)
H(x) - энтропия, I - информация.
Еще из нужных определений (предполагается, что ты сообщение x передаешь по каналу связи или шифруешь и получаешь y; тогда ты задаешь меру - т.е. строишь такую матрицу, где по столбикам и строчкам твои x и y, а на пересечении - их вероятность P(x,y)):
I(xk;yi)=I(yi;xk)=log(P(yi/xk)/p(yi)) - это взаимная информация, которая трактуется как количество информации, содержащейся в y относительно x. Если они независимы, то она равна 0.
Еще есть собственная информация I(xk)=-log(P(xk)) - измеряет количество информации, необходимое для однозначного определения xk.
Кстати, логарифмы по основанию 2.
Возвращаясь к определению энтропии.
Если рассматривать x как множество символов, использующихся для шифрования, то собственная информация в некотором символе равна количеству информации, которую этот символ может содержать на входе кодера, т.е. энтропия может являться мерой эффективности использования различных символов.
Для любого заданного алфавита символов количество информации, которое может содержаться в одном символе, достигает максимума, когда все символы равновероятны. Это максимальное значение называется пропускной способностью алфавита.
Если про что-нибудь нужно будет написать подробнее - спрашивай.

Ответ отправила: lupus campestris (статус: Специалист)
Отправлен: 28.04.2005, 21:17


Отправить вопрос экспертам этой рассылки

Приложение (если необходимо):

* Код программы, выдержки из закона и т.п. дополнение к вопросу.
Эта информация будет отображена в аналогичном окне как есть.

Обратите внимание!
Вопрос будет отправлен всем экспертам данной рассылки!

Для того, чтобы отправить вопрос выбранным экспертам этой рассылки или
экспертам другой рассылки портала RusFAQ.ru, зайдите непосредственно на RusFAQ.ru.


Форма НЕ работает в почтовых программах The BAT! и MS Outlook (кроме версии 2003+)!
Чтобы отправить вопрос, откройте это письмо в браузере или зайдите на сайт RusFAQ.ru.


© 2001-2005, RusFAQ.ru, Россия, Москва. Все права защищены.
Идея, дизайн, программирование, авторское право: Калашников О.А.


http://subscribe.ru/
http://subscribe.ru/feedback/
Подписан адрес:
Код этой рассылки: comp.soft.prog.encrypt
Отписаться

В избранное