中国のインターネット検閲を回避する:検閲されたマイクロブログアグリゲーターを構築した方法

公開: 2022-03-11

世界的に知られているように、中国政府はインターネット上で厳格な検閲を実施しています。 一般に中国のグレートファイアウォールとして知られている中国の検閲システムは、公安省によって運営されており、正式には金盾プロジェクトと呼ばれています。 このシステムは2003年から運用されています。

New York Timesなどの政治的に機密性の高いコンテンツを通常含む国際ニュースサイト、またはFacebookやTwitterなどの検閲規則に準拠していないソーシャルメディアサイトは、通常、ブロックされており、中国のユーザーは利用できません。 これは、さまざまな高度な方法を使用して実現されます。

中国のニュースやソーシャルメディアサイトの場合、事実上すべてが政府の監視下にあります。 中国のISPとインターネットコンテンツプロバイダーは、運用を許可するために、通常、ユーザーによる公開コンテンツをブロックまたは削除するための独自のコンテンツフィルタリングメカニズムを備えています。また、政府の下で違法であると見なされた場合は、ユーザーのアカウントを直接削除することもできます。ポリシー。 これらの企業は、サーバー上に独自の検閲ソフトウェアを持っているだけでなく、自動検閲ソフトウェアでは管理できない検閲タスクを手動で処理するための特別なチームや部門を持っています。 これらのチームは、公安省の地方部門と協力して、新しい命令と方針を受け取り、通常は互いに協力しています。

国内のWeb開発者にとって、中国のインターネットの検閲は、言論の自由だけでなく、世界中からの貴重な専門家のリソースも排除します。 私の日常業務では、インターネット検閲をバイパスしてVPN経由で接続し、Gmail、Dropbox、およびその他の多くの重要なサイトを使用する必要があります。 Googleが検閲規則の遵守を継続することを拒否した後、中国でGoogleのサービスが不安定になったり、アクセスできなくなったりした2010年に、それがいかに厄介だったかを今でも覚えています。 これは、他の国の開発者にとっては信じられないことです。

新浪微博の検閲

Sina Weiboは、中国最大のマイクロブログソーシャルネットワークサイトです。 Twitterは中国のルールに準拠していないため、WeiboはユーザーをめぐってTwitterと競合する必要はありません。 ニュースは、中国の他のどのメディアよりも迅速かつ直接的にWeiboに広まります。 私のような若い世代のメンバーは、ニュースを共有したり、公開イベントについて話し合ったりするためにそれを使用するのが好きです。 しかしもちろん、中国のインターネット検閲の下では、多くのホットまたは興味深い投稿は、投稿された直後に削除されます。 政治および公開イベントの投稿は削除される可能性が最も高く、娯楽ニュースは削除される可能性が最も低くなります。 コンピューター科学者のJedCrandallとDanWallachによる2013年の調査によると、中国のマイクロブログの約12%が毎日削除されています。

6月4日のような政治的に敏感な日には、検閲されたマイクロブログの投稿が削除されることが予想されます。 最近では、ユーザーがマイクロブログを書き込もうとすると、通常、特定のデリケートな単語を入力することさえできません。

投稿が検閲されるとどのようになりますか? サイトで新しいマイクロブログを更新すると、次のようなものが表示されることがよくあります。

これは、政府の規制当局またはISPによってコンテンツが削除された中国の検閲済みマイクロブログです。

これはリツイートに相当し、元のメッセージは通常灰色のボックスに表示されます。 ボックスに「申し訳ありません。 マイクロブログは削除されました。 元の投稿は、2013年の11歳の娘の誘拐、レイプ、強制売春に対する母親による正義の嘆願でした。

2013年は、マイクロブログプラットフォームを通じて多くの政治スキャンダルが明らかになった年です。 この間、新浪微博の人気は急上昇しました。 それに応じて、政府は神経質になり、ソーシャルメディアプラットフォームでの検閲を強化し始めました。

