На сервисе audit.statdom.ru, в части тестирования настроек MX, добавился вывод сведений о совпадающих IP-адресах для разных имён MX-ов и чуть более развёрнутые сведения о TLS-сертификате почтового сервера (имя CN удостоверяющего центра).

Что касается разных имён для одинаковых IP-адресов, то тут речь вот о чём: предположим, что в зоне указано три имени MX – mx1.test.ru, mx2.test.ru, mx3.test.ru, но двум из этих имён соответствует общий адрес, например, mx1.test.ru имеет адреса 10.11.22.33, 10.22.33.44, а mx2.test.ru – 10.11.22.33, 10.55.55.55 (совпали 10.11.22.33). Это не то чтобы типовой случай, но регулярно встречается. Например, такое есть у Gmail. Причины тут могут быть разные, редко – это просто ошибка, а чаще – проекция представления администраторов и DevOps о методах балансировки (случай крупных сервисов) и защиты от нежелательных сообщений.

Кстати, с точки зрения сканера, конфигурация с повторяющимися IP создаёт некоторые занимательные затруднения для анализа TLS в случае STARTTLS. Дело в том, что ответы почтовых серверов кешируются, чтобы не надоедать “почтовикам” повторными запросами. Повторные запросы без попыток доставки сообщений – это, в мире администрирования почтовых серверов, самое страшное, что только может быть, так что робот к роботу тут должен подходить только с должным пиететом, расшаркиваясь и выжидая положенное время (посмотрите, кстати, на один из самых занимательных статистических отчётов по почтовым серверам Рунета – время ожидания ответа). Кешировать имеет смысл только по IP-адресу, потому что именно по IP-адресу устанавливается соединение. Так что, когда одинаковый адрес используется с разными именами, приходить повторно сканер не будет, но, вообще говоря, это означает, что сканер не сможет и получить сертификаты для разных имён, которые сервер, – гипотетически, – мог бы передать в ответ на не менее разные значения SNI (имя хоста в TLS).



Комментировать »

DNSSEC предоставляет механизм удостоверения адресной информации в DNS, что требует подтверждения факта отсутствия ответа на запрос. Собственно, это особенность не столько DNSSEC, сколько любой подобной криптографической системы: необходима возможность криптографического подтверждения, что какие-то записи действительно отсутствуют, потому что иначе активный аткующий может просто удалить из DNS-ответов записи, обеспечивающие безопасное делегирование (DS-записи), тем самым сымитировав отсутствие DNSSEC в атакуемой зоне. Отсутствию записей и имён в терминах DNS соответствует NXDOMAIN (нет имени) и NODATA (нет данных записи запрошенного типа). NXDOMAIN – это когда спросили имя test.example.com, а его в зоне example.com нет. NODATA – спросили TXT-запись для test.ru, имя test.ru есть, но ему не соответствует TXT-записи (NODATA это ANSWER:0 со статусом NOERROR, если в терминах BIND).

Так вот, DNSSEC работает с электронными подписями, однако подписать пустое множество здесь нельзя (хотя бы потому, что все пустые множества одинаковые, а это означает, что подобную подпись можно будет скопировать и применять в контексте отсутствия любой записи). Так что типовая реализация DNSSEC как бы подписывает конкретные “дыры”, но для этого заключает их в некоторую внешнюю конструкцию.

Например, для NXDOMAIN “подписываются” два ближайших имени, между которыми оказалось бы запрашиваемое, если все имена в зоне упорядочить. Известно, что эта реализация позволяет третьей стороне проиндексировать имена, существующие в зоне, поскольку ответ на запрос со специально составленным несуществующим именем позволяет видеть соседние существующие имена – это называется DNSSEC zone walking (индексация зоны), и предоставляет хрестоматийный материал для обучения студентов направления “Информационная безопасность”, но не более. Строго говоря, есть два основных варианта решения проблемы “подписывания дыр”: они называются NSEC и NSEC3, а последний предоставляет больше защиты от индексации зоны, однако сейчас это всё лишь иллюстративные детали, поскольку вообще странно считать, будто заведомо публичные записи в зоне должны быть защищены таким странным способом от “обнаружения” – см., впрочем, про “принцип Керкгоффса“. Предложены способы, предотвращающие индексацию зоны путём “подставных” ответов, содержащих специально сгенерированные имена.

