Смекни!
smekni.com

Анализ системы безопасности Microsoft Windows 2000 Advanced Server и стратегий ее использования (стр. 4 из 12)

• IDEA. Этот шифр обладает ключом длиной 128 бит — значитель­но больше, чем использует DES. В то время как обладающая серь­езной мотивацией и финансированием организация или большая команда хакеров может взломать закодированное DES-сообщение, большое пространство ключей делает неосуществимой атаку на IDEA по методу грубой силы. IDEA был разработан как шифр, неуязвимый для линейного и дифференциального криптоанализа. IDEA запатентован в Европе и США.

Blowfish. Этот шифр может использовать ключ длиной от 32 до 448 бит, позволяя выбрать степень секретности сообщения.

3.1.4. Однонаправленные функции

При наборе пароля для входа в Windows 2000, он шифруется и сравнивается с хранимым зашифрованным значением паро­ля. Пароль сохраняется при помощи однонаправленной функции (one-way function), также называемой хэш (hash), trap-door, digest или fingerprint1.

Хэш-функции также могут применяться для других целей. Например, можно использовать хэш-функцию, чтобы создать «отпечатки пальцев» файлов (создать цифровые отпечатки пальцев, или хэш-значение, которое будет уникально для данного файла). Хэш-функция может давать результат, который будет гораздо меньше, чем входной текст, хэширование занимающего много мегабайтов документа текстового процессора, например, может дать 128-разрядное число. Хэш-значение также уникально для файла, который его породил; практически невоз­можно создать другой файл, который произвел бы то же хэш-значение.

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

Некоторым хэш-функциям требуется ключ, другим — нет. Хэш-функция с ключом может вычисляться только кем-либо (или чем-либо), имеющим этот ключ.

3.1.5. Шифрование с открытым ключом

В то время как симметричные шифры используют один ключ для заши­фровки и расшифровки сообщений, шифрование с открытым ключом (public key encryption), или шифр с открытым ключом (public key cipher), использует для рас­шифровки ключ, отличный от использованного при шифровании. Это сравнительно новая разработка в криптографии, и она решает многие давнишние проблемы систем криптографии, такие как способ передачи секретных ключей в первый раз.

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

При использовании шифра с открытым ключом один ключ (открытый ключ, public key) используется для шифрования сообщения, а другой ключ (закрытый ключ, private key) — это единственный ключ, который может расшифровать сообщение. Кто угодно, имея ключ, может зашифровать сообщение, расшифровать которое может только конкретный пользователь. Безопасные шифры с открытым ключом страдают от одной пробле­мы — они медленны, гораздо медленнее, чем симметричные шифры. Работа хорошего шифра с открытым ключом может отнять в 1000 раз больше времени для зашифровки одного и того же количества данных, чем у хорошего симметричного шифра.

Хотя системы открытого/закрытого ключа гораздо медленнее сим­метричных систем, они четко решают проблему, от которой страдали симметричные криптосистемы. Когда двум людям (или устройствам) нужно установить безопасный канал для передачи данных, один из них может просто взять секретный ключ и зашифровать этот секретный ключ при помощи открытого ключа другой стороны. Зашифрованный ключ затем отправляется другому участнику коммуникации, и даже если этот ключ будет перехвачен, только другой участник сможет расшифровать секретный ключ при помощи своего закрытого клю­ча. Коммуникация между двумя сторонами затем может продолжать­ся с использованием симметричного шифра и этого секретного ключа. Система, которая использует как симметричное шифрование, так и шифрование с открытым ключом, называется гибридной криптосисте­мой (hybrid cryptosystem).

3.2. Применение шифрования

Шифрование можно использовать для защиты следующих типов дан­ных в сети:

• закрытая передача данных;

• безопасное хранение файлов;

• аутентификация пользователя или компьютера;

• безопасный обмен паролями.

Следует шифровать любые данные, содержащие значимую или част­ную информацию, проходящие через небезопасные каналы передачи данных, такие как радио, телефонная сеть или Интернет. Используй­те шифрование файловой системы для защиты значимых данных, ког­да возможности операционной системы не действуют (когда был уда­лен жесткий диск или заменена операционная система).

