Jump to content

DNSкривая

DNS через HTTPS
Протокол связи
Разработчик(и) Дэниел Дж. Бернштейн
Введение 2009 год ; 15 лет назад ( 2009 ) [1]
Уровень OSI Прикладной уровень
Веб-сайт dnscurve .org

DNSCurve — это предлагаемый безопасный протокол для системы доменных имен (DNS), разработанный Дэниелом Дж. Бернштейном . Он шифрует и аутентифицирует пакеты DNS между преобразователями и авторитетными серверами.

DNSCurve заявляет о преимуществах по сравнению с предыдущими службами DNS: [1]

  • Конфиденциальность — обычные DNS-запросы и ответы не шифруются и передаются любому злоумышленнику.
  • Целостность — обычный DNS имеет некоторую защиту, но, проявив терпение и анализируя данные, злоумышленники могут подделать записи DNS; это предотвращается криптографической аутентификацией DNSCurve.
  • Доступность — обычный DNS не имеет защиты от отказа в обслуживании (DoS) со стороны злоумышленника, отправляющего несколько поддельных пакетов в секунду. DNSCurve распознает и отбрасывает поддельные пакеты DNS, обеспечивая некоторую защиту, хотя SMTP , HTTP , HTTPS также уязвимы для DoS .

Структура

[ редактировать ]

DNSCurve использует Curve25519 криптографию эллиптических кривых для установления личности авторитетных серверов. [2] Открытые ключи удаленных авторитетных серверов помещаются в записи NS, поэтому рекурсивные преобразователи знают, поддерживает ли сервер DNSCurve. Ключи начинаются с волшебной строки uz5 за ними следует 51-байтовая кодировка Base32 255-битного открытого ключа сервера. Например, в формате BIND :

example.com. IN NS uz5bcx1nh80x1r17q653jf3guywz7cmyh5jv0qjz0unm56lq7rpj8l.example.com.

Идентификация используется для установления ключей, используемых схемой шифрования с аутентификацией, состоящей из Salsa20 и Poly1305 . Криптографическая установка называется «криптографическим ящиком», в частности crypto_box_curve25519xsalsa20poly1305. [3]

Инструмент «криптографического ящика», используемый в DNSCurve, аналогичен используемому в CurveCP , протоколе на основе UDP , который похож на TCP , но использует криптографию с эллиптической кривой для шифрования и аутентификации данных. Аналогия заключается в том, что DNSSEC похож на подписание веб-страницы с помощью Pretty Good Privacy (PGP), CurveCP и DNSCurve похожи на шифрование и аутентификацию канала с использованием Transport Layer Security (TLS). Точно так же, как веб-страницы, подписанные PGP, можно отправлять по зашифрованному каналу с использованием SSL, данные DNSSEC можно защитить с помощью DNSCurve. [4]

Операция

[ редактировать ]

Резолвер сначала извлекает открытый ключ из записи NS, см. § Структура выше.

Затем преобразователь отправляет на сервер пакет, содержащий открытый ключ DNSCurve, 96-битный nonce и криптографический блок, содержащий запрос. Криптографический ящик создается с использованием закрытого ключа преобразователя, открытого ключа сервера и nonce. Ответ сервера содержит другой 96-битный одноразовый номер и собственный криптографический блок, содержащий ответ на запрос.

Безопасность

[ редактировать ]

DNSCurve использует 256-битную криптографию с эллиптической кривой, которая, по оценкам NIST , примерно эквивалентна 3072-битному RSA. [5] ECRYPT сообщает об аналогичной эквивалентности. [6] Он использует шифрование с открытым ключом для каждого запроса (например, SSH и SSL) и 96-битные одноразовые номера для защиты от атак повторного воспроизведения. Адам Лэнгли, сотрудник службы безопасности Google, говорит: «С очень высокой вероятностью никто никогда не решит ни одного экземпляра Curve25519 без большого квантового компьютера». [7]

Скорость

[ редактировать ]

Адам Лэнгли разместил на своем личном веб-сайте тесты скорости, показывающие, что Curve25519, используемый DNSCurve, является самой быстрой среди протестированных эллиптических кривых. [8] По данным Агентства национальной безопасности США (АНБ), криптография на основе эллиптических кривых обеспечивает значительно более высокую производительность по сравнению с RSA и Диффи-Хеллмана с геометрической скоростью по мере увеличения размеров ключей. [9]

Реализации

[ редактировать ]

DNSCurve впервые получила рекурсивную поддержку в dnscache благодаря патчу. [10] Мэтью Демпски. У Dempsky также есть репозиторий GitHub , который включает инструменты поиска DNS Python и сервер пересылки на C. [11] У Адама Лэнгли также есть репозиторий на GitHub. [12] Существует авторитетный сервер пересылки CurveDNS. [13] что позволяет администраторам DNS защищать существующие установки без внесения исправлений.

