Ученые спроектировали "лазейку в Интернет" для граждан авторитарных государств

Ученые спроектировали "лазейку в Интернет" для граждан авторитарных государств

В некоторых странах регулярно или в чрезвычайных ситуациях работают механизмы контроля доступа граждан ко всемирной Сети. Американские ученые, однако, готовы бороться с цензурой во имя свободы информации; для этого они создали прототип системы "недетектируемых прокси-серверов", предназначенной для обхода контент-фильтров.


Исследователи Центра информационно-технологической политики Принстонского университета назвали свою разработку "Telex". По их словам, задача системы состоит в том, чтобы скрывать сами попытки пользователя установить соединение, а не маскировать конечную точку, с которой он желает обмениваться данными; cоответственно, она может функционировать и параллельно с другими прокси-решениями наподобие Tor. Сообщается, что предварительное тестирование прототипа системы продемонстрировало ее высокую эффективность, устойчивость и скорость передачи информации.

Принцип работы Telex заключается в следующем. Пользователь отправляет запрос на соединение с любым произвольным ресурсом, который не внесен в стоп-лист государственного фильтра; на вид запрос является вполне обычным, однако в его заголовках есть криптографическая секретная метка, генерируемая при помощи стеганографии с публичным ключом. Наличие метки говорит о том, что в передаваемых данных присутствует скрытый Telex-запрос; расшифровать метку и отреагировать на нее может только программное обеспечение прокси-серверов самой Telex. По пути к точке назначения запрос проходит через Telex-станции, развернутые на мощностях поставщиков услуг Интернета в свободных от цензуры странах; первая откликнувшаяся станция устанавливает с клиентом защищенное туннелированное соединение и передает по нему все интересующие пользователя сведения, обходя тем самым механизмы фильтрации содержимого.

Очевидно, что для функционирования такой системы ее создателям нужно будет каким-то образом привлечь к сотрудничеству Интернет-провайдеров и убедить их в необходимости создания сети Telex-станций. Если им удастся этого добиться, то для перекрытия вышеописанных туннелей государственным цензорам потребуется блокировать вообще весь сетевой трафик. Ученые настроены оптимистично и полагают, что многие поставщики услуг Интернета присоединятся к ним в борьбе за свободу информации. Более того: им кажется вполне вероятным, что отыщутся такие сознательные страны, которые отдадут своим национальным провайдерам официальные указания развернуть Telex-станции на их мощностях.

Softpedia

Письмо автору

" />

Зачем Яндекс Go создал отдельный язык для расчёта стоимости поездок

Цена поездки в Яндекс Go — это не расстояние, умноженное на минуты и километры. В расчёт вмешиваются геозоны, спрос, скидки, платные дороги, дополнительные остановки и требования вроде перевозки кота, велосипеда или лыж. Чтобы управлять этим хозяйством без бесконечных деплоев, разработчики вынесли алгоритм ценообразования из кода сервиса в собственный язык.

Как объяснили разработчики в статье на Хабре, прайсинг работает не только при заказе машины.

Он пересчитывает стоимость при смене маршрута или способа оплаты, завершении поездки, обращении в поддержку и проверке данных аналитиками. Цена при этом может быть фиксированной, интервальной или считаться по таксометру.

 

Сначала сервисы параллельно собирают параметры поездки: тарифную категорию, геозоны, скидки, повышенный спрос и дополнительные услуги. Зависимости между источниками выстраиваются в граф, а запросы выполняются асинхронно на базе userver. Если некритичный источник не ответил, весь расчёт не падает.

 

Сам алгоритм раньше можно было бы держать в C++, но он меняется в среднем дважды в неделю. Выкатка сервиса на 50 подов занимает около 40 минут, а лес динамических конфигов быстро превратил бы код в музей условных операторов.

Поэтому Яндекс разработал собственный DSL. В нём есть условия, функции, неизменяемые значения и fold вместо циклов. Правила собираются в последовательную цепочку: каждое преобразование получает текущую цену и параметры, а возвращает новый результат с метаданными. Грамматику описали через ANTLR 4, а верификатор Z3 проверяет, что программа не выдаст некорректную цену.

 

Теперь изменение алгоритма не требует пересборки сервиса, ошибочную версию можно быстро откатить, а каждый расчёт — воспроизвести по входным данным и промежуточным результатам.

 

В итоге прайсинг превратился в отдельную платформу, которой уже пользуются Такси, Доставка и сервис зарядки электромобилей.

RSS: Новости на портале Anti-Malware.ru