Для NODATA подписывается перечень существующих записей для запрошенного имени, а логика близка к NXDOMAIN, но на практике реализовать можно более удобным способом (см. ниже). Сопроводительная информация о границах “дыр” передаётся в записях NSEC (или NSEC3, но в этой заметке рассматривается только NSEC – дальше будет понятно, почему).

При полностью динамической работе DNS на стороне авторитативного сервера всякое противодействие индексации зоны требует динамических подписей. Однако в таком случае обработка NXDOMAIN быстро превращается в проблему, поскольку требуются дополнительные вычисления. Особенно, если в зоне много имён. Грубо говоря, если у вас есть миллион записей с именами хостов в некоторой базе данных, то уже для обнаружения соседних имён придётся строить какой-то индекс и так далее. Если же состав записей постоянно изменяется, а ответ зависит и от видимых характеристик клиента, и от текущего состояния большей системы на стороне сервера, то вычисление NXDOMAIN может вылететь в копеечку (в том числе, из-за большого размера ответа с подписями). Оригинальное решение тут первыми применили в Cloudflare, ещё в 2016 году. Решение основано на модификации логики обслуживания DNSSEC – предлагается, фактически, исключить понятие отсутствующего имени или отсутствующей записи, что позволит генерировать виртуальные подписи на лету (но, обратите внимание, это не отменяет кэширования сгенерированных ответов).

Иными словами – сервер выдаёт “нечестные” ответы. Например, сервер не отвечает резолверу со статусом NXDOMAIN вообще, а вместо этого использует вариант NODATA: на запрос о реально не существующем в зоне имени сервер отвечает, что есть имя, состоящее из префикса \000., приписываемого к запрошенному имени, то есть, это как бы граница (которой в реальной зоне нет), а ответ поэтому содержит одну NSEC-запись; подпись же вычисляется на лету. Для случая “настоящего” NODATA – всё работает аналогично: сервер отвечает, что есть все мыслимые ресурсные записи, кроме той, которую запросил резолвер. Например, если резолвер спрашивает A-запись, то авторитативный ответ будет содержать указание в NSEC на существование NS, SOA, TXT, LOC, SRV и прочих DNS-записей, но не A-записи. Это тоже позволяет генерировать ответы динамически. То есть, авторитативный сервер “обманывает” резолвер, но делает это для того, чтобы экономить вычислительные ресурсы (поэтому механизм называется black lie – вместо white lie, однако это детали литературной терминологии).

Всё это несложно сейчас увидеть снаружи на примере Cloudflare: попробуйте взять dig и проверить самостоятельно на той или иной зоне, поддерживающей DNSSEC на авторитативных серверах Cloudflare. Такая реализация не только позволяет работать с динамической DNS, но и экономит место в ответах (другой существенный способ экономии – ECDSA, которую только и использует Cloudflare, так как ECDSA-подписи короче RSA).

Насколько такой метод универсален и эффективен? Для больших, постоянно изменяющихся наборов DNS-данных, эффективен, однако требует программного решения собственной разработки. При этом, если DNS-зона не особенно часто изменяется, то смысла в динамическом вычислении подписей меньше. Для многих зон обычным является изменение содержания DNS-записей, скажем, раз в месяц (или даже раз в год). С другой стороны, динамическая “подмена” NXDOMAIN может защитить от индексации зоны.

Вычисление подписи на лету означает, что секретный ключ и реализация алгоритма подписи применяются гораздо чаще, чем при “статическом” варианте. Однако это вопрос модели угроз. Так, для атак, использующих побочные каналы утечки, требуется, чтобы можно было вызывать реализацию криптосистемы много раз (естественно, за разумный промежуток времени). Существенным подспорьем тут будет возможность получать подписи на данных известного атакующему состава и в выбранном формате – это, отчасти, как раз и позволяет реализация подмены NXDOMAIN на NODATA. Впрочем, каких-то огромных практических рисков на этом направлении не просматривается.



Комментировать »

Кстати, если посмотреть в DNS-зону cloudflare.com (это, понятно, Cloudflare) на предмет политики DMARC, то там в поле rua указан почтовый адрес в cyber.dhs.gov:

$ dig -t TXT _dmarc.cloudflare.com +short
"v=DMARC1; p=reject; pct=100; rua=[...]mailto:reports@dmarc.cyber.dhs.gov"

