169 похожих чатов

Разработчики браузера Chromium заявили о намерении отказаться от поддержки HTTP-заголовка

User-Agent и, соответственно, от navigator.userAgent в js API страницы. Начиная с выпуска М81 разработчики будут получать предупреждения в консоли при попытке обратиться к этому полю.

В замен будет использоваться продвинутая система User-Agent Client Hints (UA-CH). Черновик котрой родился в переписке рабочей группы w3c по вопросам HTTP (ietf-http-wg@w3.org). На сегодняший день спецификация не имеет статуса стандарта или рекомендации. Это просто наработка инкубатора w3c.

Что предлагает эта спецификация?
Сейчас при запросе любого HTTP ресурса клиент отправляет с каждым своим запросом заголовок User-Agent. например так:
"Mozilla/5.0 (X11; Linux x86_64)
AppleWebKit/537.36 (KHTML, like Gecko)
Ubuntu Chrome/79.0.3945.117
Safari/537.36"

Достаточно много информации, часть из которой не корректна. Более того, информации достаточно для детального фингерпринтинга клиентов.

Вместо этого рабочая группа предлагает другой протокол. При первом запросе клиент отправляет свое только название и мажорную версию.
Sec-CH-UA: "Chrome 74"


Важно отметить, что все взаимодействие происходит только по закрытому каналу связи. Для HTTP без SSL поддержка CH-UA должна быть отключена.

Сервер отвечает заголовком Accept-CH: в котором перечисляет все данные о клиенте, которые его интересуют. Например:

Accept-CH: UA, UA-Platform, UA-Arch
и получает в ответ:
Sec-CH-UA: "Chrome 74.0.3424.124"
Sec-CH-UA-Platform: "macOS 12"
Sec-CH-UA-Arch: "ARM64"

Спецификацией предлагается такой набор полей с примерами значений:
- brand (например: "cURL", "Edge", "The World’s Best Web Browser")
- major version (например: "72", "3", or "28")
- full version (например: "72.0.3245.12", "3.14159", or "297.70E04154A")
- platform brand and version (например: "Windows NT 6.0", "iOS 15", or "AmazingOS 17G")
- platform architecture (например: "ARM64", or "ia32")
- model (например: "", or "Pixel 2 XL")
- mobileness (например: ?0 or ?1)

1 ответов

16 просмотров

Ботов станет легче пилить и сложнее вычислять

Похожие вопросы

Обсуждают сегодня

Господа, а что сейчас вообще с рынком труда на делфи происходит? Какова ситуация?
Rꙮman Yankꙮvsky
29
А вообще, что может смущать в самой Julia - бы сказал, что нет единого стандартного подхода по многим моментам, поэтому многое выглядит как "хаки" и произвол. Короче говоря, с...
Viktor G.
2
30500 за редактор? )
Владимир
47
а через ESC-код ?
Alexey Kulakov
29
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
14
Добрый день! Скажите пожалуйста, а какие программы вы бы рекомендовали написать для того, чтобы научиться управлять памятью? Можно написать динамический массив, можно связный ...
Филипп
7
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
Ребят в СИ можно реализовать ООП?
Николай
33
https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_h_common.erl#L174 https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_olp.erl#L76 15 лет назад...
Maksim Lapshin
20
Карта сайта