株式会社ホコサキ

金子勇と「47氏」——Winnyが問い続ける開発者の責任

天京祐輔
天京祐輔
金子勇と「47氏」——Winnyが問い続ける開発者の責任

2002年の春、2ちゃんねるのダウンロードソフト板に奇妙な書き込みが現れた。名前欄は「47」。ソフトのベータ版を公開したので試してほしい、という内容だった。そのソフトがWinnyだった。

そこから10年余りで、一人のプログラマーは世界規模のP2Pネットワークを生み出し、前例のない刑事裁判を闘い、無罪を勝ち取り、そして43歳で急逝した。金子勇という人物を、エンジニアとして改めて正面から見ておきたい。

「47氏」という奇妙な登場の仕方

金子勇は1970年生まれ、栃木県出身だ。茨城大学工学部情報工学科に入学し、同大学院の博士課程を修了して博士(工学)を取得。卒業後は日本原子力研究所(現・日本原子力研究開発機構)で地球シミュレータ向けソフトウェアの研究開発に携わり、その後、東京大学大学院情報理工学系研究科の助手に就いた。どう見ても、正統派の研究者キャリアだ。

その人物が2001年、Winnyの開発を始める。きっかけとして語られるのは、原子力研究所でコンピュータ・クラスターや分散コンピューティングに関わった経験だ。そして重要な事実がある。ネットワークは金子の専門分野ではなかった。専門はオペレーティングシステムとシミュレーション環境。それでも彼は作った。

2002年5月6日、ベータ版が2ちゃんねるのダウンロードソフト板に公開された。書き込んだのは「47」というハンドルネームの人物。後に「47氏」と呼ばれるようになるこの人物が金子勇本人だったことは、当時のユーザーたちも薄々感じていたようだが、確認する術はなかった。

ソフトの名前自体には由来がある。当時流行していたファイル共有ソフトWinMXの「MX」というアルファベットをそれぞれ1文字ずつ進めると「NY」になる。WinNY、つまりWinnyだ。「WinMXの後継を目指す」という意志がソフト名に込められていたことは、Winny事件のWikipediaにも記録されている通りだ。ハンドルネーム「47」の由来については、確認できる記録がない。

開発スタイルが異様だった。47氏は掲示板でユーザーと直接対話しながら、フィードバックをリアルタイムで取り込んでバージョンを更新し続けた。今でいえばオープンソースのissueトラッカーとリリースサイクルを、2ちゃんねるというカオスな場所で即興でやっていたようなものだ。

弁護士の壇俊光氏は著書の中で「たったひとり、1カ月であのWinnyをつくった。つくり方も凄かった」と記している。WIRED誌のインタビューでは関係者が「いまどきのITコンシューマライゼーション(消費者主導型IT)を、グーグルより先にやったのが金子なんです」と評している。それが2002年の話だ。

Winnyの設計思想——なぜあれほど「消えない」ネットワークだったのか

当時のインターネットは基本的にサーバー・クライアントモデルだった。サービスを提供する中心(サーバー)があり、ユーザー(クライアント)がそこにアクセスする。中心を落とせばサービスは止まる、という構造だ。Winnyはその構造を根本から否定した。

技術的な特徴を整理すると、次の3点に集約される。

  • ピュアP2P: ファイルの検索も転送も、すべてノード間で完結する。中央サーバーが存在しない
  • 中継キャッシュ転送: ファイルの実体は送信元から受信先へ直接届くのではなく、複数の中間ノードを経由して中継される。どのノードが実際のファイルを持っているか、外部からは追跡しにくい
  • 通信の暗号化: ノード間の通信を暗号化することで、第三者による内容の傍受を困難にした

この中継キャッシュの仕組みが特に巧妙だった。概念的に図示するとこうなる。

# Winnyの中継転送の概念図

# ノードAがファイルを持っている
# ノードDがそのファイルを欲しがっている
# 直接通信はしない——B, Cを経由して中継される

NodeA (ファイル保持)
  └─ キャッシュの断片を NodeB へ転送
        └─ NodeB が NodeC へ中継
              └─ NodeC が NodeD へ中継
                    └─ NodeD (受信完了)

# 外部からNodeDの通信を観測しても、
# 実際のファイル保持者NodeAを特定するのは困難
# ネットワーク全体に「どこにも中心がない」

この設計が意味するのは、「ネットワークを止めるには、参加している全ノードを止めるしかない」ということだ。サーバーを一台落とせば終わりのサービスとは根本的に異なる。

金子が目指したのは、どこにも中心がなく、誰かが止めようとしても止まらないネットワークだった。コンテンツの流通を特定の企業やサーバーが管理・制御するのではなく、ネットワーク参加者全員が対等に分散して担う——そういう思想が設計に宿っていた。今日のブロックチェーンや分散型Webの議論と地続きの発想が、2001年の日本の研究者の頭の中にあったわけだ。

WinnyはC++で書かれていた。ネットワークが専門外だったはずの人間が、これほど精緻な分散システムを独力で設計した。「10年に一人の天才」という評価が誇張でないことは、コードを見た同業者なら直感的に分かるはずだ。

逮捕、そして7年半——「開発者責任」という前例なき問い

