2週間前に、児童性虐待記録物(CSAM)に対してCloudflareが取るアプローチについて書きました。当社は、まず2010年のパブリックローンチから数か月以内に、この忌まわしいコンテンツを削除する情報センターとして機能する米国を拠点とする組織、National Center for Missing and Exploited Children(NCMEC)と連携し始めました。過去9年間にわたり、当社のTrust & Safetyチームは、NCMECInterpol、世界の約60の公的機関および民間機関と協力してプログラムを設計してきました。インターネットからCSAMを削除するために行ってきた取り組みについて誇りに思っています。

ある意味では、忌まわしい事例ほど、対処しやすいと言えるかもしれません。Cloudflareは、第三者がホストしているコンテンツを削除することはできませんが、サイトがCSAMを掲載するために運営されていることが明らかになった場合、またはWebサイトの運営者とそのホストがCSAMのコンテンツを削除するために適切な措置を講じなかった場合、当該Webサイトに対するサービスを終了するための措置を講じます。Webサイトに対するサービスを終了すると、キャッシュをパージして(数秒以内に全世界に適用される)、Cloudflareのネットワークを二度と利用できないように当該Webサイトをブロックします。

困難なケースに対処する

困難なケースとしては、当社の顧客がユーザーの作成したコンテンツ(ディスカッションフォーラムなど)を掲載するサービスを提供していて、ユーザーがCSAMをアップロードした場合、ハッキングされた場合、または悪意のある従業員が顧客のサーバーにCSAMを保存している場合などがあります。れっきとした合法のサービスなのに、CSAMがWebサイトに掲載されてしまい、不意を突かれたというケースを数多く見てきました。こうしたケースでは、意図や悪意がないにもかかわらず、そのコンテンツを迅速に特定して削除する必要があります。

本日、こうした困難なケースに対処するのに役立つ措置を講じることを誇りに思っています。本日より、すべてのCloudflareの顧客は、ダッシュボードにログインし、CSAM Scanning Toolへのアクセスを有効にすることができます。CSAM Scanning Toolが開発段階から運用段階に移行するに伴い、このツールは、違法なコンテンツがないかチェックするためにCSAM Scanningを有効にしているすべてのインターネットプロパティをチェックするようになります。Cloudflareは、CSAMにフラグが立つと自動的に通知を送信し、そのコンテンツへのアクセスをブロックして(451「法的な理由で利用できません」というステータスコードを使用)、法的義務に従って当該コンテンツの適切な報告をサポートするための措置を講じます。

CSAM Scanningは、プランレベルに関係なく、すべての顧客が無料でCloudflareダッシュボードを介して利用できます。このツールは、ダッシュボードの「キャッシュ」タブにあります。このツールをすべての顧客に無料で提供することで、オンライン上のCSAMをより多く摘発・削除し、CSAMがビジネスに与え得る法的リスクおよび評判リスクから顧客を守るお手伝いができることを期待しています。

このサービスを何百万人ものユーザーに提供できるようになるまでの道のりは長いものでした。当社がどのような取り組みをしているのか、なぜ技術的観点および政策的観点から難しかったかを理解するには、CSAMを追跡する最先端の技術について知る必要があります。

類似画像を見つける

Cloudflareの立ち上げ時期であった2009年に、ダートマス大学のHany Farid教授は、NCMECが保有するハッシュのリストに照らし合わせて画像を比較できるソフトウェアの開発に取り組んでいました。Microsoft社は、Farid教授による研究成果を用いてCSAMを自動的に識別するツールPhotoDNAの開発を進めていました。

当初、Microsoft社は、PhotoDNAを社内用のサービスに使用し、2009年後半にこの技術をNCMECに寄付し、ほかの企業・団体による使用を管理できるようにしました。最初に採用したのがソーシャルネットワーク関連企業です。2011年に、不正利用報告プロセスの一環として、Facebook社はPhotoDNAを導入しました。Twitter社は2014年に取り入れました

このプロセスは、ファジーハッシュと呼ばれています。MD5、SHA1、SHA256などの従来のハッシュアルゴリズムは、任意の長さのファイル(画像や文書など)を取得し、実質上、ファイルのデジタルフィンガープリントである固定長番号を出力します。たとえば、この写真のMD5を取得すると、フィンガープリントは605c83bf1bba62e85f4f5fccc56bc128になります。

ベースイメージ

画像内の1つのピクセルをピュアホワイトからオフホワイトに変更すると、見た目は同じですが、フィンガープリントはまったく異なる42ea4fb30a440d8787477c6c37b9daedに変わります。2つのフィンガープリントを見てわかるように、画像に小さな変更を加えると、従来のハッシュの出力に予測できない大きな変更が加わります。

1つのピクセルが変更されたベースイメージ

現在見ているドキュメントが以前に見たものとまったく同じかどうかを明確に確認したいハッシングに利用するのに最適です。たとえば、電子契約に余分なゼロが追加されている場合、署名に使用されているドキュメントのハッシュを無効にしたいと思うはずです。

ファジーハッシュ