Что это означает? Имя cyber.dhs.gov – это в Штатах агентство CISA (Cybersecurity and Infrastructure Security Agency), относящееся к DHS, то есть, к министерству внутренней безопасности (Department of Homeland Security). Опция rua в строке DMARC обозначает адрес (адреса), по которому принимающие почтовые серверы могут отправлять отчёты об обработке почтовых сообщений (допускаются разные протоколы для доставки, но обязательный – mailto, электронная почта). Так что, запись означает, что сборщик отчётов DMARC CISA может сразу принимать сведения о получении почты с адресами в домене cloudflare.com. Это не обязательно сообщения, действительно отправленные почтовой системой Cloudflare – может быть и нежелательная рассылка с “подспуфленным” адресом: для обнаружения таких писем как раз нужны DMARC и DKIM.



Комментировать »

Fallen Tree. Credit: bead1212, morguefile.comНемного про административную структуру, связанную с доменами верхнего уровня. Про эту структуру сейчас почему-то забывают, сосредотачиваясь на регистраторах, с которыми взаимодействует обычный пользователь. Однако, в современных интернет-реалиях, эта административная стурктура довольно важна. Домены верхнего уровня здесь – это имена зон, указанные в корневой зоне общепринятой (пока что) системы доменных имён (DNS): .COM, .NET, .RU, .PW, .BAR и др., их сейчас очень много, заметно больше 1500. Корневой зоной всё ещё управляет IANA под эгидой ICANN, но сейчас речь о другом. А именно: практически у всякого домена верхнего уровня есть обособленный администратор, технический контакт и оператор реестра. И это всё могут быть совсем разные организации. (Тут встречаются исключения, конечно, но весьма редкие: “потерявшиеся” зоны, “спорные” зоны, тестовые домены и так далее – эти случаи не рассматриваем.)

Администратор – определяет, как именно управляется домен верхнего уровня: устанавливает правила и т.д. Администратор же выбирает оператора реестра. А вот реестр – это такая специальная база данных, связанная с технической частью DNS, которая содержит сведения о регистрациях имён (в том числе, сведения о регистрантах/администраторах) и, поэтому, служит источником сведений для настроек доменов в качестве пространства сетевых имён внутри доменной зоны.

Административные и технические роли в доменах верхнего уровня могут пересекаться неожиданным образом. Например, что общего у доменов .PW и .BAR? Администраторы – разные. Технические контакты – разные. Даже класс домена отличается: .PW – это домен ccTLD (национальный), а .BAR – это New gTLD (домены, добавленные в DNS силами ICANN в рамках процесса “массового расширения”). Поэтому далеко не всякий продвинутый интернет-пользователь знает, что за этими разными доменами стоит один и тот же провайдер сервисов реестра: компания CentralNic (это, впрочем, и не скрывается).

Так вот, техническая процедура регистрации имени в том или ином домене верхнего уровня всегда требует участия оператора реестра. С реестром, в большинстве случаев, взаимодействуют компании-регистраторы, которые прошли процедуру получения доступа: их к реестру, что назывется, “подключили”. Регистраторы, в свою очередь, предоставляют услуги конечным пользователям (физическим и юридическим лицам). Правила взаимодействия регистратора с реестром должен определять администратор домена верхнего уровня, исходя из свойств домена, но администратор вполне может поручить подготовку и реализацию всех технических деталей оператору реестра. Реестр, в принципе, знает и все детали регистраций имён, ну, с точностью до того, как их передаёт регистратор.

Что это всё означает? Это означает, что если оператор реестра того или иного домена верхнего уровня станет что-то блокировать (по указанию администратора домена или без такого указания), то он может заблокировать передачу регистраций с конкретными данными регистрантов (администраторов доменов уровнем ниже). И регистратор с этим не может ничего сделать. Собственно, регистратора могут просто отключить от реестра, а доменные имена, которые через него зарегистрированы, передать другому регистратору, снять с делегирования (то есть, они не будут доступны в DNS) и перевести в статус “заблокированных”, переделегировать произвольным образом, или просто удалить – вариантов тут масса.

Пояснение: главное тут даже не отключение регистратора, а то, что реестр может блокировать доменные имена на основании их свойств – например, по геопривязке данных администратора, – вне зависимости от регистратора-источника.



Комментировать »

