📜 ⬆️ ⬇️

Proposed changes to Chromium will disrupt uBlock Origin

The developer of uBlock Origin said that its extension to ad blocking will not work if changes to Chromium are accepted. This is the implementation of the declarativeNetRequest API , which makes it impossible to use the webRequest API . Google believes that the changes are necessary for the quick operation of the ad blocker built into Chromium, as well as the implementation of the functionality in the browser that is now in Adblock Plus (the same syntax, etc.).

The problem is that these interfaces are not compatible with the current uBlock Origin operation scheme: “If blockers can work only through these (very limited) declarativeNetRequest API, then in fact this means that the two blockers that I have supported for many years, uBlock Origin and uMatrix can no longer exist, ”wrote Raymond Hill.

Changes will not disable completely third-party blockers. They are simply deprived of access to the webRequest API , which they use to listen for events and block content on the fly during page loading. In the new system, blockers will not be able to block events based on the webRequest API, and will only be able to view events. This should speed up the loading of pages in the browser, because extensions will no longer slow down the main thread, according to Google engineers.

Instead, extensions are offered to switch to the declarativeNetRequest API - and inform the browser about the events they want to block. That is, control passes to the browser. In addition to speeding up the work, the changes are supposedly made to improve user privacy: “The DeclarativeNetRequest API provides better privacy for users, because extensions cannot actually read network requests made on behalf of the user,” explains the Google API documentation.

Content blockers are based on the idea that users, and not someone else, control content in their browser. They need to control how the browser displays it and how it interacts with remote resources. No one has the right to force a person to view the information that he does not want to look at: this is one of the basic rights and freedoms of an individual.

Managing ad blocking through a browser, rather than a third-party extension, is welcome, if not for one objection. The fact is that Chromium is based on the most popular browser on the Internet, Chrome, which is released by Google. And she receives the lion’s share of her profits from advertising on the Internet. It would be naive to assume that the company will make special efforts to help users block their ads. Rather, on the contrary, it will make efforts so that the means built into the browser make it as difficult or impossible as possible. And if changes are implemented Manifest v3, then uBlock Origin will stop working.

Raymond Hill notes that the declarativeNetRequest API uses an Adblock Plus-style filtering system that is not compatible with uBlock Origin. He believes that this is a fundamental mistake: “In addition to the fact that uBlock Origin and uMatrix cannot exist, it is a matter of concern that the proposed declarativeNetRequest APIs block the introduction of new content filtering engines on the innovation architecture, because the declarativeNetRequest API is no more than the implementation of one particular the filtering engine, and a rather limited implementation (the limit of 30,000 restrictions is not enough to work out well-known EasyList lists alone). ”

Hill noted that the new API does not support some other features, including blocking multimedia elements larger than the specified size, disabling JavaScript execution by introducing Content-Security-Policy directives, and deleting outgoing cookie headers. Raymond believes that these changes are not in the interests of users .

If you accept Manifest v3, it can speed up Chrome, but will limit the possibilities of all browser extensions, not only to block ads, but also others. Raymond Hill writes that Chrome will become similar to Apple's Safari browser, which now supports “content blockers” , which operate in fast, standard mode.

This is a kind of compromise. On the one hand, browser extensions, such as uBlock Origin, can no longer implement their own filtering mechanism. On the other hand, the filtering mechanism built into Chromium will be much faster than it is now. In principle, other browsers are also moving towards a gradual restriction on the rights of third-party extensions.

Some other developers, commenting on the proposed change, expressed concern that Google uses privacy as a pretext to put the interests of its advertising business over the interests of browser users.

Google representatives said that the final specifications of Manifest v3 have not yet been approved, the discussion continues.

Source: https://habr.com/ru/post/437218/