ただし、CSAMの場合、この従来のハッシュの特性はマイナスの材料となります。検出を避けるために、犯罪者はCSAMのサイズを変更する、ノイズを追加する、または同じように見えるような形で画像を変更する、といったことを行って、ハッシュを結果的にまったく違うものに変えてしまいます。

ファジーハッシュは異なる働きをします。2枚の写真がまったく同じかどうかを判断する代わりに、写真の本質を把握することを試みます。これにより、ソフトウェアは2つの画像のハッシュを計算し、2つの画像の間の「距離」を比較することができます。変更された2つの写真のファジーハッシュは依然として異なる可能性はありますが、従来のハッシュとは異なり、2つの写真を比較して画像がどのように類似しているかを確認できます。

したがって、前述の2枚の写真の場合、1つ目の画像のファジーハッシュは次のようになります。

00e308346a494a188e1042333147267a
653a16b94c33417c12b433095c318012
5612442030d1484ce82c613f4e224733
1dd84436734e4a5c6e25332e507a8218
6e3b89174e30372d

2つ目の画像のファジーハッシュは次のとおりです。

00e308346a494a188e1042333147267a
653a16b94c33417c12b433095c318012
5612442030d1484ce82c613f4e224733
1dd84436734e4a5c6e25332e507a8218
6e3b89174e30372d

2つの画像のピクセルの違いはわずかですが、ファジーハッシュは同じです。

彩度を上げ、セピアに変更し、境界線を追加してからランダムノイズを追加したベースイメージ。

ファジーハッシュは、実質的に類似した画像を識別できるように設計されています。彩度を上げ、セピアに変更し、境界線を追加してから、最後にランダムノイズを追加するという変更を犬の画像に加えました。 新しい画像のファジーハッシュは次のようになります。

00d9082d6e454a19a20b4e3034493278
614219b14838447213ad3409672e7d13
6e0e4a2033de545ce731664646284337
1ecd4038794a485d7c21233f547a7d2e
663e7c1c40363335

これは、変更されていない画像のハッシュとはまったく異なるように見えますが、ファジーハッシュは互いにどれだけ近いかを確認することで比較します。

2つの画像間の最大距離は約500万ユニットです。これら2つのファジーハッシュは、わずか4,913ユニットしか離れていないので(数値が小さいほど、画像が類似している)、実質的に同じ画像であることを示しています。

では、2枚の無関係な写真と比較してみてください。下の写真のファジーハッシュは次のとおりです。

011a0d0323102d048148c92a4773b60d
0d343c02120615010d1a47017d108b14
d36fff4561aebb2f088a891208134202
3e21ff5b594bff5eff5bff6c2bc9ff77
1755ff511d14ff5b

下の写真のファジーハッシュは次のとおりです。

062715154080356b8a52505955997751
9d221f4624000209034f1227438a8c6a
894e8b9d675a513873394a2f3d000722
781407ff475a36f9275160ff6f231eff
465a17f1224006ff

2つのハッシュ間の距離は713,061と計算されました。実験を通じて、2枚の写真が関連しているとみなす距離閾値を設定することは可能です。

ファジーハッシュの意図的なブラックボックス

どのような仕組みなのでしょうか?ファジーハッシュに関する多くの情報が公開されていますが、プロセスの内部構造は意図的に少し隠しています。最近ニューヨーク・タイムズ紙は、そうした技術の仕組みについて最も公然と論じる記事を掲載しました。問題として指摘されたのは、CSAMを制作したり配信したりする犯罪者がそうしたツールの仕組みを正確に理解していることと、検出を回避するために画像を変更する方法を編み出せる可能性があることです。誤解のないように言いますと、Cloudflareは、当社の安全なポイントオブプレゼンス内からWebサイト運営者に代わってCSAM Screening Toolを実行します。ユーザーに直接ソフトウェアを配布することはしません。プラットフォームの潜在的な悪用に対して引き続き警戒し、必要に応じて、迅速な行動を取ります。

偽陰性と偽陽性のトレードオフ

当社は、この機能を顧客に提供する最良の方法を見極めるために、多くの規制当局と連携してきました。Cloudflareのように多様な顧客層を持つネットワークにとっての課題の1つは、ファジーハッシュの比較距離を設定するための適切なしきい値を見極めることです。

しきい値が厳しすぎる場合(つまり、従来のハッシュに近く、2つの画像が一致として認識されるには実質的に同一である必要がある場合)、多くの偽陰性(フラグが立たないCSAM)が多くなる可能性が高くなります。しきい値が緩すぎる場合は、多くが偽陽性となる可能性が高くなります。偽陽性の方が悪くないように思えますが、偽陽性が大幅に増える可能性があると、限られたリソースを浪費し、既存のエコシステムを圧倒する恐れがあります。 CSAM Scanning Toolを繰り返し適用して、エコシステムの継続的な有効性をサポートする一方で、Webサイト所有者をより細かく制御できるようにしていきます。本日の無料提供を通じて、エコシステムのリソースを圧倒することなく、より迅速にCSAMにフラグを立てることができるようにする最初のオプションを、顧客に対して提供できると確信しています。