マイクロブログの前は、政治に興味を持っていた私のような若者は、通常、プロキシサーバーまたはトンネリングサービスを使用して、国際的なWebサイトからの機密ニュースを探し出す必要がありました。 突然、比較的オープンな中国のソーシャルネットワークプラットフォームができました。 しかし、政府はすぐに介入し、それはほんの一瞬であることが判明しました。 これは本当に私を激怒させました。 私は友達と話をしましたが、私たちは皆、プラットフォームでの検閲の強化に腹を立てていました。 私の友達は、「なぜこれについて何もできないのですか?」と尋ねるでしょう。 やってみることにしました。 そこで私は、インターネット検閲を迂回して、SinaWeiboから正確にブロックまたは削除されているものを確認するためのWebサイトを構築しました。

テクニカルディスカッション

基本的に、ブロックまたは削除された中国のマイクロブログを常にスキャンして新しいWebサイトに表示するサーバーをセットアップする必要がありました。 Aliyunのような国内のクラウドサービスを利用する予定でしたが、ドメインのリダイレクトなど、プラットフォームには多くの制約があり、その価格は他のクラウドサービスよりも安くはありません。 もちろん、私の追加の懸念は、サーバーを国内に展開した場合、サーバー自体が監視下に置かれることでした。 結局、Linodeでサーバーを購入し、そのサーバーを日本に配置しました。 また、ドメインfreeweibo.meを購入して、SinaWeiboの検閲を回避し始めました。

次のグラフは、システムの全体的なアーキテクチャを示しています:MongoDB、Webサーバー、およびクローラー。 私は開発環境にNode.jsを選択しました。これは、ネットワークアプリケーションにとってより効率的でスケーラブルであり、個人的にはNode.jsの使用経験が豊富だからです。 Webサーバーは、Express.jsフレームワークを使用して開発され、WeiboAPIを使用してデータをキャプチャしました。 当初、クローラーは別のプロセスとして設計されていましたが、後で、Webサーバープロセスのモジュールとしてクローラーをバンドルするだけで、初期段階で十分であることがわかりました。

これは、中国での検閲を回避し、削除されたマイクロブログを取得するシステムのアーキテクチャです。

マイクロブログのコンテンツには、2つの主要な関心部分があります。 1つは、テキストデータとそれに関連する属性です。 もう1つは、投稿に関連する画像です。 投稿を保存するには、画像をダウンロードしてディスクにファイルとして保存します。 ブロックまたは削除されたブログの場合、これらの画像は非常に重要です。 中国では、テキストコンテンツの投稿に画像を使用することが非常に一般的で人気があります。これは、インターネット企業のサーバーでの自動テキストベースのフィルタリングと検閲では、このコンテンツをキャッチするのがはるかに難しいためです。

ブロックまたは削除された投稿を検出する基本的な考え方は、既知のユーザーリストから新しい投稿を常にスキャンし、後で投稿の可用性を再確認することです。 マイクロブログは、数分または数日以内に削除またはブロックされる可能性があります。 したがって、クローラーは2つの主要なタスクで構成されます。新しく投稿されたコンテンツをフェッチするフェッチタスクと、以前に投稿されたコンテンツが検閲されているかどうかをチェックするチェックタスクです。

最初に、Weiboのトップ100の有名ユーザーからマイクロブログをクロールするようにクローラーを構成しました。 しかし、毎日削除されたブログはほとんど検出されていないことが判明しました。 その理由は、トップユーザーのほとんどが政治的または公的に機密性の高いトピックに関心がないためです。これらの種類のマイクロブログを投稿したり転送したりすることはありません。 たとえば、1,000万人以上のフォロワーを持つ女優であるこのブロガーは、最も人気のあるユーザーの1人ですが、機密性の高いブログを投稿することはありません。

いくつかの実験と思考の結果、一貫して検閲されるユーザーを適応的に見つける手法を思いつきました。 ソーシャルメディアネットワークはトピックに相互接続されており、ユーザーは興味によってグループに集まる傾向があります。 ユーザーが公的または政治的なトピックに関心を持っている場合、他の同様のユーザーのブログを投稿または転送する可能性が高くなります。 これらの転送された投稿は、スキャンする新しいユーザーを識別するための良い方法を提供します。

