プライバシーアップデート

広告ブロックの進化のための手続き型コスメティックフィルター

Braveプライバシーチーム寄稿

この記事は、Braveブラウザの新しいプライバシー機能を紹介するシリーズの31回目の記事です。今回は、シニア・アドブロック・リサーチ・エンジニアのAnton Lazarev、iOS・シニア・ソフトウェア・エンジニアのStephen Heaps、そして主任プライバシー・リサーチャーのPete Snyderによる対応を紹介します。この記事はプライバシー・エンジニアリング・リードのShivan Kaul Sahibによって書かれた記事の日本語訳です。

バージョン1.73より、すべてのプラットフォームにおいて、Braveはページ要素の手続き型コスメティックフィルターのサポートを追加することで、広告ブロック機能を大幅に改善します。Braveはより多くの広告をブロックし、Webサイトの破壊は少なくなり、邪魔なページ要素をより正確にブロックすることができるようになります。

Braveはすでにクラス最高の広告とトラッカーブロック機能を提供しています。プライバシーに有害なトラッカーへのネットワークリクエストをブロックし、広告会社やデータブローカーがWeb上でユーザーを追い回す行為を防ぎます。これはまた、パフォーマンスを向上させ、Webをより乱雑にしないという嬉しい副次的効果もあります。しかし、サードパーティの広告をブロックすると、Webサイトのデザインが壊れてしまうことがあります。さらに、広告コンテンツがWebサイトのコンテンツと混在しているため、ネットワーク・リクエスト・ブロッキングでは広告をブロックできない場合もあります。

このような事象を回避するために、BraveはCSSセレクタを使ってページ要素を非表示にする、不要なページ要素のコスメティック・フィルタリングを行います。以下の例では、CSSクラス「post」と「ad」を使用する要素をターゲットにすることで、広告要素を見つけ、ブロックすることができます。

adエレメントがマークアップで明確に特定される例

すべての要素をCSSセレクタで隠せるわけではありません。CSSは宣言的であり、コンテンツではなくページの構造に基づいてページの外観やレイアウトを制御します。このため、広告がページの他の部分と同じように見えるように作られている場合、広告と他のページ・コンテンツの違いを見分けるのが難しくなります。次の例では、(ユーザーが見たい)友人のソーシャルメディア投稿を含む要素のCSSクラス名は、(ユーザーが 見たくない )プロモーション広告要素のCSSクラス名と同じです。CSSだけでは、他の投稿も隠さずに広告をブロックすることはできず、事実上Webサイトを壊してしまうことになります。さらに、WebサイトのCSSクラス属性が自動生成され、区別されず、常に変化している場合、CSSでのマッチングは頻繁に破損を引き起こします。

dエレメントがマークアップでは明確に特定できない例

(宣言型ではなく)手続き型のコスメティック・フィルターは、非表示にする要素をターゲットにする方法を記述することで、この問題を克服します。手続き型のフィルタリングでは、「BUY THIS PRODUCTというテキストを含む要素をブロックする」というような条件を定義できます。これにより、ページ要素に対してきめ細かなマッチングが可能になります。特定の単語を含む要素や、最小限のテキストの長さを満たす要素、特定のHTMLの祖先を持つ要素をターゲットにすることができます。全体として、この手法はWeb上でブロックできる不要なコンテンツの種類を大幅に拡大します。

手続き型のコスメティックオペレーターの一覧と、どのように機能するか

なお、Braveはデフォルトでサードパーティの広告とトラッカーをブロックします。また、オプションで、ファーストパーティであっても すべての 広告をブロックするアグレッシブ・ブロック・モードも提供しています。アグレッシブモードでは、手続き型フィルタリングが特に大きな効果を発揮すると期待しています。

手続き型フィルターは待望の機能であり、実行可能な方法で実現するには様々な技術課題がありました。私たちは、皆様にその利点を実感していただけることを楽しみにしています!

Related articles

Braveで新しいWebを体験する準備はできましたか?

Braveはプライバシーとパフォーマンスを重視するWebのパイオニアからなるチームによって開発されています。Braveを利用しWebの再構築に協力していただけませんか?