Кстати, что ещё касается регистраторов и, в частности, GoDaddy. Доменные зоны, а точнее – имена хостов в этих зонах, – часто используются косвенно, в составе тех или иных технических систем. Про это могут забыть даже администраторы и DevOps. Тут могут быть имена авторитативных серверов DNS (NS), имена для почтовых серверов, технические зоны для CDN и прочих систем распределения нагрузки. Потеря подобного имени может привести не только к недоступности ресурсов, но и к той или иной подмене адресации (потому что имя могут перехватить). При этом, GoDaddy мог выступать провайдером DNS-хостинга, что означает появление задач по корректному переносу самой доменной зоны. Так что проблемы у администраторов и DevOps, конечно, могут быть. Особенно, если учитывать, что изменение регистратора доменного имени, даже при содействии отдающей стороны, может занять время: нужно получать коды подтверждения, снимать/устанавливать разные флаги, вести дополнительную переписку. У GoDaddy, например, не самая надёжная и понятная панель управления – часто при переносе имён происходят какие-то загадочные сбои, не отправляются письма.

(И, опять же, не стоит забывать про реестры.)



Комментарии (1) »

Пишут, что и регистратор GoDaddy удалит аккаунты с российскими адресами. Я тоже получил такое сообщение из GoDaddy. Впрочем, я оттуда всё даже минимально нужное и так давно унёс – больше года назад. Конечно, переносить домены от такого регистратора нужно в любом случае и всем (а не только получившим письмо – подобная ситуация “отключения аккаунта” всегда может поменяться, а условия – расшириться), но это самая очевидная часть. Да, переносить зарегистрированные домены имеет смысл к российским регистраторам, это тоже понятно. Всё указывает на то, что глобальную Сеть активно сегментируют. Такая сегментация – это самостоятельный трансграничный процесс, имеющий несколько более сложную структуру, чем можно прочитать в СМИ. Поэтому нельзя исключать, что в скором времени и иностранные реестры открытых доменов верхнего уровня начнут массово вводить аналогичные ограничения непосредственно для администраторов (для регистраторов они уже, в принципе, действуют, но там есть “способы и оговорки”).



Комментарии (1) »

Небольшой комментарий о привычных форматах и способах записи TLS-сертификатов (SSL-сертификатов, как почему-то некоторые продолжают называть). Такой сертификат представляет собой публичный электронный документ, состоящий из множества полей. Внутри эти поля записываются в так называемой ASN.1-структуре, которая, в общих чертах, является иерархией вложенных строк байтов. Общий принцип кодирования здесь такой: строка всегда начинается с префикса, точно задающего тип поля данных и длину данных, а оставшиеся байты – несут сами полезные данные. С базовыми, независимыми от платформы, способами записи связаны разные тонкости, исторически сложившиеся “допущения”, а также и всякие прочие спецификации, например, DER (Distinguished Encoding Rules). Однако реальные хитрости и сложности, происходящие из интерпретации упомянутых схем/спецификаций, возникают только у разработчиков программного обеспечения, которое существенным образом использует данные TLS-сертификатов, но не у пользователей. Например, содержимое файла сертификата в удобном формате PEM выглядит, примерно, так (но тут, для удобства, удалена большая часть строк):

-----BEGIN CERTIFICATE-----
MIIEDjCCAvagAwIBAgISBB+ebYSbzCVbUmAq3rUH97bcMA0GCSqGSIb3DQEBCwUA
MDIxCzAJBgNVBAYTAlVTMRYwFAYDVQQKEw1MZXQncyBFbmNyeXB0MQswCQYDVQQD
[...]
JaRB6DTHZdmM0MzOf6ltVn48cE8LVUuTAM7cFcw+Z1a40XlrMj0nY6Et+QDTZ1n+
2QZDaj5N+G21wxqvpj29BusHurW0xpFIM/Iv2+A8sX+IWQ==
-----END CERTIFICATE-----

Никакой сложности или “криптографии” конкретно тут, в способе записи сертификата, нет. Если не использовать нарочито строгие формулировки, то PEM – это просто текстовый формат с base64-кодированием, переводами строк на заданной границе и строками-разделителями, которые определяются пятью символами “минус” с BEGIN/END. В данном случае:

"-----BEGIN CERTIFICATE-----"

и

"-----END CERTIFICATE-----".

