Help Bellingcat Build Tools For Open Source Investigators!
オープンソースの調査は、人間の研究者のスキルと努力に依存しています。これは今後も変わりません。しかし、ツールを使えば、調査のプロセスを大幅に楽にすることができます。
私たちBellingcatは、他の多くの調査機関やオープンソース愛好家と同様、主に無料で利用できるツールに依存しています。これは、多くの有料ツールにアクセスするために必要な予算がないためで、私たちは非営利団体です。しかし、それだけでなく、私たちはオープンソースソフトウェアの考え方を信じています。
私たちは、あらゆる分野のデジタル研究者が、オープンソースの調査を行うための方法やツールを自由に使えるようにしたいと考えています。そのために、私たちはウェブサイトで無料の調査ガイドやリソースリストを公開しています。また、Bellingcat Githubを立ち上げました。ここでは、Bellingcatの調査技術チームが開発・使用するツールの多くを、オープンソースプロジェクトとして公開しています。
また、これらのツールを公開するだけでなく、オープンソースソフトウェアの経験者やオープンソース調査の愛好家からの投稿や共同研究も受け付けています。
支援の方法
Bellingcat Githubにあるツールをご覧いただき、より良いものにするためにご協力ください。オープンクエスチョンのリストを読んで、オープンソース調査員に関連する技術的課題に取り組んでみてください。
例えば、大学のコンピュータサイエンス学科を率いる方や、技術系の研究機関にお勤めの方で、ツール開発のコラボレーションの具体的なアイデアをお持ちの方(ソフトウェアはオープンソースであることが条件です)は、こちらからお気軽にご連絡ください。
同じことが、自分の仕事のために特定のツールを必要としているすべてのオープンソース調査員にも当てはまります。ここでアイデアを提出していただき、そのツールの開発が実現可能と思われる場合には、技術チャレンジのリストに加えさせていただきます。また、直接「プルリクエスト」を提出することもできます。もしかしたら、親切なソフトウェア開発者がそれを拾ってくれるかもしれません。
Githubツールの使用、テスト、改善
私たちのGithubにあるツールのリストは、時間とともに増えていきます。現在、私たちの小さなコレクションには、Instagramの「ロケーション」を見つけるためのツール、Google Sheets用の自動ビデオアーカイバ、曇った衛星画像の中から雲のない小さな小領域を見つけるためのGoogle Earth Engineアプリケーションなどがあります。
皆さまのご協力により、これらのツールが改善され、さらに追加されていくことを期待しています。これらのプロジェクトの多くは、すでにGithubのIssuesページに改善提案が掲載されており、コミュニティへの貢献に最適なハイライトされた課題も含まれています。
ここでは、Githubに掲載されているツールのうち、あなたが開発に貢献できるものについてご紹介します。
instagram-location-searchインスタグラムは、公共の場での共有とジオタグの両方が社会的な規範となっている点で、現代のソーシャルメディアの中ではややユニークな存在です。しかし、写真は特定の座標で検索できるわけではなく、Instagramの「場所」に関連付けられています。Instagramでは、これらの場所を緯度と経度の座標で検索したり発見したりする方法は提供されておらず、都市名や場所の名前でしか検索できません。例えば、アムステルダム中央駅からのインスタグラムの投稿を見つけるのは簡単ですが、近くの他の場所で撮影された写真を見つけるのは、探しているもの(および関連するインスタグラムの地名)がはっきりしていない限り、簡単な方法ではありません。
しかし、モバイルのInstagramアプリは、特定のInstagramの場所の近くにある場所を見つけるプライベートAPI(Application Programming Interface)にアクセスし、新しい写真の場所を選択する際に使用されます。Bellingcatは、このAPIを利用して、Instagramの場所を見つけるためのツールを開発しました。
telegram-phone-number-checker
Telegram電話番号チェッカーは、研究者が特定の電話番号または電話番号のリストがTelegramでのアカウント作成に使用されたかどうかを調べたい場合に便利です。
電話番号を調べるために、このツールはTelegram APIを使用し、「API_ID」と「API_HASH」を必要とします。電話番号がTelegramのユーザー名に関連付けられている場合、このツールは接続されているユーザー名を提供します。テレグラムではユーザー名は必須ではないので、特定の電話番号でテレグラムのアカウントが作成されているかどうかを単純に検出することもできます。
auto-archiveryoutube-dlとGoogle Sheetsを組み合わせて、ソーシャルメディアからの動画をアーカイブするためのコラボレーションインターフェースを作るツールです。これはPythonスクリプトで、定期的に(cronで)実行すると、以下のようになります。
- Download recognised videos from URLs in a Google Sheet.
- Upload these videos to a cloud storage location that is compatible with Amazon Web Service’s S3 protocol, such as S3 itself or Digital Ocean Spaces.
- Update the sheet with metadata that might be useful for organisation and retrieval.
このツールは、2021年のアメリカ大統領就任式のソーシャルメディアの画像を扱うためにBellingcatが開発したものですが、他のさまざまな場面でも活用できると考えています。
ほとんどのメタデータはyoutube-dlによって直接提供されますが、このスクリプトは、ビデオ処理用のオープンソースツールであるffmpegを使ってビデオフォーマットを変換し、メタデータを抽出することもできます。これを利用してサムネイルを生成し、画像としてGoogleシートに直接挿入することができます。また、動画の内容を一目で確認できる動画「コンタクトシート」用のサムネイルを定期的に生成することもできます。
オートアーカイバの機能を拡張し、新しいユーザーや技術者ではないユーザーが簡単に使えるようにする機会がいくつかあります。Githubのドキュメントにガイドや例を追加することは、アプリケーションの使用をより簡単にする重要な追加となります。また、Google Sheets Appのような他のアプリケーション形式があれば、セットアップの一部が簡単になるかもしれません。しかし、youtube-dlを実行するためにはリモートコンピュータが必要であり、アーカイブされたビデオをアップロードするための場所が必要であるため、サーバーのセットアップが必要になると思われます。
tiktok-timestampこのツールは、Tiktok の動画から正確なアップロードの日付を抽出するための極めてシンプルなヘルパーです。ソース コードでは、CORS ヘッダーを提供していない Web サイトへのリクエストを実行する方法と、シンプルなクライアント サイド ツールを Github ページでホストする方法を示しています。
cloud-free-subregionこれは、Sentinel-2の衛星画像の中から、特定の地域に雲がないものを探し出すGoogle Earth Engineのアプリケーションです。センチネル2は、欧州宇宙機関が運用する地球観測衛星で、週に2回程度、地表のほとんどの場所の中解像度(1ピクセルあたり10メートル)の可視・赤外画像を撮影しています。この画像は、オープンソースの調査員にとって非常に有用であり、最近のBellingcatの記事では、イラクの環境汚染の理解や、エチオピアのティグライでのドローンによる戦争の主張の分析に使用されています。
このツールは、Google Earth EngineやSentinel Hubでデフォルトで提供されているように、Sentinel-2が画像全体で測定したときに大きな雲を定期的に詳細に表示する赤道地域で特に役立ちます。しかし、これらの画像の中には、関心のある特定の小さな領域で晴れているものもあります。このアプリケーションは、そのような画像を見つけるのに役立ちます。
さらに、月ごとに1枚の画像のみを含むように画像コレクションをフィルタリングすることで、多数の画像を含む大規模な時間範囲を整理するプロセスを簡素化します。また、コントラスト調整や近赤外のフォールスカラーオプションもあり、植物の視覚化にも役立ちます。
Google Earth Engineのアプリケーションとして直接アクセスすることができます。