たとえば、ユーザーAがすでにデータベースに存在し、クローラーがユーザーAによって再投稿された1つのブログが削除されたことを検出したとします。 ブログの元の作成者であるユーザーBがデータベースにない場合、クローラーはユーザーBを保存します。次回、クローラーが新しいブログを再スキャンするときに、ユーザーBからの新しいブログもスキャンします。スキャン可能なユーザーは、この種の社会的関心のつながりを利用することで自動的に成長します。

中国のインターネット検閲は、マイクロブログの動作を活用することで回避できます。

この方法論を利用するようにクローラーアルゴリズムを調整した後、機密性の高いブログの投稿に強い関心を持ついくつかの主要なユーザーをシードするだけで、クローラーはスキャンする新しいユーザーを自動的に検出しました。 検出された毎日の検閲されたブログの総数は、日ごとに着実に増加しました。 以下は、私のメールボックスにアーカイブされた削除済みブログのスナップショットです。

これは、ソーシャルネットワーク上の検閲された中国のマイクロブログの例です。

  • 成都の古代の城壁を破壊しなかったとして地元の役人を非難する毛沢東による歴史的な対話。
  • 現役の権利弁護士である許志永に関する投稿。 彼は多くの恵まれない人々を助け、中国で新市民運動を始めました。 彼は2014年1月に懲役刑を言い渡されました。
  • 政府の新聞人民日報への批判
  • 中国の億万長者で新公民運動の指導者である王公民の逮捕と裁判についてコメントする。
  • 社会運動に参加している活動家の逮捕への言及。

結果

中国のマイクロブログバイパスシステムのコーディングとデバッグを2週間行った後、サイトをfreeweibo.meにデプロイしました。 ただし、数週間実行した後、サーバーは新しいブログを検出しなくなりました。 調査の結果、2つの問題が見つかりました。 1つは、Weiboプラットフォームが元のAPIインターフェースを変更したことです。 もう1つは、データベース内のブログとユーザーの増加により、クローラーのAPIリクエストがレート制限(1分あたり1000)を超えていたことです。 そこで、新しいインターフェイスを採用し、1分あたりのAPIリクエスト数を減らすようにコードを調整しました。 それ以降、クローラーは安定していました。

多くの人にサイトを知らせるかどうかというジレンマに直面しました。 サイトを訪れる人が多ければ多いほど、政府によって盗聴されてブロックされるのが早くなることを私は知っていました。 だから私は友達の何人かとだけサイトを共有しました。 当初、1日あたりの訪問数は約10〜20回でした。 しかし、1か月後、ある日には訪問数が80以上に達し、数十の電子メールサブスクライバーがいました。

そして、予想通り、中国で自分のサイトがブロックされているのを見つけた朝が来ました。 それは約3ヶ月続きました。 その後サイトにアクセスするには、ユーザーはVPNトンネリングサービスを使用してサイトにアクセスする必要がありました。 これは、ほとんどの中国のインターネットユーザーにとって実用的ではありません。

しかし、その同じ日、私は安心し、別のサイトfreeweibo.comがまったく同じサービスを提供しており、私が構築したものよりも洗練されていることを知り、嬉しく思いました。 freeweibo.comプロジェクトは非常に機知に富んでいます。 ソーシャルメディアでアクティブになっており、RSSフィード、電子メールサブスクリプション、国内ユーザー向けのミラーサイトなど、コンテンツにアクセスするためのさまざまな手段を提供します。 モバイルアプリもあります! 誰がサイトを構築したかはわかりませんが、同じビジョンを共有できてうれしいです。

結論

状況からすると、私のサイトはもうあまり役に立たないことが明らかで、数ヶ月後に閉鎖しました。

結果にもかかわらず、私はプロジェクトが無駄だったようには感じません。 それどころか、それは数ヶ月しか生き残らなかったにもかかわらず、それは素晴らしい経験でした。 自分の国の現実を深く理解することができました。

中国では、インターネットビジネスを運営するには、検閲に非常に注意する必要があります。そうしないと、遅かれ早かれトラブルに巻き込まれます。 ソーシャルメディアサイトが厳格な検閲に従わず、ユーザーのプライバシーを侵害しなければ、成功する方法はほとんどありません。


アップデート

freeweibo.meのソースコードがGitHubのこちらから入手できるようになりました。 上記のように、このソースコードは同様のウェブサイトfreeweibo.comとは関係ありません。