2003年11月、Winnyを使って著作権侵害を行っていたユーザー2名が京都府警に逮捕された。その数ヶ月後、2004年5月、京都府警は金子勇本人を「著作権法違反幇助」の疑いで逮捕した。

ツールを作った人間が、そのツールを悪用した他人の行為の「幇助」として立件されたのだ。ソフトウェア開発者がユーザーの違法行為の共犯として刑事訴追されたのは、日本で初めてのケースだった。

裁判は3つの段階を経た。

審級裁判所判断要旨
一審京都地裁2006年有罪(罰金150万円)Winnyが著作権侵害に広く使われていることを認識しながら提供し続けたことが幇助にあたる
二審大阪高裁2009年無罪(逆転)幇助が成立するには「主要な用途として違法行為を勧める形で提供」していることが必要。金子はこれにあたらない
上告審最高裁2011年12月無罪確定(上告棄却)大阪高裁の判断を支持。金子の無罪が確定

逮捕から無罪確定まで、7年半。その間、金子は起訴されたまま東大助手の職を失い、社会的な制約の中で過ごした。

無罪確定の日、金子は記者会見でこう述べた。「私は、今回の事件で開発を躊躇する多くの技術者のために訴訟活動をしてきました。今回の決定で、私の開発態度が正しく認められたことをありがたいと思っています」。

この言葉は重い。彼は自分の無罪のためだけに闘っていたのではなかった、と言っている。実際、Winny事件がエンジニアコミュニティに与えた萎縮効果は大きかった。日本のP2P研究が事件以降に停滞したという指摘は、当時の研究者たちから繰り返し語られている。「面白い技術を作ると逮捕されるかもしれない」という空気が、確かにあの時代の日本の技術コミュニティに漂っていた。

大阪高裁が示した基準——「ソフトの主要な用途として違法行為を勧める形で提供していること」が幇助の要件——は、現代のOSS開発者にとっても他人事ではない。セキュリティツール、ネットワーク解析ツール、あるいはAIモデルの公開。どれも「悪用できる」という理由で開発者の責任を問われる可能性を内包している。金子の裁判が切り開いた法的基準は、今もエンジニアが技術を公開するたびに静かに機能している。

逮捕後も止まらなかった男、そして43歳での急逝

起訴中も、金子は開発を止めなかった。

SkeedCastというP2P型コンテンツ配信基盤の開発に取り組んでいた。Winnyとは異なり、合法的なコンテンツ配信を目的としたプラットフォームだ。裁判の重圧の中で、それでも次の技術を作り続けた。開発が彼にとって何だったかを、この事実が雄弁に語っている。

2011年12月、最高裁が無罪を確定させた。翌2012年、金子は東京大学の特任講師として職に復帰した。ようやく、という言葉しか浮かばない。7年半を経て、彼はもう一度、正式なポジションで技術の世界に戻ってきた。

しかしその半年後、2013年7月6日、金子勇は急性心筋梗塞で急逝した。43歳だった。

死後、WinnyのソースコードがGitHubで公開された。C++で書かれたコードベースは、当時の設計の片鱗を今も確認できる形で残っている。実際のリポジトリはkaneko-isamu/winnyで参照できる。

弁護士の壇俊光氏はこう言った。「ひとつの技術を潰すより、ひとりの才能を潰したことの方が罪深い」と。コードは今も読める。設計の意図も、ある程度は読み取れる。それが金子の残した遺産だ。

「作ること」はどこまで責任を負うか

最高裁が示した判断の核心は、シンプルだ。「適法・違法両用途に使えるソフトを提供しただけでは幇助にならない」。悪用される可能性があるツールを作ったこと自体は、犯罪ではない。悪用を積極的に誘導・推奨した場合に初めて、開発者の責任が問われる。

この基準は、現代のエンジニアが毎日直面している問いと地続きだ。ペネトレーションテストツールを公開するセキュリティエンジニア。誰でも使えるLLMのAPIラッパーをOSSとして出すエンジニア。スクレイピングライブラリを公開するエンジニア。どのツールも「悪用できる」。では、作った人間はどこまで責任を負うのか。

Winny事件の法的な答えは「主要な用途として違法行為を勧める形で提供していなければ、責任は問われない」だ。しかしこれは法的な決着であって、倫理的・社会的な問いへの答えではない。金子自身も、日経ビジネスのインタビューで「悪用も開発者の責任とは」という問いに正面から向き合っている。彼は最後まで、その問いを抱えながら開発を続けた。

「47氏」として匿名で2ちゃんねるに現れ、ユーザーと対話しながらWinnyを育て、逮捕されて実名で法廷に立ち、7年半を経て実名で無罪を勝ち取った。その軌跡を一本の線で繋ぐと、一人のエンジニアが「作ること」への信念を最後まで手放さなかった話になる。

技術を作る行為そのものを罪とすることはできない——金子が闘ったのはその一点だった。彼が43歳で逝かなければ何を作っただろうか。その問いに答えはないが、彼が勝ち取った判決は今もその問いの地平を定義し続けている。


株式会社ホコサキは、山口県宇部を拠点にWeb制作・業務システム開発・AI活用支援・DX推進に取り組んでいます。技術の可能性と社会的責任の両面を意識しながら、エンジニアリングで地域と企業の課題に向き合っています。お問い合わせはこちらからどうぞ。