Raymond Hill, autor systému blokovania nežiaduceho obsahu uBlock Origin, publikoval experimentálne prehliadačové doplnky uBO Minus s implementáciou variantu uBlock Origin, ktorý je preložený na API declarativeNetRequest, ktorého používanie je predpísané v tretej verzii manifestu Chrome. Na rozdiel od klasického uBlock Origin nový doplnok využíva možnosti zabudovaného prehliadača na filtrovanie obsahu a nevyžaduje pri inštalácii poskytnutie oprávnení na zachytávanie a úpravu všetkých dát stránok.
Doplnok zatiaľ nemá vyskakovaciu panel a stránky na nastavenie parametrov, a jeho funkčnosť je obmedzená na blokovanie sieťových požiadaviek. Na prácu bez rozšírených práv sú deaktivované také možnosti ako kozmetické filtre na nahradenie obsahu na stránke ("##"), vkladanie skriptov do stránok ("##+js"), filtre na presmerovanie požiadaviek ("redirect="), filtre hlavičiek CSP (Content Security Policy) a filtre na odstránenie parametrov požiadaviek ("removeparam="). Inak je zoznam predvolených filtrov v plnej miere rovnaký ako súbor z uBlock Origin a obsahuje približne 22 tisíc pravidiel.
Okrem toho, pred niekoľkými dňami bol predstavený experimentálny variant doplnku na blokovanie reklamy AdGuard — AdGuardMV3, ktorý je taktiež preložený na API declarativeNetRequest a schopný fungovať v prehliadačoch, ktoré podporujú iba tretiu edíciu manifestu Chrome. Navrhnutý prototyp na testovanie poskytuje všetky potrebné funkcie pre bežných používateľov na blokovanie reklamy, ale zaostáva za doplnkom pre druhú edíciu manifestu pokiaľ ide o svoje rozšírené možnosti, ktoré môžu byť zaujímavé pre pokročilých používateľov.
V novej verzii AdGuard bude naďalej fungovať skrývanie bannerov, sociálnych widgetov a otravného obsahu, blokovanie reklamy na video platformách ako YouTube a proaktívne blokovanie požiadaviek súvisiacich so sledovaním pohybu. Medzi obmedzeniami sa uvádza problémy s blikaním reklamných prvkov spôsobených oneskorením pri aplikácii kozmetických pravidiel o 1,5-2 sekundy, strata niektorých funkcií súvisiacich s filtrom Cookies, používaním regulárnych výrazov a filtrovaním parametrov požiadaviek (nové API poskytuje zjednodušené regulárne výrazy), dostupnosť štatistiky a logu spúšťania filtrov je dostupná len v režime vývojára (Developer Mode).
Tiež sa spomína možné zníženie počtu pravidiel kvôli obmedzeniam zavedeným v tretej verzii manifestu. Ak je v prehliadači nainštalované jedno rozšírenie, ktoré používa declarativeNetRequest, nevznikajú problémy so statickými pravidlami, pretože platí spoločný limit na všetky rozšírenia, ktorý umožňuje 330 tisíc pravidiel. Pri viacerých rozšíreniach platí limit 30 tisíc pravidiel, čo nemusí byť dostatočné. Pre dynamické pravidlá bol zavedený limit na 5000 pravidiel a pre regulárne výrazy 1000 pravidiel.
Od januára 2023 sa v prehliadači Chrome plánuje ukončenie podpory druhej verzie manifestu a zavedenie tretej verzie ako povinnej pre všetky rozšírenia. Pôvodne bola tretia verzia manifestu kritizovaná pre narušenie fungovania mnohých rozšírení na blokovanie neželaného obsahu a zabezpečenia. Manifest Chrome definuje možnosti a zdroje, ktoré sú rozšíreniam poskytované. Tretia verzia manifestu bola vyvinutá v rámci iniciatívy na posilnenie bezpečnosti, súkromia a výkonu rozšírení. Hlavným cieľom zavedených zmien je zjednodušiť vytváranie bezpečných a vysoko výkonných rozšírení a sťažiť možnosť vytvárania nebezpečných a pomalých rozšírení.
Hlavné nespokojnosti s treťou verziou manifestu sú spojené s prechodom do režimu iba na čítanie API webRequest, ktoré umožňovalo pripojiť vlastné spracovatele, majúce plný prístup k sieťovým požiadavkám a schopné na mieste modifikovať prenos dát. Uvedené API sa používa v uBlock Origin, AdGuard a mnohých ďalších doplnkoch na blokovanie neželaného obsahu a zabezpečenie. Namiesto API webRequest bola v tretej verzii manifestu ponúknutá obmedzená verzia API declarativeNetRequest, ktorá poskytuje prístup k zabudovanému enginu na filtrovanie, ktorý sám spracováva pravidlá blokovania, nedovoľuje používať vlastné filtračné algoritmy a neumožňuje nastavovať zložité pravidlá, prekrývajúce sa v závislosti od podmienok.
Po troch rokoch diskusií o blížiacej sa tretej verzii manifestu spoločnosť Google zohľadnila mnohé priania komunity a rozšírila pôvodne poskytnuté API declarativeNetRequest o funkcionality, požadované v existujúcich doplnkoch. Napríklad Google pridal do API declarativeNetRequest podporu pre používanie viacerých statických súborov pravidiel, filtrovanie pomocou regulárnych výrazov, modifikáciu HTTP hlavičiek, dynamickú zmenu a pridávanie pravidiel, odstraňovanie a nahrádzanie parametrov požiadaviek, filtrovanie viazané na karty a vytváranie špecifických sád pravidiel pre konkrétne relácie.
Zdroj: opennet.ru
