Криптография Режимы шифрования Криптоанализ Сертификаты Брандмауэры Безопасность в беспроводных сетях Конфиденциальность электронной перепискиСтеганография


Информационная безопасность

Криптоанализ

Прежде чем закончить разговор об использовании симметричных ключей в криптографии, необходимо хотя бы упомянуть о четырех направлениях развития криптоанализа. Первый подход называется дифференциальным криптоанализом (Biham и Shamir, 1993). Он может использоваться для взлома любых блочных шифров. Для начала анализируется пара блоков открытого текста, различающихся лишь небольшим числом бит. При этом внимательно анализируется происходящее при каждой внутренней итерации во время шифрации. Во многих случаях можно заметить, что одни битовые последовательности встречаются чаще других, и это соображение используется для взлома, основанного на теории вероятностей.

Второй подход, который следует обозначить, называется линейным криптоанализом (Matsui, 1994). С его помощью можно взломать DES только с 243 известными открытыми текстовыми блоками. Принцип работы основан на суммировании по модулю 2 некоторых бит открытого текста и изучении результатов для шаблонных последовательностей. Если повторять эту процедуру много раз, половина бит будет иметь нулевые значения, половина — единичные. Тем не менее, довольно часто это соотношение изменяется в ту или иную сторону. Это отклонение, каким бы малым оно ни было, может использоваться для снижения показателя трудозатрат криптоаналитика. Более подробную информацию см. в материалах автора этого метода, Мацуи (Matsui).

Третье направление развития связано с анализом потребляемой электроэнергии для вычисления секретного ключа. Обычно в компьютерах напряжение 3 В соответствует логической единице, а О В — логическому нулю. Таким образом, обработка единицы требует большего потребления электроэнергии, чем обработка нуля. Если криптографический алгоритм состоит из цикла, в котором разряды ключа обрабатываются поочередно, взломщик, заменив главные системные и-гигагерцевые часы медленными (например, с частотой 100 Гц) и повесив «крокодилы» на ножки питания и заземления центрального процессора, может с большой точностью отслеживать мощность, потребляемую каждой машинной инструкцией. По этим данным узнать секретный ключ оказывается на удивление просто. Этот метод криптоанализа можно победить лишь аккуратным кодированием алгоритма на языке Ассемблера таким образом, чтобы энергопотребление не зависело ни от общего ключа, ни от ключей каждой итерации.

В 1976 году два исследователя из Стэнфордского университета, Диффи и Хеллман, предложили радикально новую криптосистему, в которой ключ шифрования и ключ дешифрации были различными, кроме того, ключ дешифрации нельзя было получить из ключа шифрования.

Алгоритм RSA Единственная загвоздка состоит в том, чтобы найти алгоритмы, удовлетворяющие всем трем требованиям. Поскольку преимущества шифрования с открытым ключом очевидны, многие исследователи неустанно работали над созданием подобных алгоритмов, и некоторые из них уже опубликованы.

Другие алгоритмы с открытым ключом Хотя алгоритм RSA получил широкое распространение, он ни в коей мере не является единственным известным алгоритмом с открытым ключом.

Первым алгоритмом с открытым ключом стал «алгоритм ранца» К счастью, здесь может помочь шифрование с открытым ключом.

Предположим, что алгоритмы шифрования и дешифрации с открытым ключом, помимо обычного свойства D(E(P)) = Р, обладают свойством E(D(P)) = Р. В принципе, для цифровых подписей можно использовать любой алгоритм с открытым ключом. Алгоритм RSA, фактически, стал промышленным стандартом. Он применяется во многих программах, предназначенных для обеспечения безопасности.

Профили сообщений Многие методы цифровых подписей критикуются за то, что в них совмещаются две различные функции: аутентификация и секретность. Довольно часто требуется только аутентификация. К тому же, например, получить лицензию на экспорт обычно проще, если система обеспечивает только аутентификацию, но не секретность.

Профиль сообщения может также применяться для гарантии сохранности сообщения при передаче его по сети в системах шифрования с открытым ключом

Второй широко применяемой функцией вычисления профиля сообщения является SHA (Secure Hash Algorithm — надежный алгоритм хэширования), разработанный Агентством национальной безопасности США (NSA) и получивший благословение национального института стандартов и технологий NIST

Такая реализация присуща, например, SPARC. Однако вне зависимости от используемой техники SHA-1 вставляет битовое дополнение в конец сообщения.

Задача о днях рождения В мире шифров многое оказывается совсем не таким, каким кажется на первый взгляд. Можно, например, предполагать, что для ниспровержения профиля сообщения, состоящего из т разрядов, потребуется порядка 2т операций. К несчастью для Тома, у Элен роман с Диком, и она хочет обмануть Тома.

Поэтому она пишет следующее письмо с 32 вариантами в квадратных скобках.

Криптография с использованием открытых ключей позволяет передавать секретные данные, не обладая общим ключом, а также создавать электронные подписи сообщений без необходимости привлечения третьей, доверительной стороны.

Четвертый подход основан на временном анализе. Криптографические алгоритмы содержат большое количество условных операторов (if), тестирующих биты итерационных ключей. Если части then и el se выполняются за различное время, то, замедлив системные часы и измерив длительность всех шагов, можно вычислить ключи итераций. По этим ключам обычно можно вычислить и общий ключ. Анализ энергопотребления и временной анализ могут применяться и одновременно, что позволяет упростить задачу криптоанализа. Несмотря на то, что анализы энергозатрат и времени выполнения операций могут показаться несколько экзотическими, на самом деле они представляют собой мощные методы, способные взломать любой шифр, если только он не имеет специальной защиты.

Исторически процесс передачи ключа всегда был слабым звеном почти по всех системах шифрования. Независимо от того, насколько прочна была сама криптосистема, если нарушитель мог украсть ключ, система становилась бесполезной. До 1976 года все криптологи исходили из предпосылки, что ключ дешифрации должен быть идентичен ключу шифрования (или один может легко получиться из другого). В то же время, ключи должны были быть у всех пользователей системы. Таким образом, казалось, что эта проблема неустранима: ключи должны быть защищены от кражи, и в то же время их нужно распространять среди пользователей, поэтому их нельзя просто хранить в банковском сейфе.


Безопасность в компьютерных сетях