|
Целостность
означает сохранение точности и полноты информации в процессе
ее передачи. Первые способы коммуникации между компьютерами
не всегда обеспечивали целостность информации при ее
передаче от одного к другому. Иногда даже атмосферные помехи
приводили к искажению информации, передаваемой по телефонной
линии. Для решения этой проблемы была предложена идея
проверочных сумм. Суть ее проста: вы пересчитываете число
букв в вашем послании или какуюто более сложную
математическую функцию и посылаете это значение вместе с
посланием, а потом повторяете операцию после получения. Если
результат операции совпадает, значит, послание дошло до
получателя без искажения.
В качестве проверочной функции обычно используется простое
суммирование или суммирование по модулю. Естественно, надо
учитывать тот факт, что иногда двойная ошибка в послании
(где-то добавление единицы, а где-то ее убавление) может
привести к совпадению проверочной суммы. Для того чтобы
избежать подобных угроз, надо применять более сложные
функции для вычисления сумм. Один из наиболее современных
методов обеспечения целостности данных называется CRC
(Cyclicredundancy checks - «избыточные циклические
проверки»). Алгоритмы CRC рассматривают любое послание как
огромное двоичное число, а другое определенное число делят
на данное число. Остаток от деления и является проверочной
суммой. При таком способе очень мала вероятность случайного
повторения проверочной суммы при нарушении передаваемого
сообщения.
Но даже самые «продвинутые» методы проверочных сумм имеют
свои проблемы. Как отметил в 1993 году в своей статье
«Руководство по алгоритмам выявления ошибок при помощи CRC»)
Росс Вильямс, целью выявления ошибок является защита от
шумовых ошибок при передаче данных. Метод работает, если мы
озабочены только ошибками, случайно возникающими при
передаче данных. Алгоритм не предназначен защищать нашу
информацию от сознательно испорченной информации. Если
кто-то знает содержание передаваемого послания, он может
изменить его, но присоединить к посланию правильную
проверочную сумму. Тогда получатель ничего не будет знать о
вмешательстве в процесс передачи информации, поскольку
проверочные суммы совпадут.
Такая форма преднамеренного нарушения целостности данных
называется «Впрыскивание данных». В подобных случаях
наилучшим способом защиты данных является использование
более современных форм защиты целостности с использованием
криптографии. В настоящее время самый высокий уровень защиты
реализуется при помощи таких сильных криптографических
алгоритмов, как шифры MD5 или RC4.
Беспроводные сети сегодня используют потоковый шифр RC4 для
защиты передаваемых данных, так же как и для обеспечения их
целостности. Было доказано (и будет объяснено более детально
позднее в этой книге), что внедрение шифра RC4 с его
алгоритмом разделения ключей в сетях 802.11 предоставляет
хакеру достаточно информации, для того чтобы предсказать
секретный ключ шифрования в вашей сети. А если у хакера есть
ваш ключ, он не только получает доступ к вашей беспроводной
сети, но также видит все ее содержимое, как будто шифрования
нет совсем. |