Между этими строками находится просто base64-запись байтов сертификата, закодированного в DER (можно считать, что в “бинарном” виде, а не в “тексте”). Если взять байты сертификата, закодировать их в base64, поместить результат в текстовый редактор, дописать “BEGIN…END” в заданном формате с минусами, добавить переносы строк, то получится PEM. И наоборот. (Исключения, наверное, можно попробовать придумать, но они будут экзотическими.) Естественно, так как сертификат содержит внутри электронную подпись, то значения всех его битов – важны: если что-то изменится, то подпись перестанет сходиться (или вообще проверяться, если испорчена сама запись подписи).

Преобразовать сертификат между текстовым PEM и “бинарным” DER можно при помощи OpenSSL:

PEM -> DER
$ openssl x509 -in cert.pem -out cert.der -outform DER

DER -> PEM
$ openssl x509 -in cert.der -out cert.pem -inform DER -outform PEM

(Опция “-inform DER” во втором случае нужна потому, что openssl x509 по умолчанию ожидает формат PEM.)

В сертификате при этом ничего не изменяется, никаких особо сложных операций не выполняется, а OpenSSL здесь нужен только как удобная утилита “всё в одном”. Аналогичного эффекта, действуя через командную строку, нетрудно добиться и сочетанием cat с base64 -d.



Комментировать »

Перемешивание – это само собой, однако есть и другой важный аспект наложенных сетей, встраиваемых в веб-браузеры: внутрь такой сети будут затягиваться и серверы, публикующие информацию, предоставляющие сервисы пользователям (веб-серверы, а также разные бэкенды “облачных” приложений).

Мотивировать такой ход несложно: узлы, находящиеся внутри наложенной сети, “будут ближе к пользователю”, “лучше защищены”, “станут лучше ранжироваться в выдаче поисковых систем”, кроме того, и доступ проще оптимизировать. “Внутри” – означает, что на узлах провайдера выходных шлюзов, при том, что эти узлы принадлежат логической перемешивающей сети. Естественным примером из практики являются скрытые TOR-сервисы. Занятно, что если речь будет идти на уровне Google, то даже можно отказаться от “общепринятой” DNS – система имён и адресов может быть своей, а вход на сервисы и сейчас нередко происходит через поисковый запрос, даже из браузера. А браузер Chrome, например, более чем достаточно распространён для того, чтобы администраторы популярных сервисов задумались о параметрах доступа пользователей этого браузера, ну, это кроме только что перечисленных “прочих преимуществ”.



Комментировать »

На OpenNET пишут про RFC для децентрализованной системы имён GNS:

“Использование Curve25519 воспринимается некоторыми как весьма странный шаг, так как для ECDSA применяют другие типы эллиптических кривых, а в паре с Curve25519 обычно используют алгоритм цифровых подписей Ed25519, более современный, более безопасный и более быстрый, чем ECDSA. С точки зрения криптостойкости в том числе вызывает сомнение выбор размера закрытого ключа – 32 байта вместо 64 байт”

В GNS, действительно, используют ECDSA на кривой Curve25519. Это может, конечно, показаться странным. Однако алгоритм ECDSA работает в группе точек и вообще не зависит от выбора кривой (да, даже про “суперсингулярные кривые” тут есть занятные уточнения). Поэтому ничто не мешает взять Curve25519 вместо, например, более привычной P-256. Какие-то сугубо математические свойства Curve25519, типа наличия кофактора и т.п., вовсе и не являются необычными – такие кривые вполне себе подходят и для ECDSA. Так что, если нет доверия той же P-256, но нужен именно алгоритм ECDSA – можно взять Curve25519. Использование же Ed25519 в данном протоколе невозможно из-за особенностей преобразования ключей, о чём, собственно, сказано в RFC. Насчёт “более быстрого” алгоритма Ed25519 – это, в основном, определяется как раз параметрами кривой (поле и т.д.).

Что касается странного дополнения про 32-байтовый и 64-байтовый ключи: тут, наверное, что-то перепуталось на каком-то этапе пересказывания. В Ed25519 секретный ключ – 32-байтовый. И в ECDSA на P-256 (например) – тоже 32-байтовый. Потому что разрядность в 256 бит (32 байта) делает бессмысленным использование секретных ключей большей длины: всё равно значение сократится. А 64 байта – это общий размер подписи, а не ключа.

