Comments 19
У меня включение ECH решило, по крайней мере, часть проблем с блокировками и с замедлением Ютуба.
Надеюсь, что его включат везде.
он использует публичный ключ, предоставленный сервером через DNS, чтобы зашифровать свой "Client Hello".
Теперь осталось прийти к осознанию ненужности доп. прослойки в виде Let’s Encrypt (и прочих) - если сайт может публичный ключ напрямую вписать в записи DNS а клиент использовать его для установления защищенного канала. Тем более что Let’s Encrypt выполняет проверку точно так же - на уровне DNS.
Не совсем ненужен. Все равно остаётся проблема курицы и яйца. Во-первых, для DoH/DoT все равно нужен сертификат. Во-вторых, пока DoT/DoH не описан для авторитативных серверов, начиная с корневых, выбор конкретного DoH/DoT провайдера является проявлением существенного доверия к одному.
выбор конкретного DoH/DoT провайдера является проявлением существенного доверия к одному
Ну вот эту проблему и нужно решать - и без этого не получится безопасный ECH. Вдруг произойдет подмена публичного ключа - фальшивый DNS вам выдаст свой публичный ключ и вы рапортуете ему в ответе какой сайт хотите посетить?
Так сделано в протоколе gemini например. Но есть одна проблема, при первом посещении сайта как убедиться что этот сайт оригинальный, а не мошенника? Для этого и нужны 3-и лица - гаранты аля let's encrypt
Но есть одна проблема, при первом посещении сайта как убедиться что этот сайт оригинальный, а не мошенника?
Верно, по этому и ECH без решения этой проблемы - не безопасен. Ведь подставной DNS (на уровне провайдера) - отдаст подготовленный открытый ключ, с помощью которого расшифруют ваш первичный запрос.
Могло бы помочь с ютубом
указанный в статье сайт defo для проверки выглядит и работает как-то странно, похоже, не работает вообще. Проверить тот или иной сайт на наличие ech= в HTTPS записи DNS можно так https://dns.google/query?name=kinozal.tv&rr_type=HTTPS
Проверить браузер на наличие необходимых парметров безопасности можно по следующим ссылкам
https://www.cloudflare.com/ssl/encrypted-sni/
https://defo.ie/ech-check.php
а также просто на вкладке Security в окне DevTools любого chromium-подобного браузера
Вот развернутая статья про то, как владельцу веб-сайта добавить нужные записи в DNS, чтобы заработал ECH
https://cujo.com/blog/set-up-ech-website/
Или я чего-то не понял, или это реклама сайта из пункта №6.
С дефолтными настройками работает всё.
И здесь https://www.cloudflare.com/ssl/encrypted-sni/#results
Secure SNI
Nobody listening on the wire can see the website you made a TLS connection to.
Если кому интересно то люди уже прошлись по списку заблокированных сайтов и разделили его на ECH и без ECH
Сайтов с поддержкой ECH оказалось более 20к
Ссылка на сообщение: https://ntc.party/t/использование-esni-encrypted-sni-в-россии/68/58
With ECH, the ClientHello message part is split into two separate messages: an inner part and an outer part. The outer part contains the non-sensitive information such as which ciphers to use and the TLS version and an “outer ClientHello”. The inner part is encrypted and contains an “inner ClientHello”.
The outer ClientHello contains a common name (SNI) that represents that a user is trying to visit an encrypted website on Cloudflare. We chose
cloudflare-ech.com
as the SNI that all websites will share on Cloudflare.
То есть, надзорному органу достаточно резать все подключения, у которых в SNI этот домен, а пользователям будет сказано что-то наподобие "отключайте ECH в своём браузере". Пользователи браузеров, не позволяющих отключить ECH (например, мобильного Firefox, где доступ к тонким настройкам запрещён), придётся сменить браузер.

Последниюая версия хрома, включил, выбрал cf. Перезагрузил браузер, очистил кэш сайта, но все равно показывает что sdns не работает. Браузер абсолютно с дефолтными настройками. Возможно это у чекера баг или хз
попробуйте также https://1.1.1.1/help для проверки. В целом, важнее последний пункт, где галочка установлена у Secure SNI
Кроме того, поддержка DoH есть на уровне операционной системы в Windows 11
Протокол ECH в браузере