Брюс Шнайер - Секреты и ложь. Безопасность данных в цифровом мире
- Название:Секреты и ложь. Безопасность данных в цифровом мире
- Автор:
- Жанр:
- Издательство:Питер
- Год:2003
- Город:СПб
- ISBN:ISBN 5-318-00193-9
- Рейтинг:
- Избранное:Добавить в избранное
-
Отзывы:
-
Ваша оценка:
Брюс Шнайер - Секреты и ложь. Безопасность данных в цифровом мире краткое содержание
В этой книге Брюс Шнайер – автор нескольких бестселлеров и признанный специалист в области безопасности и защиты информации, опираясь на собственный опыт, разрушает заблуждения многих, уверенных в конфиденциальности и неприкосновенности информации. Он разъясняет читателям, почему так сложно предотвратить доступ третьих лиц к личной цифровой информации, что нужно знать, чтобы обеспечить ее защиту, сколько средств следует выделять на обеспечение корпоративной безопасности и многое, многое другое.
Секреты и ложь. Безопасность данных в цифровом мире - читать онлайн бесплатно полную версию (весь текст целиком)
Интервал:
Закладка:
Один из простейших критериев сравнения криптографических алгоритмов – длина ключа. Пресса любит обращать на нее внимание, поскольку ее легко считать и сравнивать. Как и в большинстве случаев, когда речь идет о безопасности, реальность более сложна. Короткий ключ плох, но длинный ключ не будет хорошим автоматически. Почему это так, я расскажу в следующей главе, а сейчас лучше разъяснить понятие длины ключа и его важность.
Начнем с самого начала. Криптографический ключ – это секретное число, которое делает криптографический алгоритм уникальным для тех, кто совместно пользуется этим ключом. Если Алиса и Боб договорились об общем ключе, то при помощи алгоритма они могут тайно пообщаться. Если Ева-перехватчица не знает ключа, ей придется исследовать и ломать алгоритм.
Одна очевидная вещь, которую можно сделать, – это перепробовать все возможные ключи. Это так называемая атака «в лоб», или лобовая атака. Если длина ключа n битов, то существует 2^n всевозможных комбинаций ключей. При длине ключа в 40 бит, придется перебрать около триллиона вариантов ключей. Такая задача покажется ужасно скучной для Евы, но компьютеры неутомимы. Они лучше всех решают ужасно скучные задачи. В среднем компьютеру пришлось бы испробовать половину ключей, прежде чем он найдет правильный, то есть компьютер, который мог бы проверять миллиард ключей в секунду, потратил бы на поиски правильного 40-битового ключа примерно 18 минут. В 1998 году Electronic Frontier Foundation создала машину, которая могла атакой «в лоб» ломать DES-алгоритм. Эта машина, названная DES Deep Crack, проверяла 90 миллиардов ключей в секунду; она могла найти 56-битовый ключ DES в среднем за 4,5 дня. В 1999 году распределенный интернет-проект подбора ключей для взлома DES, distributed net (включающий в себя Deep Crack), был способен проверить 250 миллиардов ключей в секунду.
Все схемы таких взломов «в лоб» линейны: вдвое большее количество ключей потребует вдвое больше компьютерного времени. Но сложность такого взлома зависит от длины ключей экспоненциально: добавим один бит к длине ключа, и взлом «в лоб» станет в два раза сложнее. Добавим два бита – в четыре раза. Десять битов – в тысячу раз сложнее.
Сила атак «в лоб» в том, что они работают против любого алгоритма. Поскольку эта атака не касается внутренней математики алгоритма, ей все равно, что же там внутри. Одни алгоритмы могут быть быстрее других, и поэтому атака «в лоб» проходит быстрее, но длина ключа легко это перевешивает. Достаточно просто сравнить длины ключей различных алгоритмов, чтобы выяснить, какие из них более уязвимы для лобовой атаки.
В 1996 году группа шифровальщиков (включающая и меня) исследовала различные технологии, которые можно использовать для создания дешифрующих машин, действующих по принципу лобовой атаки, и пришла к выводу, что 90-битовый ключ сможет обеспечивать безопасность до 2016 года. Ключ Triple-DES состоит из 112 бит, а наиболее современные алгоритмы имеют по меньшей мере 128-битовые ключи. (Улучшенный стандарт шифрования (AES) правительства США поддерживает длины ключей 128,192 и 256 бит.) Даже машине, работающей в миллиард раз быстрее Deep Crack, потребовался бы миллион лет, чтобы перебрать 2^112 ключей и восстановить открытый текст; еще более, чем в тысячу раз, возрастает время при переходе к 128-битовому ключу. Он будет обеспечивать безопасность в течение тысячелетия.
К этим числам нужно относиться с некоторым скептицизмом. Я – не ясновидящий и ничего не знаю о будущих достижениях компьютерных технологий. Реальная безопасность зависит от нескольких вещей: насколько ваши данные ценны, как долго их требуется хранить в тайне и т. п. Но это означает, что должны существовать «законсервированные» числа – длины ключей для симметричных алгоритмов и MAC. Хэш-функции должны иметь длину, равную удвоенной длине ключа.
Длина ключа для симметричного алгоритма открытого ключа определяется более сложным образом. Наиболее эффективная атака против RSA, например, состоит в том, чтобы разложить на множители большое число. Наиболее действенная атака против Эль-Гамаля, алгоритма Диффи-Хеллмана, DSA и других систем – вычислить нечто, называемое дискретным логарифмом. (По существу, это – та же проблема.) Алгоритмы эллиптических кривых еще более сложны.
Для алгоритмов с открытым ключом специалисты сейчас рекомендуют 1024-битовые и более ключи. Параноики используют ключи еще длиннее. Системы, для которых не слишком важна долговременная секретность, пользуются 768-битовыми ключами. (Для алгоритмов эллиптических кривых применяют разные длины ключей.)
Трудно оценивать будущие трудности разложения на множители и вычисления дискретных логарифмов, поскольку нет никакого математического доказательства, что эти задачи имеют фиксированную степень сложности. (С другой стороны, мы знаем, насколько трудно перебирать все возможные ключи.) Итак, еще раз: отнеситесь ко всем этим рекомендациям, как к мнению квалифицированных специалистов – и не более того.
Глава 7
Криптография в контексте
Если криптография так надежна, то почему же происходят сбои в системах защиты? Почему существуют электронные кражи, мошенничество, нарушения конфиденциальности и все прочие проблемы безопасности, которые обсуждались в предыдущих главах? Почему криптография не соответствует всем без исключения требованиям безопасности? Зачем я докучаю вам такой толстой книгой?
Достаточно неожиданно, но причина этого не в плохом качестве криптографии. (Многое лежит на поверхности, но есть и проблемы, упрятанные гораздо более глубоко.) Ответ нужно искать в различии между теорией и практикой.
Криптография – это раздел математики. Математика – теоретическая наука; она логична. Хорошая математика исходит из правильной предпосылки, следует единственным путем – доказательство за доказательством – через неизведанные земли и заканчивается неопровержимым выводом. По природе своей она хорошо выглядит на бумаге.
Корни проблем безопасности следует искать в физическом мире. Материальный мир во многом нелогичен. Он неупорядочен. В нем не существует единственного пути. В нем есть теории и выводы, но для того чтобы согласиться с выводами, вам необходимо принять предпосылки, модели и взаимосвязи между теориями и реальным миром. А это непросто. Люди не играют по правилам. Они делают то, чего от них не ожидают; они не укладываются в жесткие рамки. То же самое касается технических средств: время от времени все начинает плохо работать, а то и вовсе ломается. Это же можно сказать о программном обеспечении. Оно должно быть логичным и упорядоченным, как-никак это – просто комбинация нулей и единиц, но иногда оно настолько сложно, что становится больше похожим на организм, а не на творение математики. Неважно, насколько хороша криптографическая теория: когда она используется в системе, она сталкивается с практикой.
Читать дальшеИнтервал:
Закладка: