Вход на хостинг
IT-новости
20.04.2016 iPhone 2017 года поместят в водонепроницаемый корпус из стекла
Линейка iPhone в новом году серьезно поменяется. В этом уверен аналитический исследователь Мин Чи Ку......
30.07.2015 Ищем уникальный контент для сайта
Ищем уникальный контент для сайта Без уникального контента Ваш сайт обречен на то, что его страницы......
Сергей Яремчук
Передача информации надежно защищена виртуальными частными сетями, почта передается в зашифрованном виде, доступ к закрытым данным на веб-сервере компании организован исключительно при помощи https. Все сделано? Нет, не все.
Современный бизнес невозможно представить без современных технологий. Мобильная связь и электронная почта пришли на смену селекторным совещаниям. Хорошо в эту группу вписались и средства обмена сообщениями, поддерживающие различные протоколы AIM, ICQ, Yahoo, MSN, IRC, Jabber, Zephyr и даже такой малоизвестный, как Gadu-Gadu. Правда, у нас наибольшей популярностью пользуются ICQ, Jabber и IRC.
Но если сервер, реализующий один из этих протоколов, стоит внутри контролируемой администратором сети, еще можно избежать проблем. А вот когда пользователь вынужден общаться с офисом с чужого компьютера, например из интернет-кафе, в этом случае весь разговор можно свободно перехватить. Кроме того, известны и атаки, использующие средства обмена сообщениями [1]. Конечно, некоторые реализации поддерживают шифрование, и в этом случае можно избежать проблем. Например, Jabber может быть настроен с поддержкой SSL для обмена между клиентом и сервером, плюс немало клиентов поддерживают шифрование с помощью GPG внутри протокола. Но при этом очень часто кодируются только данные, передаваемые в сообщении, и только в тех сетях, где используется шифрование, оставляя открытой работу в других сетях. Опускаются аутентификация сообщения и пакета, управление ключами и другие немаловажные вопросы безопасности. Все это вместе создает больше иллюзию безопасности. Но если необходимы многопользовательские конференции, то здесь альтернативы IRC (Internet Relay Chat) практически нет. А вот при настройке серверов IRC разговор о шифровании, как правило, не идет [2] по изложенным выше причинам.
Протокол SILC
Основной идеей протокола SILC (Secure Internet Live Conferencing) является обеспечение безопасностного общения по незащищенным каналам. В общем случае SILC очень похож в использовании на IRC, вплоть до совпадения основных характеристик (имена, каналы, частные сообщения, поиск пользователя, блокировка нежелательных частных и канальных сообщений и прочее). Более того, совпадают даже основные команды (всего SILC поддерживает около 30 команд). Но на этом все сходство в принципе и заканчивается. Основное различие между ними – защита передаваемой информации в SILC. Причем шифрование – это базовая часть протокола, а не опциональная функциональность, которую можно отключать. Так сказать, security by default. Особенно отмечу, что SILC основан не на IRC и они несовместимы между собой.
Идея протокола принадлежит Пека Риконену (Pekka Riikonen),
начало работ датировано 1996 годом. До выхода первой версии, включавшей клиента
и тестовый сервер, поддерживавшие алгоритмы шифрования RSA и 3DES код был
переписан заново три раза. Работало это все из рук вон плохо. Генератор
случайных чисел, взятый с RNG, используемого в SSH, переписывался два раза.
Работа постоянно останавливалась. Но все равно в 1998 году была добавлена
поддержка алгоритма ElGamal, а код был переписан на C++. Хотя в следующем году
код опять переписывается на С, основные части протокола перерабатываются и
спецификация подается в IETF (Internet Engineering Task Force –
Что предлагает SILC?
Учитывая, что SILC появился на десять лет позже IRC, у его разработчиков была возможность поучиться на чужих ошибках и учесть неудачные решения. Поэтому SILC обеспечивает более богатый набор характеристик и является самым удобным протоколом для общения пользователей из используемых в настоящее время. Но на первом месте у нас безопасность, поэтому с нее и начнем. Хотя стоит, наверное, отметить, что разработчики не изобретали велосипед и все решения в общем-то традиционные.
Протокол обеспечивает защищенную передачу и аутентификацию между клиентом и сервером, сервером и сервером, и между клиентами в приватной беседе при помощи шифров AES, twofish, CAST, serpent, rc6 и mars с использованием CBC и CTR. По умолчанию используется длина ключа 256 бит, опционально можно выставить 192 и 128. Протокол SILC имеет собственный открытый ключ SILC, но также поддерживает открытые ключи SSH2, сертификаты OpenPGP, X.509 и SPKI.
В качестве открытого ключа SILC, который, правда, не сертифицирован и спецификация не определяет общественную ключевую инфраструктуру, используются ключи RSA или DSS, включающие информацию об имени узла, имени пользователя, реальном имени и др.
Впрочем, разработчики открыты для общения, и при необходимости могут быть добавлены другие алгоритмы и шифры.
Шифруются все сообщения, посланные другим пользователям и каналам, пароли, команды и уведомления. Передача незащищенных сообщений не предусмотрена. Протокол разрабатывался с четким пониманием механизмов наиболее распространенных атак, поэтому известные пассивные и активные атаки (man-in-the-middle, повторение, подмена IP и пр.) будут неэффективны. Транспортный уровень защищен с гарантией подлинности закодированных пакетов, использованием кода аутентификации сообщения (Message Authentication Codes – МАС), с применением алгоритмов hmac-sha1-96, hmac-md5-96, hmac-sha1, hmac-md5. При этом используется метод Encrypt-Then-MAC, когда сообщение шифруется и затем вычисляется МАС, включающий и номер последовательности. Вектор инициализации (IV), использованный в шифровании, по умолчанию не включен в зашифрованный текст.