Вход на хостинг
IT-новости
20.04.2016 iPhone 2017 года поместят в водонепроницаемый корпус из стекла
Линейка iPhone в новом году серьезно поменяется. В этом уверен аналитический исследователь Мин Чи Ку......
30.07.2015 Ищем уникальный контент для сайта
Ищем уникальный контент для сайта Без уникального контента Ваш сайт обречен на то, что его страницы......
Ключи генерируются протоколом SILC Key Exchange (SKE), являющимся частью протокола SILC. SKE использует цифровую подпись и алгоритм обмена ключей Diffie-Hellman (с группами 1024, 1536 и 2048 бит). Заголовки и данные кодируются сеансовыми ключами, а канальные и частные сообщения кодируются специфическими ключами. Каждый канал использует такой ключ (channel specific keys), которым кодируются и подписываются все канальные сообщения. Сеансовые и канальные ключи сервер может периодически регенерировать. Также канал имеет свой способ аутентификации, основанный на имени или ключе.
Частные сообщения по умолчанию обеспечиваются сеансовыми ключами, но они могут также использовать специфические ключи частного сообщения (private message specific keys), которые можно получить, выполнив SKE между двумя пользователями сети SILC. Полученные при этом ключи могут быть использованы для кодирования частных сообщений или при передаче файлов. Эти сообщения смогут прочитать только передатчик и получатель, но так как сервер не знает об используемых при этом ключах, то не сможет их регенерировать, об этом должны заботиться сами пользователи. Можно использовать частные ключи, сгенерированные за пределами конкретной сети SILC. Все сообщения могут быть подписаны. Для уменьшения размера пакета их можно сжимать.
Учитывая, что ключ пользователя играет при аутентификации далеко не последнюю роль, в SILC удалось реализовать то, что просто невозможно представить в IRC – здесь имя пользователя может быть не уникальным. Хотите быть Васей, без проблем. И хотя сервер может знать уже сотню Вась, в регистрации отказано не будет (если имя не превышает 128 байт, на имя канала отводится 256 байт). Централизованные сервисы, регистрирующие имена, в случае с SILC не нужны. Пользователь отличается от других таких же пользователей его реальным именем, именем пользователя в системе, именем узла и наконец fingerprint его публичного ключа. Правда, здесь же выплывает другая проблема. Можно перепутать Васю-менеджера с Васей-директором и рассказать ему все, что думаешь о начальстве. Поэтому лучше перед выходом в приват убедиться при помощи команды WHOIS, с кем действительно имеешь дело. Недавно сервер, а затем и клиенты начали полностью поддерживать UTF-8 не только для текстовых сообщений, но и для ников и имен каналов, поэтому проблем с выбором имени быть не должно.
Протокол SILC поддерживает услугу, называемую detaching (по умолчанию она активирована). Пользователь может отсоединиться от сервера, например, для того чтобы установить связь с другим сервером, но у других создается иллюзия присутствия. Клиентов можно добавлять в свой watch list. При этом будет доступна информация о регистрации, выходе пользователя, смене имени, других регистрационных данных и ключах. Это удобно, так как в дальнейшем не придется разыскивать пользователя, если он вдруг решит сменить ник. Пользователь может запретить кому-либо отслеживать его.
Сетевая топология SILC также отличается от традиционной древовидной, принятой в подобных протоколах. Сеть SILC формирует так называемую гибридную кольцевую сетчатую сеть на уровне маршрутизатора и сеть типа «звезда» на уровне серверов. Такая сетевая топология имеет лучшую масштабируемость и обеспечивает более быструю доставку пакетов. В случае же компрометации отдельного участка его можно просто отключить, пока администраторы не разберутся с проблемами. Маршрутизаторы и серверы также имеют различия. Маршрутизатор владеет глобальной информацией, серверы сохраняют только локальную. Сеть поддерживает также и резервные маршрутизаторы (обычно это сервера, берущие на себя эту обязанность при отсутствии основного маршрутизатора).
Подобный протокол в настоящее время трудно представить без возможности передачи файлов между пользователями, поэтому такая функция изначально заложена и в SILC. Встроенным протоколом, применяемым для передачи файлов, является SFTP (Secure FTP), хотя разработчики при необходимости готовы добавить любой другой. Весь поток при передаче, естественно, шифруется.
Но это еще не все. Спецификации протокола не ограничивают тип передаваемых сообщений. Поэтому кроме текстовых сообщений можно передавать MIME, видео- или аудиоинформацию. Дополнительные сервисы позволяют расширить возможности протокола без потери обратной совместимости. Например, сервис может оставлять сообщения для detaching клиенту, которые будут отданы, когда клиент «вернется» . К сообщениям могут добавляться флаги, указывающие на то, как оно должно быть интерпретировано на стороне получателя.
Утилиты для работы с SILC
На сайте проекта доступно несколько утилит:
n Сервер SILC – позволяет развертывать свои сети, как общественные, включенные в общую структуру, так и внутренние. Поддерживает все возможности протокола, работает только под UNIX-системами.
n SILC Map – полезная утилита, показывающая топологию сети SILC, создает карты, позволяющие получить полную информацию о серверах и маршрутизаторах одним щелчком мыши.