Ян Мойжиш выпустил Curveprotect, [14] пакет программного обеспечения, который реализует защиту DNSCurve и CurveCP для таких общих служб, как DNS, SSH, HTTP и SMTP.

DNSCurve.io (2023) рекомендует две реализации: dqcache Яна Мойжиша для рекурсивных преобразователей и CurveDNS для авторитетных серверов. [15]

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

[ редактировать ]

OpenDNS , у которой 50 миллионов пользователей, объявила о поддержке DNSCurve в своих рекурсивных преобразователях 23 февраля 2010 года. Другими словами, ее рекурсивные преобразователи теперь используют DNSCurve для связи с авторитетными серверами, если они доступны. [16] 6 декабря 2011 года OpenDNS анонсировала новый инструмент под названием DNSCrypt . [17] DNSCrypt основан на аналогичных криптографических инструментах, что и DNSCurve, но вместо этого защищает канал между OpenDNS и его пользователями. [18]

Ни один столь же крупный авторитетный провайдер DNS еще не внедрил DNSCurve.

См. также

[ редактировать ]

DNSCurve предназначен для защиты связи между преобразователем и авторитетным сервером. Для обеспечения безопасности связи между DNS-клиентами и преобразователями существует несколько вариантов:

Примечания

[ редактировать ]
  1. Перейти обратно: Перейти обратно: а б «Введение в DNSCurve» . DNSКрив . 22 июня 2009 года . Проверено 16 марта 2016 г.
  2. ^ Диджей Бернштейн. «Curve25519: высокоскоростная криптография на основе эллиптических кривых» . Проверено 30 января 2013 г.
  3. ^ «Шифрование с аутентификацией открытым ключом: crypto_box» . nacl.cr.yp.to . crypto_box — это кривая25519xsalsa20poly1305, особая комбинация Curve25519, Salsa20 и Poly1305, указанная в разделе «Криптография в NaCl». Предполагается, что эта функция соответствует стандартным понятиям конфиденциальности и невозможности подделки третьими лицами.
  4. ^ «CurveCP: Полезная безопасность для Интернета» . Проверено 18 января 2024 г.
  5. ^ «Рекомендации НИСТ (2011 г.)» .
  6. ^ «Ежегодный отчет ECRYPT II по алгоритмам и размерам ключей (2010–2011 гг.)» (PDF) . Архивировано из оригинала (PDF) 2 июня 2012 г.
  7. ^ «Адам Лэнгли о безопасности Curve25519» .
  8. ^ «Адам Лэнгли: какую разницу имеет простое число» .
  9. ^ «Дело в пользу криптографии с эллиптическими кривыми» . АНБ . Архивировано из оригинала 17 января 2009 года . Проверено 17 января 2009 г.
  10. ^ «Патч DNSCurve для dnscache» . Архивировано из оригинала 28 декабря 2012 г.
  11. ^ «Репозиторий DNSCurve Мэтью Демпски на GitHub» . Гитхаб . 13 августа 2019 г.
  12. ^ «Репозиторий DNSCurve Адама Лэнгли» . Гитхаб . 13 августа 2019 г.
  13. ^ «CurveDNS: сервер имен пересылки DNSCurve» .
  14. ^ «curveprotect, комплексный набор инструментов для защиты широкого спектра интернет-сервисов» . Архивировано из оригинала 26 мая 2013 г. Проверено 9 мая 2012 г.
  15. ^ «DNSCurve.io — сообщество DNSCurve» . dnscurve.io .
  16. ^ «OpenDNS использует DNSCurve» . Архивировано из оригинала 26 февраля 2010 г. Проверено 13 апреля 2010 г.
  17. ^ «OpenDNS представляет DNSCrypt» . Архивировано из оригинала 3 февраля 2013 г.
  18. ^ «net/dnscrypt-proxy: dnscrypt-proxy-1.4.3 – безопасная связь между DNS-клиентом и преобразователем» . Порты OpenBSD . 06.01.2015 . Проверено 9 февраля 2015 г.
[ редактировать ]
Arc.Ask3.Ru: конец переведенного документа.
Arc.Ask3.Ru
Номер скриншота №: 6a5feb6edc0e57d4333000851a771382__1721230140
URL1:https://arc.ask3.ru/arc/aa/6a/82/6a5feb6edc0e57d4333000851a771382.html
Заголовок, (Title) документа по адресу, URL1:
DNSCurve - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть. Любые претензии, иски не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, вы не можете использовать данный сайт и информация размещенную на нем (сайте/странице), немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, Денежную единицу (имеющую самостоятельную стоимость) можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)