Криптоанализ блочных шифров

Доброго времени суток! Многим известно, что стандартом по умолчанию в области симметричного шифрования долгое время считался алгоритм DES. Первая успешная атака на этот неубиваемый алгоритм была опубликована в 1993 году, спустя 16 лет после принятия его в качестве стандарта. Метод, который автор назвал линейным криптоанализом, при наличии 247 пар открытых/зашифрованных текстов, позволяет вскрыть секретный ключ шифра […]

Уязвимости алгоритма CRC16/32

Доброго времени суток! Алгоритм CRC16/32 изначально предназначался для контроля целости данных от непреднамеренных искажений и широко используется в проводных и беспроводных сетях, магнитных и оптических носителях, а так же микросхемах постоянной или перешиваемой памяти. «Надежность» CRC32 оценивается как 2^32 == 4.294.967.296, то есть вероятность, что контрольная сумма искаженного файла «волшебным» образом совпадает с оригиналом оценивается (в среднем) как один против […]

Основные аспекты алгоритма CRC32

Доброго времени суток! Хочу рассказать об основных аспектах алгоритма crc32. Небольшое понимание математики (многочлен деления) было бы полезно, но я пишу эту статью так, чтобы оно не потребовалось. Вы, однако, должны понимать C++ — это само собой подразумевается. Зачем использовать CRC32? Мне оно понадобилось для одного из своих небольших проектов — я решил написать приложение […]

Алгоритм AES (Advanced Encryption Standard)

Доброго времени суток! Долгое время я считал, что криптографические алгоритмы шифрования и хеширования, вроде AES и MD5, устроены очень сложно и написать их совсем не просто, даже имея под рукой полную документацию. Запутанные реализации этих алгоритмов на разных языках программирования только укрепляли это мнение. Но недавно у меня появилось много свободного времени и я решил разобраться […]

Криптостойкий ГПСЧ

Доброго времени суток! Поговорим о криптостойкости генераторов псевдослучайных чисел (ГПСЧ). Для начала определимся что же такое криптостойкий ГПСЧ (КСГПСЧ). КСГПСЧ должен удовлетворять «тесту на следующий бит». Смысл теста в следующем: не должно существовать полиномиального алгоритма, который, зная первые k битов случайной последовательности, сможет предсказать k+1 битов с вероятностью более 50 %. Ознакомиться подробнее можно тут Wikipedia […]

Все методы взлома MD5

Доброго времени суток! Ни для кого не секрет, что криптография прочно вошла в нашу жизнь. Интернет-сервисы, социальные сети, мобильные устройства — все они хранят в своих базах пароли пользователей, зашифрованные с помощью различных алгоритмов. Наиболее популярным таким алгоритмом сегодня, безусловно, является MD5. О способах его взлома и пойдет речь. Немного о криптографии Современная криптография включает […]