Подготовени са версии на uBlock Origin и AdGuard с поддръжка на третата версия на манифеста Chrome

Реймонд Хил (Raymond Hill), автор на системата за блокиране на нежелано съдържание uBlock Origin, публикува експериментално браузърно разширение uBO Minus с реализация на версия на uBlock Origin, преведена на API declarativeNetRequest, чиято употреба е предписана в третата версия на манифеста на Chrome. За разлика от класическия uBlock Origin, новото разширение използва възможностите на вградения в браузъра двигател за филтриране на съдържанието и не изисква при инсталирането предоставянето на права за прихващане и изменение на всички данни от сайтовете.

В разширението все още липсва изскачащ панел и страници за настройка на параметрите, а функционалността е ограничена до блокиране на мрежови заявки. За работа без разширени права са деактивирани такива възможности като козметични филтри за замяна на съдържанието на страницата („##“), вмъкване на скриптове в сайтовете („##+js“), филтри за пренасочване на заявки („redirect=“), CSP (Content Security Policy) заглавни филтри и филтри за премахване на параметри от заявките („removeparam=“). В останалото списъкът с предлаганите по подразбиране филтри напълно съответства на комплекта от uBlock Origin и включва около 22 хиляди правила.

Освен това, преди няколко дни беше представен експериментален вариант на разширението за блокиране на реклама AdGuard — AdGuardMV3, също преведен на API declarativeNetRequest и способен да работи в браузъри, които поддържат само третата редакция на манифеста на Chrome. Предложеният за тестване прототип предоставя всичката необходима функционалност за блокиране на реклама за обикновените потребители, но изостава от разширението за втората редакция на манифеста по своите разширени възможности, които може да представляват интерес за напреднали потребители.

В новата версия на AdGuard ще продължи да функционира скриването на банери, социални медии и досадни елементи, блокиране на реклами на видеоплатформи като YouTube и предварително блокиране на заявки, свързани с проследяване на движенията. От ограниченията се отбелязва мигането на рекламните вмъквания поради забавяне при прилагане на козметичните правила от 1.5 до 2 секунди, загуба на някои възможности, свързани с филтриране на бисквитки, прилагане на регулярни изрази и филтриране на параметри на заявките (новият API предоставя опростени регулярни изрази), наличност на статистика и лог на сработванията на филтрите само в режим на разработчика (Developer Mode).

Също така се споменава възможно намаляване на броя на правилата поради ограничения, въведени в третата версия на манифеста. Ако в браузъра е инсталирано едно разширение, което използва declarativeNetRequest, проблеми с статичните правила не възникват, тъй като действа общ лимит за всички разширения, допускащ 330 хиляди правила. Когато има няколко разширения, се прилага лимит от 30 хиляди правила, което може да се окаже недостатъчно. За динамичните правила е въведен лимит от 5000 правила, а за регулярните изрази — 1000 правила.

От януари 2023 г. в браузъра Chrome се планира да се спре поддръжката на втора версия на манифеста и да се направи третата версия задължителна за всички разширения. Първоначално третата версия на манифеста беше обект на критика за нарушаване на работата на много разширения за блокиране на нежелано съдържание и осигуряване на безопасност. Манифестът на Chrome определя възможностите и ресурсите, предоставяни на разширенията. Третата версия на манифеста е разработена в рамките на инициатива за укрепване на безопасността, конфиденциалността и производителността на разширенията. Главната цел на внесените изменения е опростяване на създаването на безопасни и високопроизводителни разширения, като същевременно се усложни възможността за създаване на небезопасни и бавни разширения.

Основното недоволство от третата версия на манифеста е свързано с преминаването към режим само за четене на API webRequest, който позволяваше свързването на собствени обработвачи, имащи пълен достъп до мрежовите заявки и способни на лето да модифицират трафика. Указаният API се използва в uBlock Origin, AdGuard и много други разширения за блокиране на нежелано съдържание и осигуряване на безопасност. Вместо API webRequest третата версия на манифеста предлага ограничен по възможностите си API declarativeNetRequest, предоставящ достъп до вграден механизъм за филтриране, който самостоятелно обработва правилата за блокиране, не позволява използването на собствени алгоритми за филтриране и не позволява задаването на сложни правила, които си противоречат в зависимост от условията.

През три години обсъждания на предстояща третата версия на манифеста, компанията Google взе предвид много желания на общността и разшири първоначално предоставения API declarativeNetRequest с възможности, поисквани в съществуващите разширения. Например, Google добави към API declarativeNetRequest поддръжка за използването на множество статични набори от правила, филтриране с регулярни изрази, модификация на HTTP заглавия, динамично изменение и добавяне на правила, премахване и замяна на параметри на заявки, филтриране, свързано с разделите, и създаване на специфични за определени сесии набори от правила.

Източник: opennet.ru

Купете надежден хостинг за сайтове със защита от DDoS, VPS и VDS сървъри 🔥 Купете надежден хостинг за сайтове със защита от DDoS, VPS и VDS сървъри | ProHoster