Можно предположить, что тут ещё сыграло следующее популярное заблуждение, которое нередко наблюдается в отношении SSH-ключей: многие считают, что, например, поскольку открытый ключ Ed25519 короче, чем ECDSA на той же P-256, он поэтому и менее “криптостойкий”. Действительно, для ECDSA/P-256 открытый ключ обычно записывается в 64 байта (иногда чуть меньше, иногда – чуть больше, зависит от кодирования), а в Ed25519 – только в половину, в 32 байта. Однако эти 64 байта ECDSA математически эквивалентны 32 байтам, там половина байтов приносит только один бит дополнительно: открытый ключ представляет собой точку на кривой, у точки – две координаты (X,Y), каждая по 32 байта, и вот полная форма записи ключа ECDSA подразумевает указание объединения X и Y, откуда и получается 64 байта; однако можно указывать только одну координату (X), а вторую (Y) – вычислять из уравнения кривой при необходимости. В такой схеме, для ECDSA, потребуется сохранить дополнительно знак, это один бит, и получается тоже около 32 байтов для записи открытого ключа. А вот в Ed25519 алгоритм предписывает всегда использовать только одну координату (ну, строго говоря, там есть ещё некоторые преобразования, но здесь они не важны). То есть, математически эти ключи совпадают по представлению, отличие тут чисто прикладное, поэтому дополнительные 32 байта записи для ECDSA не делают даже открытый ключ в два раза длиннее “криптографически” – он всё равно 256-битный (по разрядности кривой).



Комментировать »

Надо сказать, я несколько лет назад отмечал, что интересно будет посмотреть, внедрит ли Google поддержку ESNI в свой браузер. Интерес, на мой взгляд, тут происходил из того, что Google последовательно отказывался поддерживать такие технологии обеспечения безопасности, которые использовали тот или иной независимый инструмент управления криптографическими ключами в TLS. Примеров два: изгнание из веба DANE (отпечатки ключей/сертификатов в DNS, для сверки с предъявляемыми сервером) под предлогом замены на Certificate Transparency (которая хоть и полезная, но о другом, так как не может предотвратить использование валидного подменного сертификата в момент соединения); отключение HPKP (запоминание отпечатков серверных ключей клиентом, как в SSH).

И вот я предположил, что, вероятно, ESNI тоже не будет в Google Chrome. Но сейчас вышло иначе: вместо исходного варианта ESNI – Google Chrome (Chromium) всё же поддержал ECH, а это развитие ESNI, гораздо более продвинутое. Впрочем, думаю, что в этой “продвинутости” и состоит причина поддержки: всё же, ECH далеко ушла от первоначальной идеи ESNI – позволяет реализовать доступ к скрытым сервисам, при этом наследует доверие системе хорошо известных удостоверяющих центров (“имени CA/B-форума”); впрочем, ECH и ключи для дополнительной защиты внутри TLS позволяет публиковать, например, в DNS, то есть, не централизованным способом, который, формально, не зависит от браузера (но нельзя забывать о встроенной поддержке DNS-over-HTTPS с заданными провайдерами). В общем, поддержка внешних ключей появилась, но теперь нужно посмотреть, как будет она развиваться: ведь доверенные ключи для ECH могут приезжать и вместе с браузером – это важная особенность.



Комментарии (2) »

В продолжение записки про наложенные сети Google для браузера. Внедрение таких перемешивающих технологий, конечно, заметно изменит ландшафт для систем фильтрации и блокирования (с DPI), которые будут внешними (относительно google-сетей). Внутри, понятно, возникнут своя фильтрация и блокирование, в точном соответствии с концепцией “Битвы за банхаммер“. Но снаружи останутся видны только IP-адрес клиента и IP-адрес входного узла Google – это важный момент: адрес не какого-то HTTPS-сервера или прокси, а сервиса доступа к вебу от Google. При этом протокол доступа у всех клиентов будет одинаковый.

Браузеры очень распространены, это один из основных источников трафика обычных пользователей – если привычный браузер перестанет работать “из коробки”, то, для таких пользователей, это окажется эквивалентно исчезновению доступа к Интернету. Однако, чтобы использовать наложенную сеть, программа-клиент не обязательно должна быть браузером: механизм доступа конкретно к браузеру не привязан – там достаточно универсальное туннелирование. Впрочем, похоже, что будет требоваться Google-аккаунт и аутентификация при доступе, но этот момент тоже переносится в другие приложения.

И занятно будет посмотреть, кстати, с какими эффектами работа наложенной сети, в ходе развития технологии, переедет в браузеры, которые базируются на Chromium/Chrome, но считаются как бы обособленными и самостоятельными.



Комментировать »