広告ブロックの進化のための手続き型コスメティックフィルター
バージョン1.73より、Braveはページ要素の手続き型コスメティックフィルターのサポートを追加することで、広告ブロック機能を大幅に改善します。
この記事を読む →Braveプライバシーチーム寄稿
この記事は、Braveの新たに追加されたプライバシー機能や今後実装予定のプライバシー機能について説明する継続的なシリーズの16回目の記事です。この記事は、ソフトウェアエンジニアのAleksey KhoroshilovとシニアソフトウェアエンジニアのIvan Efremovによる作業について紹介します。この投稿は、プライバシーディレクターのPeter Snyderが執筆したものの日本語訳です。
Braveは、アンリンカブル・バウンシングと呼ばれる強力なプライバシー保護機能を実装します。この機能は、(可能性があるものも含めて)プライバシーを侵害するWebサイトを訪問しようとしたときに、そのルートを回避し、代わりに一時的なブラウザストレージを経由してWebサイトを訪れることによってプライバシーを保護します。これにより、あるサイトがユーザの訪問履歴を追跡し、各サイトの訪問履歴を結びつけることができなくなり、この内部処理以外については通常通り機能するようになります。それぞれのWebサイトの閲覧は初回訪問として表示されるため、あなたのデジタルフィンガープリントが匿名化されることに繋がります。この一時的なストレージは、あなたが疑わしいサイトから離れると削除され、サイトが将来の訪問であなたを再特定することを防ぎます。
Braveは、不正なクエリパラメータの除去、デバウンシング、バウンストラッキング・インタースティシャルとともに、バウンストラッキングに対する追加の保護としてアンリンカブル・バウンシングを使用します。この機能はBrave Nightlyでは既に有効になっており、Braveのバージョン1.37が安定版でリリースとなる際に有効となる予定です。アンリンカブル・バウンシングは、Braveが開発中の “ファーストパーティ・エフェメラルストレージ” という広範な構想の最初の使用例となります。
バウンストラッキングは、ブラウザレベルのプライバシー保護が機能しているような場合でも、トラッカーがあなたを追跡することができる方法です。プライバシーを尊重するブラウザは、あるサイトが他のサイトでのユーザの行動や活動を追跡することを防ごうとしています。バウンストラッキングは、あるサイトから別のサイトへ移動する際のブラウザの動作を変えることで、ブラウザの保護機能を回避しようとするものです。
バウンストラッキングは、閲覧の途中にトラッキング用のサイトを挿入するものです。 例えば、rabbits.exampleにいるときにturtles.exampleへのリンクをクリックすると、トラッカーは最後の瞬間にクリックしたURLを変更し、実際にはtracker.exampleに移動させているかもしれません。途中に挿入されたトラッキングサイトは、あなたがウサギやカメに興味を持っていることを学習してから、本来の目的地であるturtles.exampleにあなたを転送するのです。tracker.exampleはあなたのWebブラウジングの隙間のようなタイミングにうまく入り込むことができれば、時間とともにあなたの興味についての詳細な(しかしプライバシーを侵害する)プロファイルを構築することができます。
アンリンカブル・バウンシングは、Braveがバウンス・トラッキングに対抗するために使用する4つ目の技術です。このセクションでは、既存の機能を簡単にまとめつつ、アンリンカブル・バウンシングがそれらをどのように補完するのかを説明します。
Brave Shieldsのブロッキングレベルを積極的/強力モードにすると、Braveはバウンストラッキングの疑いのあるサイトにアクセスする前に警告を表示します。この機能により、バウンストラッキングサイトを完全に回避したい場合、ユーザはサイトの訪問を中断させることができます。ただし、これは警告を表示するのみであり、目的のサイトにアクセスする必要がある場合には、ユーザを保護することはできません。
Braveは、URLに含まれているもので既に判明しているトラッキング関連のクエリパラメータを削除しています。この技術は、Google、Microsoft、Facebookなどの企業による一般的なトラッキングスクリプトがWeb上であなたを追跡することを防ぐのに非常に効果的です。ただし、これだけでは中間的なバウンストラッキングサイトがあなたの閲覧行動を学習することは防げません。
Braveにはデバウンシング機能があり、これは途中に挿入されたバウンストラッキングサイトを訪問しようとしていることを検知すると、トラッキングサイトをスキップして目的地に直接ナビゲートするよう試みます。これが適用されている場合は非常に強力な保護機能となりますが、BraveはトラッキングサイトのドメインURLから、本来目的としているサイトを判断できないことがあります。
アンリンカブル・バウンシングは、これらの機能を補完するために、バウンストラッキングサイトが時間の経過とともにユーザに関する情報を得ることを防止します。挿入されたサイトtracker.exampleは、誰かがrabbits.exampleから来てturtles.exampleに行くことを知ることができますが、アンリンカブル・バウンシングによって、tracker.exampleは同じ人がそれぞれのサイトを訪問したと知ることができなくなります。
これら4つの保護機能を組み合わせることで、一般的なブラウザの中で最も強力にバウンス・トラッキングを防止することができるのです。
アンリンカブル・バウンシングは、次のような仕組みになっています:
Braveは、新しいURLに遷移する際、クラウドソースとBraveが作成したフィルタリストを参照し、そのURLが既知のバウンストラッキングサイト(またはその他の有害サイト)であるかどうかをチェックします。
URLがフィルターリストに存在 しない 場合は、URLの読み込みを通常通り続け、残りのステップをスキップします。
ブラウザは、表示しようとしているサイトの トラッカー/広告ブロック に関するShieldsの設定を確認します。設定が Aggressive である場合、以前のブログ記事で紹介したように、ナビゲーションを続けるかどうかの警告が表示されます。
ユーザーがデフォルト設定で トラッカー/広告をブロック している場合(または アグレッシブ 設定で続行した場合)、ブラウザはWebサイトのファーストパーティDOM保存値(Cookie、localStorageなど)を確認します。ユーザーが保存値を持っている場合、ナビゲーションは既存の保存値を使用して続行されます(つまり、アンリンカブル・バウンシングは適用されません)。移動先サイトのDOM保存値が存在しない場合、ブラウザは表示するWebサイト用に新たな一時的なブラウザ保存領域を作成します。
バウンス・トラッキングの疑いのあるサイトを離れた後すぐに (つまりそのサイトのタブを開いていない状態で)、一時的なストレージは削除され、次回バウンスされたときにサイトがユーザーを再特定することを防ぎます。
アンリンカブル・バウンシングは、私たちが開発している “ファーストパーティ・エフェメラルストレージ” と呼ばれる新たな強力な機能の最初のものです。これは、サイトを訪問しているときに限り、サイトがあなたを記憶(または識別)することを可能にする技術です。サイトを離れるたびにブラウザストレージをクリアするのと似ていますが、それよりも強力で、かつユーザフレンドリーです。
ファーストパーティ・エフェメラルストレージは、サードパーティのトラッキングに対するBraveの既存の保護機能をベースにしています。現在、Braveはサードパーティトラッキングからの保護のために、エフェメラル・サードパーティストレージという独自のシステムを使用しており、サイト上のすべてのサードパーティストレージは、それらのサードパーティが組み込まれたファーストパーティのサイトを離れると消去されます。事実上、ファーストパーティはサイトをまたいであなたを記憶することができますが(例:訪問したサイトにログインした状態を保持する)サードパーティは同じ様に記憶することができません。サードパーティの状態を管理するポリシーはBrave独自のもので、どのブラウザよりも厳しくプライバシーを保護するものです。
ファーストパーティ・エフェメラルストレージはさらに一歩進んで、ファーストパーティのサイトがあなたを再識別できないようにします。サイトが訪問する毎にあなたを識別できるのは、あなたがそれを望んだ場合のみとなるのです。これは、Webにおけるデフォルトの動作に大きな変化をもたらします。これまでブラウザは、ユーザが明示的に保存されることを拒否しなければ、すべてのサイトで記憶されることを望んでいると考えてきました。対して、Braveはデフォルトで忘れられること(つまりプライバシーを尊重すること)を実現しようと考えています。
アンリンカブル・バウンシングは、私たちのファーストパーティ・エフェメラルストレージプランの最初のアプリケーションに過ぎず、Braveのユーザとより多くの機能を共有できることを楽しみにしています。
バージョン1.73より、Braveはページ要素の手続き型コスメティックフィルターのサポートを追加することで、広告ブロック機能を大幅に改善します。
この記事を読む →iOSバージョン1.71より、Braveはユーザーの訪問を特定するブラウザデータを素早く削除する Shred(シュレッド) という新機能を搭載します。
この記事を読む →バージョン1.68から、BraveはiOSとして最初の、すべてのサイトをデフォルトでHTTPSにアップグレードするWebブラウザになります。
この記事を読む →