一つのコードが中国のインターネットを変えた | Shadowsocksに纏わるストーリー

Shadowsocks
Shadowsocksというクライアントを知っているだろうか?

海外の情報が欲しい中国人, 取り分けアニメオタクには欠かせないクライアントで、ITに携わる人もネット事情に詳しい人もみんなShadowsocks使っている。VPNよりもコストが安く、自分でサーバーを立ち上げるのも容易だ。

このクライアントを作成した1人の中国人のストーリーはなかなか興味深い。

Clowwindy

Clowwindyはいわゆる中国のインターネット成長時代の申し子だ。いわゆる日本で言うオタク、それもかなりマニアックな部類に入るだろう。

どういう経緯でプログラミングをするようになったのかは分からないが、彼はv2ex上で一つのプロトコルを公開する。それShadowsocksだ。

当時SSHトンネルでGFWを迂回する方法が主流だったが、大幅なパケットロスや、GFWの進化に伴ないあまり有効ではなくなっていた。

そこでClowwindyは1年以上の歳月をかけてShadowsocksを自分の手で開発した。このプロトコルはjsonをベースとしていて使いやすい事、パケットロスも非常に少なくGFWをすり抜けるのに高い効果性を示した為瞬く間にv2ex上でホットなプロトコルになった。

その後様々なプラットフォームでクライアントアプリが開発されたり、Shadowsocksを専門に扱うプロバイダーが出てきた為に凄い速さで普及し始めた。

中国当局の取締り

中国当局は黙ってその状況を見逃すはずがない。

特にVPNのようなネットワークトラフィックに関する技術に関してかなり注視している。実際に2015年頃から海外のVPNプロバイダーのIPがブロックされるようになって来た。

そのきっかけの一つが「翻墙(壁越え)」と呼ばれるGFWを迂回する技術に警鈴を鳴らした記事が掲載された事だ。

参照红旗文稿:敌对势力千方百计研究翻墙技术推广

その記事が掲載された当りから当局のGFWを迂回する技術に対する取締りが急激に厳しくなっていく。

2013年末頃からShadowsocksユーザーが急激に増加し始めた為、当局の注意を逃れる事が出来なくなってきた。

そして、当局は遂にShadowsocksのソース元を掲載していたv2exに辿り着く。その後間もなくして、v2exは中国から見れなくなり、v2exというキーワードもブラックリスト化された。

しかし依然としてShadowsocksの開発は進められており、Github上に公開され多くのユーザーが自分でShadowsocksサーバーを構築して世界のインターネットと繋がっていた。

アフタヌーンティー事件

ここで事件が起きる。

2015年8月20日

ShadowsocksRの開発者@breakwa11にコメントした後に、Github上でこんなコメントを残す。

Two days ago the police came to me and wanted me to stop working on this. Today they asked me to delete all the code from GitHub. I have no choice but to obey.
I hope one day I’ll live in a country where I have freedom to write any code I like without fearing.
I believe you guys will make great stuff with Network Extensions.
Cheers!

当局から開発を止めるように圧力を受け、Github上の開発データを削除するようにと。従うしか無かったと発言。その後v2ex上のShadowsocksのコメント欄が閲覧不能に。

Clowwindyが公開していたコードの保存先が閉鎖され、それに関する情報も全て削除される。

2015年8月21日

Clowwindyが当局からお茶に誘われたとコメント。

I was invited for some tea yesterday. I won’t be able to continue developing this project.

これをきっかけにTwitterのアカウントは閲覧出来ない状況に。

2015年8月21日夜

本人が無事である事と感謝のコメント。

感谢你为我们所做的一切。祝安好。

2015年8月22日

Twitter上で、もう二度とShadowsocksの開発に参加しない声明文を発表し、Github上の全てのShadowsocksのコードを削除。

声明:本人不在参与Shadowsocks得开发。(完)

その数日後にShadowsocksのコードを公開していたGithubは中国から幾つかのソースファイルを削除するよう依頼を受けるが拒否。その直後に国家レベルのDDoS攻撃を受けたと公表する。

インターネット自由化への貢献

このようにして1人の中国人が書いたコードに当局は脅威を感じ強硬手段に打って出た。

現在のGFWでShadowsocksを防ぎきれない事、誰でも簡単にサーバーを構築出来る事などの理由で当局がShadowsocksに大きな脅威を感じたと推測出来る。

このClowwindyが開発した一つのプロトコルは今や中国で最も普及している「翻墙(壁越え)」手段になった。このプロトコルは他のインターネット規制のある国、イランやロシアでも有効だ。現在イランやトルコ等の中東諸国ではVPNによりもホットなプロトコルになりつつある。

僕的にはClowwindyは近年のインターネット自由化に最も貢献した人物の1人だと思う。

Shadowsocksのその後

当局はShadowsocksを抹消できなかった。

既にかなりのバックアップが取られていたため、すぐに復元され今も開発が進められている。現在はShadowsocksと、ShadowsocksRの2つの方向で開発されており、ShadowsocksRはオリジナルになかった様々な機能を搭載している。

そうそう、ShadowsocksRは@breakwa11によって開発が進められているが、彼もまたインターネットの自由化に貢献している人物の1人だ。

Shadowsocksはサーバーネットワークの良し悪しに激しく依存するので、中国からだとCN2と呼ばれるChinaTelecom直通のサーバーを使用しないと速度が出ない。

Shadowsocksを使ってみたい人はUCSSがおすすめ。CN2サーバーは勿論だが、日本語にも対応している。

2017年7月28日 追記

SSとSSRの開発者であるbreakwa11が何者かに脅されてSSRの開発を中止しました。既にGithub上のデータが削除されTwitterも非公開になっています。

2018年4月18日 追記

GoogleのJigsawプロジェクトでShadowsocksが採用された。今や世界が認めたプロトコルの一つになった感がある。

2021年05月20日 追記

Shadowsocksを礎に現在ではVmess, VlessやTrojanと言った派生クライアントが次々と生まれている。