広告ブロック拡張機能の「uBlock Origin」がFirefox上で最適に動作する理由とは?

2021/04/12 

 

 

コンテンツフィルタリング用のブラウザ拡張機能「uBlock Origin」は、ほかの広告ブロック拡張機能などよりもメモリ使用率が少ないことで人気を集めています。このuBlock OriginはChrome、Microsoft Edge、Firefox、Operaなどのブラウザ上で使用可能となっているのですが、Firefox上で最適に動作する理由を開発者のレイモンド・ヒル氏がGitHub上で解説しています。

uBlock Origin works best on Firefox · gorhill/uBlock Wiki · GitHub
https://github.com/gorhill/uBlock/wiki/uBlock-Origin-works-best-on-Firefox

uBlock OriginがFirefox上で最適に動作する理由は、Firefoxでは「CNAMEレコード」を使ってファーストパーティを装ったサードパーティサーバーのクロークを解除することができるためです。これにより、Firefox上で動作するuBlock Originは、他のブラウザ上で動作するコンテンツフィルタリング拡張機能と比べても、最も効率的に動作するようになるとのこと。

以下のグラフはOpera、Chrome、Brave、Tor Browser、Firefoxという5つのブラウザで、uBlock Originを含む複数のコンテンツフィルタリング拡張機能を使用した場合のコンテンツ検知率を示したもの。緑色は「CNAMEレコードのクロークを解除せずにuBlock Originを使用した場合のコンテンツ検出率」で、赤色は「CNAMEレコードのクロークを解除してuBlock Originを使用した場合のコンテンツ検出率」を示しています。結果は一目瞭然で、FirefoxでCNAMEレコードのクロークを解除してuBlock Originを使用した場合のコンテンツ検出率がダントツ高く、驚異の100%近くとなっています。

 

uBlock OriginとFirefoxの組み合わせが最も効率的にコンテンツをフィルタリングできる理由はいくつかあります。

例えばuBlock Originのバージョン1.15.0以降とFirefoxのバージョン57以降を使用しているユーザーは、「HTMLフィルター」と呼ばれる機能が利用できます。この機能はブラウザが解析する前にHTMLドキュメントをフィルタリングするという機能です。HTMLフィルターによりブラウザが解析する前にHTMLドキュメント内の特定タグを削除することが可能となりますが、同機能は「webRequest.filterResponseData()」というAPIを用いているため、Firefox以外のブラウザでは利用不可能です。

さらにFirefoxの場合、ブラウザ起動時にuBlock Originが起動して機能する準備が整うのを待ってから、開いているタブからネットワーク要求が発生します。一方で、Chromiumベースのブラウザは、uBlock Originが起動する前から開いているタブのネットワーク要求を処理していくケースがあるとのこと。つまり、uBlock OriginをFirefoxで利用すると、すべてのコンテンツを確実にブロックしてもらうことが可能というわけ。ヒル氏は「サードパーティのリソースやJavaScriptにデフォルト拒否モードを使用している人にとっては特に重要です」と記しています。

他にも、Firefoxではデフォルトでプリフェッチが無効になっていますが、Chromiumベースのブラウザではユーザーが設定から自身の手でプリフェッチを無効にする必要があります。

 

Firefox版のuBlock OriginはコアフィルタリングコードパスにWebAssemblyコードを使用しています。一方でChromiumベースのブラウザの場合、拡張機能マニフェストで追加の権限が必要になるように設計されており、「Chromeウェブストアで拡張機能を公開するときに摩擦が生じる可能性がある」とヒル氏は述べています。

加えて、Firefox版のuBlock OriginはデフォルトでLZ4という圧縮形式を採用しています。これにより生のフィルターリスト、コンパイルされたリストデータ、メモリスナップショットをディスクストレージに保存可能となります。

一方で、LZ4を採用していないChromiumベースのブラウザの場合、フィルターリストなどのデータが常にリセットされるため、uBlock Originの動作は常に非効率になり、フィルターリストが古くなるという問題もあるそうです。


なお、Firefox版のuBlock Originは以下から入手できます。

uBlock Origin - Firefox Browser ADD-ONS
https://addons.mozilla.org/ja/firefox/addon/ublock-origin/

 

 

 

 

 

 

 

 

 

 

Googleの「秘密プログラム」の存在が独占禁止法訴訟の中で明らかに

2021/04/12 

 

 

アメリカの10州の司法当局が「検索における独占的地位を乱用して競争を阻害している」としてGoogleを独占禁止法で訴えた一件の訴訟の中で、Googleが提出した未編集文書の中から自社製広告購入システムを競合他社製品より有利にする秘密プログラム「プロジェクト・バーナンキ」の存在が判明しました。

Google’s Secret ‘Project Bernanke’ Revealed in Texas Antitrust Case - WSJ
https://www.wsj.com/articles/googles-secret-project-bernanke-revealed-in-texas-antitrust-case-11618097760

Google reportedly ran secret ‘Project Bernanke’ that boosted its own ad-buying system over competitors - The Verge
https://www.theverge.com/2021/4/11/22378296/google-secret-project-bernanke-ad-buying-competitors-texas

Google gamed its ad auction system to favor its own ads, generated $213 million | AppleInsider
https://appleinsider.com/articles/21/04/11/google-bernanke-revealed-in-ad-business-antitrust-lawsuit-error

Googleは広告出稿サービスであるGoogle広告を運用しているだけでなく、Google広告を通して自社広告も打ち出しており、Google広告においては「運営元」と「クライアント」の両方の役割を果たしています。そのため、テキサス州などの司法当局は、Googleが運営元とクライアントという2重の立場を利用して、「広告価格を不当につり上げた」として2020年12月に訴訟を起こしていました。

Googleがさらなる独占禁止法違反の訴訟に直面、今度はFacebookとの共謀の疑いも - GIGAZINE

 

この裁判に提出された文書で新たに明らかになったのが、Googleがこれまで秘密としてきた広告購入システムに内在するプログラム「プロジェクト・バーナンキ」の存在です。このプロジェクト・バーナンキは、過去に行われたGoogle広告のオークションの入札履歴を参照し、最適な入札額を提示してクライアントが広告インプレッションのオークションに勝ちやすくするというもの。資料を受けてテキサス州などの司法当局は、「競合他社の広告購入システムに打ち勝つため、Google広告などで得た独占情報を利用してプロジェクト・バーナンキを運用していた疑いがある」と指摘し、Googleの内部文書を引用して「プロジェクト・バーナンキによって2013年だけで2億3000万ドル(約252億円)を稼いだ」と主張しています。

この主張に対して、Googleの広報担当者は「プロジェクト・バーナンキには、『競合他社のツールと同等のデータ』しか用いられていない」「広告技術ビジネスの多くの側面を誤って伝えている」と反論。「法廷が待ち遠しいですね」と言い添えました。一方で、Googleはプロジェクト・バーナンキの存在が明かされた提出文書は「適切に編集されていなかった」として、再提出を行いました。


Googleは今回の広告市場を巡る独占禁止法違反の訴訟の他にも、検索市場に関する独占禁止法違反の訴訟を抱えているだけでなく、2021年3月にはニュース使用料の支払いについても独占禁止法違反の疑いが報じられたり、独占禁止法違反の疑いによりCookieレスの広告システム「プライバシーサンドボックス」に関する調査がスタートしたりしています。

Googleが開発中で「最悪」と指摘される新システムが早くも独禁法違反で調査開始 - GIGAZINE