3.2.1. Безопасное хранение файлов

Шифрование может быть использовано для защиты данных в устрой­стве хранения, например данных на жестком диске. Во всех реализа­циях UNIX и Windows NT существует много сложных средств обеспе­чения безопасности. Лучший подход к безопасности — предоставить шифрование и рас­шифровку файлов операционной системе. Windows 2000 поставляет­ся с Encrypting File System (шифрованная файловая система, EFS), которая будет шифровать все файлы на вашем жестком диске, даже временные файлы, созданные используемыми вами приложениями.

Для того чтобы использовать EFS секретно, необходимо предоставить криптографический ключ при запуске компьютера или использовать ее со смарт-картой, иначе же можно считать файлы на жестком диске обычными, незашифрованными файлами. Это не защитит файлы от доступа во время работы операционной системы — для чего существуют средства обеспечения безопасности операционной систе­мы, — но это сохранит данные в безопасности, даже если кто-нибудь украдет жесткий диск.

3.2.2. Аутентификация пользователя или компьютера

Помимо сохранения секретности (либо при передаче, либо при хране­нии), шифрование можно использовать почти в противоположных целях — для проверки идентичности. Шифрование может провести аутентификацию входящих в систему компьютера пользователей, гарантировать, что загружаемое из Интернета программное обеспечение приходит из надежного источника и что лицо, отправившее сообще­ние, в действительности то, за которое оно себя выдает.

При входе в операционную систему Microsoft, например Windows 95, Windows NT или Windows 2000, операционная система не сравнивает введенный пароль с хранимым паролем. Вместо этого она шифрует пароль при помощи однонаправленной криптографической функ­ции и затем сравнивает результат с хранящимся результатом. Другие операционные системы, такие как UNIX и OS/2, работают точно так же.

Храня только криптографическое хэш-значение пароля пользователя, операционная система затрудняет хакерам возможность получения всех паролей системы при получении

3.2.3. Цифровые подписи

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

Поскольку назначение цифровой подписи состоит не в том, чтобы утаить информацию, а в том, чтобы подтвердить ее, закрытые ключи зача­стую используются для шифрования хэш-значения первоначального документа, и зашифрованное хэш-значение присоединяется к доку­менту или отправляется вместе с ним. Этот процесс занимает гораздо меньше вычислительного времени при генерации или проверке хэш-значения, чем шифрование всего документа, и при этом гарантирует, что документ подписал владелец закрытого ключа.

Электронная почта Интернета проектировалась без учета безопасно­сти. Сообщения не защищены от нелегального просмотра на промежуточ­ных хостах Интернета, и нет гарантии, что сообщение в действитель­ности пришло от того лица, которое указано в поле From электронной почты. Сообщения групп новостей Интернета страдают от той же про­блемы: невозможно в действительности сказать, от кого на самом деле пришло сообщение. Можно зашифровать тело сообщения, чтобы спра­виться с первой проблемой, а цифровые подписи справляются со второй.

Цифровые подписи полезны, потому что проверить подпись может каждый, а создать ее может только лицо с закрытым ключом. Разница между цифровой подписью и сертификатом в том, что можно прове­рить подлинность сертификата в центре сертификации.

3.2.4. Безопасный обмен паролями

Большинство сетевых операционных систем (в том числе Windows 2000 и все современные версии UNIX) защищают имя пользователя и пароль при входе в систему посредством их шифрования перед отправ­кой в сеть для аутентификации.

Чтобы одни и те же зашифрованные данные не передавались каждый раз, клиент также может включить какую-то дополнительную ин­формацию, например время отправки запроса на вход в систему. При таком способе сетевые идентификационные данные никогда не будут отправляться через локальную сеть или телефонные линии в незащищенном виде. Тем не менее Windows 2000 принимает неза­шифрованные пароли от старых сетевых клиентов LAN Manager.