顧客ごとに異なるしきい値

きめ細かいアプローチをしたいという願望は、当社の顧客との対話にも反映されています。適切と思われるしきい値を顧客に尋ねたところ、事業の種類、既存の不正利用報告プロセスの高度さ、およびCSAMがウェブサイトに掲載されるリスクについての露出度と許容度によって、答えは大きく異なりました。

たとえば、高度な不正利用報告チームを持つ、Cloudflareを使用している成熟したソーシャルネットワーク企業は、しきい値をかなり緩く設定することを望むものの、フラグが立ったものを手動でレビューする人的資源があるため、記録物を自動的にブロックすることはしたくありません。

新米両親向けフォーラムを提供することに特化した新しいスタートアップ企業は、しきい値をかなり緩く設定し、しきい値を超えたものは自動的にブロックしたいと思うでしょう(たとえ一部が偽陽性になったとしてもです)。それは、高度な不正利用報告チームをまだ確立してなくて、CSAMが掲載された場合にブランドが傷つく危険性が非常に高いためです。

商業銀行は、ユーザーが作成したコンテンツを保持する可能性は低く、偽陽性に対する許容度が低いため、しきい値をかなり厳しく設定したいと思うでしょう。ただし、システムが既知のホストのCSAMによって侵害された場合はただちに阻止したいため、検出されたものを自動的にブロックするようにするはずです。

管轄区域ごとに異なる要件

また、顧客の所在地や顧客に適用される法規制に関係する問題がある場合もあります。顧客の事業拠点とユーザーのいる場所によっては、1つ、複数、または利用可能なさまざまなハッシュリストを使用する場合があります。

言い換えれば、どんな場合にも通用する画一的な方法はないのです。理想的には、個々のサイト所有者が特定のサイトにとって最も妥当と思われるパラメーターを設定できるようにすることの方が、すべての顧客に対して1つのグローバルスタンダードを確立するよりも、偽陰性率を低くする(より多くのCSAMにフラグが立つ)ことができると思っています。

時間をかけてツールを改善する

ゆくゆくは、顧客のCSAMスクリーニングを改善できることを願っています。全世界にユーザーを持つ顧客のために多数のグローバルエージェンシーからの追加のハッシュリストを加える予定です。この忌まわしい犯罪と戦うために確立されたエコシステムに過度の負担をかけずに、この柔軟性を確保できるよう努力しています。

最後に、当社には次世代のファジーハッシュの構築を支援する機会があるかもしれないと考えています。たとえば、ソフトウェアのスキャン対象は、ストリーミングするイメージではなく、コンピューター上のメモリに残っているイメージのみです。現在、当社はカリフォルニア大学バークレー校で教鞭をとる元ダートマス大学教授のHany Farid氏と、投稿される前に画像にフラグを付ける、より柔軟なファジーハッシュシステムを構築する方法について話し合っています。

懸念と責任

CSAMスキャンの提供を検討し始めたときに自問した質問の1つは、そもそも当社がこうしたことに取り組むべきかどうかということでした。当社は、子どもに対するおぞましい虐待を映した画像の配信についての全世界の懸念を共有しています。決してインターネット上に存在してはならないものだと思っていますが、Cloudflareはコンテンツプラットフォームではなく、ネットワークインフラストラクチャプロバイダーです。

しかし、当社にはこの領域にて果たすべき重要な役割があると考えました。基本的に、Cloudflareは、かつてはインターネットの巨人だけが利用していたツールを当社の200万人以上の顧客に提供しています。セキュリティ、パフォーマンス、信頼性を高める、当社が提供するサービス(無料の場合が多い)は、もし当社が存在していなかったら、非常に高価なものか、FacebookやGoogleのようなインターネットの巨人に限定されたものになっていたでしょう。

今日、FacebookやGoogleと競い合える次世代のインターネットの巨人の育成に取り組んでいるスタートアップ企業があるのは、Cloudflareを使用して高速で安全かつ信頼できるインターネット接続を確立できるからです。しかし、CSAMのような非常に困難な問題への対処が迫られる規制上のハードルが高まっているため、そうした多くのスタートアップ企業は、CSAMを積極的にスキャンする高度なツールにアクセスできません。こうしたツールへのアクセスを供与する「クラブ」に入るためには巨大企業になる必要があります。厄介なことに、巨大企業になる前提条件が「クラブ」に入っていることなのです。

インターネットの巨人に対抗できる企業を増やすには、こうしたツールをより小規模な企業が利用できるようにする必要があります。その観点から言えば、当社がCSAMとの戦いでこの強力なツールをすべての人が使えるようにすることは完全に理にかなっていると思います。

これにより、顧客が各自のコミュニティに適した、より高度なコンテンツモデレーションチームを構築し、しっかりとした方法で今日のインターネットの巨人と競い合うために規模を拡大できることを願っています。このことは、より良いインターネット環境の構築をサポートするという当社の目標と直結していて、このサービスをすべての顧客に無料で提供することを発表した理由でもあります。