DNSCrypt - DNSCrypt

DNSCrypt это сетевой протокол который аутентифицирует и шифрует система доменных имен (DNS) трафик между пользователем компьютер и рекурсивный серверы имен. Первоначально он был разработан Фрэнком Денисом и Йеченг Фу.

Хотя существует несколько реализаций клиента и сервера, протокол никогда не предлагался Инженерная группа Интернета (IETF) посредством Запрос комментариев (RFC).

DNSCrypt обертывает неизмененный DNS-трафик между клиентом и преобразователем DNS в криптографической конструкции для обнаружения подделки. Хотя он не обеспечивает сквозную безопасность, он защищает локальную сеть от Атаки посредника.[1]

Это также смягчает UDP атаки на усиление, требуя, чтобы вопрос был не меньше размера соответствующего ответа. Таким образом, DNSCrypt помогает предотвратить Атаки с усилением DNS.

Развертывание

В дополнение к частным развертываниям, протокол DNSCrypt был принят несколькими общедоступными преобразователями DNS, подавляющее большинство которых являются членами OpenNIC сеть, а также виртуальная частная сеть (VPN) сервисы.

OpenDNS (теперь часть Cisco ) объявила о первом общедоступном DNS-сервисе, поддерживающем DNSCrypt, 6 декабря 2011 года, вскоре за ним последовала CloudNS Australia.[2]

29 марта 2016 г. Яндекс объявили о поддержке протокола DNSCrypt на своих публичных DNS-серверах, а также в Яндекс Браузер.[нужна цитата ]

14 октября 2016 г. AdGuard добавили DNSCrypt в свой модуль фильтрации DNS, чтобы пользователи могли переходить со своих интернет-провайдеров на собственные или собственные DNS-серверы AdGuard для обеспечения конфиденциальности в Интернете и блокировка рекламы.[3][4]

10 сентября 2018 г. Quad9 Некоммерческая публичная служба рекурсивного преобразователя объявила о поддержке DNSCrypt.[5]

Другие серверы, поддерживающие безопасный протокол, упоминаются в списке создателей DNSCrypt.[6]

Протокол

DNSCrypt можно использовать поверх UDP или над TCP. В обоих случаях, его порт по умолчанию - 443. Хотя протокол радикально отличается от HTTPS, оба типа услуг используют одинаковые порт. Однако, хотя DNS через HTTPS и DNSCrypt возможны на одном и том же порте, они все равно должны работать отдельно на разных серверах. Два серверных приложения не могут работать одновременно на одном сервере, если оба используют один и тот же порт для связи.

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

Протокол DNSCrypt также можно использовать для контроля доступа или учета, принимая только предопределенный набор открытых ключей. Это может использоваться коммерческими службами DNS для идентификации клиентов без необходимости полагаться на IP-адреса.[нужна цитата ]

Запросы и ответы шифруются с использованием того же алгоритма и дополняются до кратного 64 байта, чтобы избежать утечки размеров пакетов. По UDP, когда ответ будет больше, чем вопрос, ведущий к нему, сервер может ответить коротким пакетом, у которого установлен бит TC (усеченный). Затем клиент должен повторить попытку использования TCP и увеличить заполнение последующих запросов.

Версии 1 и 2 протокола используют X25519 алгоритм обмена ключами, EdDSA для подписей, а также XСальса20 -Поли1305 или XChaCha20 -Poly1305 для аутентифицированного шифрования.

По состоянию на 2020 год в протоколе DNSCrypt нет известных уязвимостей или практических атак на лежащие в его основе криптографические конструкции.

Анонимный DNSCrypt

Анонимизированный DNSCrypt - это расширение протокола, предложенное в 2019 году для дальнейшего улучшения конфиденциальности DNS.[7]

Вместо прямого ответа клиентам резолвер может действовать как прозрачный прокси для другого резолвера, скрывая для последнего реальный IP-адрес клиента. Анонимизированный DNSCrypt - это легкая альтернатива прокси Tor и SOCKS, специально разработанная для трафика DNS.[7]

Развертывание анонимизированного DNSCrypt началось в октябре 2019 года, и внедрение протокола было быстрым: всего через две недели после публичной доступности клиентских и серверных реализаций было установлено 40 DNS-реле.[8]

Смотрите также

Рекомендации

  1. ^ «DNSCrypt / dnscrypt-proxy: dnscrypt-proxy 2 - гибкий DNS-прокси с поддержкой зашифрованных протоколов DNS». GitHub. DNSCrypt. В архиве с оригинала от 20 января 2016 г.. Получено 29 января 2016.
  2. ^ Улевич, Давид (6 декабря 2011 г.). «DNSCrypt - критический, фундаментальный и своевременный». Cisco Umbrella. В архиве из оригинала на 1 июля 2020 г.. Получено 1 июля 2020.
  3. ^ «AdGuard DNS теперь поддерживает DNSCrypt». Блог AdGuard. Архивировано из оригинал 12 сентября 2017 г.. Получено 11 сентября 2017.
  4. ^ «DNS-фильтрация». База знаний AdGuard. В архиве из оригинала 11 сентября 2017 г.. Получено 11 сентября 2017.
  5. ^ «DNSCrypt сейчас в тестировании». Блог Quad9. В архиве с оригинала 28 декабря 2019 г.. Получено 1 июля 2020.
  6. ^ «DNSCrypt - Список публичных серверов DoH и DNSCrypt». DNSCrypt. В архиве из оригинала 19 июня 2020 г.. Получено 1 июля 2020.
  7. ^ а б «Спецификация анонимного DNSCrypt». GitHub. DNSCrypt. В архиве с оригинала 25 октября 2019 г.. Получено 1 июля 2020.
  8. ^ «Анонимные DNS-ретрансляторы». GitHub. DNSCrypt. 1 ноября 2019. В архиве из оригинала на 1 июля 2020 г.. Получено 1 июля 2020.

внешняя ссылка