KnigaRead.com/
KnigaRead.com » Разная литература » Прочее » Алекс Экслер - Омерт@. Учебник по информационной безопасности для больших боссов

Алекс Экслер - Омерт@. Учебник по информационной безопасности для больших боссов

На нашем сайте KnigaRead.com Вы можете абсолютно бесплатно читать книгу онлайн Алекс Экслер, "Омерт@. Учебник по информационной безопасности для больших боссов" бесплатно, без регистрации.
Перейти на страницу:

Уильям Кроуэлл, заместитель директора Агентства национальной безопасности, 20 марта 1997 г.

Один из наиболее важных параметров при использовании современных средств криптографии (под этим я, разумеется, буду подразумевать именно PGP) – это размер ключа. Как в случае с кинофильмом «Годзилла» (и как не в случае с утешительной для многих мужчин фразы, относящейся к размеру его мистера Грандиозо) - размер имеет значение. Причём зависимость совершенно прямая: значение растет вместе с размером. Потому что, как мы уже сказали, алгоритм PGP не вскрывается кроме как перебором (подбором) ключей. Этот перебор называется «взять грубой силой», хотя вся грубость заключается в тупом вводе и переборе паролей. А это означает, что чем больше ключ, тем сложнее его подобрать.

Размер ключа задается в битах. (Бит -  наименьшая единица информации на компьютере. Восемь бит составляют один байт, то есть, грубо говоря, один символ или цифру.) Чем больше ключ, тем дольше его вскрывать, но, соответственно, больше времени уйдет на кодирование текста. Минимальный размер ключа – 768 бит. Можно, конечно, использовать и меньшие размеры, но такие ключи легко вскрываются за вполне обозримый срок даже при использовании обычного компьютера.

Более или менее стандартные современные размеры ключей – 1024 и 2048 бит (то есть один-два килобита). PGP допускает использование четырехкилобитного ключа, и такой размерчик быстро не оприходовать просто по определению.

Впрочем, нужно чётко понимать, что даже четырехкилобитный ключ может быть вскрыт – при использовании соответствующих мощностей и при наличии достаточного времени. Но это должны быть очень серьёзные мощности, да и времени на это уйдет – я вас умоляю…

Электронная подпись

Как я уже говорил, PGP-шифрование предоставляет еще одну очень интересную возможность под названием электронная подпись. Она выполняет сразу две функции:

Совершенно однозначно идентифицирует отправителя письма. Точнее, сигнализирует, если кто-то пытается выдать себя за вас.

Гарантирует, что в первоначальный текст письма не внесено никаких изменений.

«Но как она это делает?!!» - можешь спросить ты. Это же прям шайтан какой-то получается, да? Шайтан, однозначно! Но имеющий под собой вполне четкое математическое обоснование. Впрочем, я не буду грузить тебя терминами вроде «хэш-функции» и тому подобных. Просто скажу, что все дело в волшебных пузырьках – то есть в публичном ключе.

Физически это выглядит следующим образом… Под каждым зашифрованным письмом PGP ставит так называемый «отпечаток пальца» (PGP fingerprint). Это некий код, то есть набор символов. При получении письма абонент сравнивает этот отпечаток с текстом – таким образом выясняется, были ли внесены в текст какие-то изменения – а затем отпечаток сверяется с твоим публичным ключом. Если все совпадает, значит, письмо точно написано тобой, причем в него не было внесено никаких изменений.

Подделать этот «отпечаток пальца» практически невозможно. Только если украсть у тебя секретный ключ.

Психологический практикум

«Карл, заканчивай мне голову морочить – ключи, размеры, подписи-шмотписи, циммерманы-шмимерманы! - можешь заявить ты. – Лучше расскажи, как всей этой хренотой пользоваться».

О’кей, босс, не волнуйся, все будет. Но мне нужно было, чтобы ты все-таки уяснил основные понятия PGP-шифрования, потому что без этого мы не смогли бы перейти к водным процедурам. Но сейчас перейдем. Итак, рассказываю о том, как это все используется в нашей реальной суровой жизни…

Прежде всего, нужна сама программа PGP или встроенный модуль PGP в почтовом клиенте. Программу можно взять где угодно: она распространяется бесплатно, поэтому доступна как на сотнях тысяч сайтов в Интернете, так и на дисках, продающихся в любой подворотне.  Хотя я рекомендую купить лицензионную версию – нужно же как-то отблагодарить Фила за его самоотверженность.

Далее твои действия (именно твои, потому что установку личного PGP крайне нежелательно доверять даже админу)…

1.       Устанавливаешь PGP на свой компьютер.

2.       Создаешь пару ключей – открытый и закрытый.

При этом PGP тебе будет задавать всякие пикантные вопросы по поводу размера, а также потребует произвести всякие странные вещи, которые кроме как танцами с бубном не назовешь. Но я объясню, что это означает. С размером мы уже определились – выбирай от килобитного до двухкилобитного варианта, в зависимости от желаемой стойкости шифра. В принципе, килобитного ключа будет достаточно почти для всех областей применения. Но если ты считаешь свою информацию супермегасекретной (надеюсь, что ты не международный террорист, потому что если моим надеждам не суждено сбыться, я требую, чтобы ты немедленно закрыл этот учебник и тут же его сжёг), тогда выбирай максимальный размер ключа – в четыре килобита. Но имей в виду, что это очень сильно замедлит скорость шифрования (да и расшифровки тоже). Далее система сообщит, что ей нужно получить всякие случайные символы – чтобы создать специальный временной ключ (я чуть ниже расскажу о том, зачем он нужен). Для этого тебе нужно будет или повозить мышкой туда-сюда, или пошлепать по совершенно произвольным клавишам.

3.       Распространи свой открытый ключ среди всех своих корреспондентов.

Напоминаю, что открытый ключ на то и открытый, что его можно раздавать всем желающим.

4.       Заставь корреспондентов сверить подлинность открытого ключа. Ну, то есть убедиться, что это именно ты прислал данный ключ. (Для удобства подлинность каждого ключа можно сверить по «отпечатку пальца» - уникальному идентификационному коду.) Таким же образом сверь открытые ключи, полученные тобой от корреспондентов.

И все, теперь программой можно пользоваться. Если у тебя почтовый клиент поддерживает встроенный PGP (например, The Bat! умеет это делать, да и для Outlook 2003, насколько я помню, существуют соответствующие плагины), то процедура шифрования/расшифровывания производится практически автоматически. Ты просто пишешь письмо (или прикладываешь текстовой файл к письму), нажимаешь кнопку «зашифровать», далее письмо зашифровывается и его можно отправлять.

Если интересно, могу чуть подробнее рассказать, что именно делает, например, The Bat!, когда ему поступает команда зашифровать письмо…

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

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

Затем с помощью этого временного ключа (его также называют «сессионным») производится зашифровывание самого сообщения.

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

В конце концов зашифрованное сообщение вместе с зашифрованным ключом отправляется абоненту.

Расшифровка письма производится в обратной последовательности. Сначала PGP получателя с помощью его закрытого ключа дешифрует сессионный ключ, после чего с помощью этого ключа расшифровывается уже все сообщение. Таким образом, даже если некто перехватит твоё сообщение вместе с ключом, то он не сможет его расшифровать обычными средствами.

Со стороны это всё выглядит достаточно сложным, но не пугайся – даже при использовании отдельной программы PGP эти процессы автоматизируются. А уж когда PGP встроен в почтовый клиент, все происходит полностью автоматически. От тебя требуется только нажать кнопку «Зашифровать» или «Расшифровать».

Перейти на страницу:
Прокомментировать
Подтвердите что вы не робот:*