圏外からのWeb未来観測

第5回 Winnyの向こうにあった未来

この記事を読むのに必要な時間:およそ 4.5 分

Winnyは,日本では誰でも知っている一番有名なソフトウェアの一つと言ってよいでしょう。しかし同時に,その本当の姿を知る人はほとんどいないとも言えます。

Webのここ10年の歴史を見ても,本当に画期的なソフトウェアやサービスは,有用性と同時に,例外なく多くの問題点を含んでいます。利用者が拡大し定着する過程においては,一時的に問題点が拡大し,批判を集めたものも多くあります。その問題点を継続的な努力で解決し続けることによって,社会に受け入れられてきています。

Winnyにおいては,開発者の金子勇さんが逮捕されたことで,そのプロセスが強制的に中断されてしまいました。その結果,多くの社会的問題を生んでしまったことは,みなさんもよく知っていると思います。

金子さんは,2009年10月大阪高裁の二審で無罪の判決を受け,最高裁での決着を待っています。今回は,その金子さんに,Winnyが本当は何を目指していたのか,途切れてしまった道の向こうには何があったのかをお聞きしました。

画像

(撮影:平野正樹)

クラウドコンピューティングとP2P

中島:P2Pって,最近はやりのクラウドコンピューティングに通じるところがあると思うんですが。

金子:それはありますね。私が顧問として参加しているドリームボート社のSkeedCastという製品でも,クラウドという言葉を売りにしていこうと思っています。元になっているのはWinnyのP2Pネットワークなんですが,サーバ専用のノードも含むハイブリッドなネットワーク構成を取れるようになっています。

中島:Winnyが出たとき,日本は本当はP2P=クラウドの先進国だったんですよね。あれがそのまま続いていたら,今ごろ,どうなってただろうかと。ひょっとしたら,WinnyのネットワークがGoogleに対抗できるものに育っていたんじゃないかと。

金子:そこまでのものかはわかりませんが,Winnyの技術は止まったわけでも死んだわけでもありません。SkeedCast に引き継がれて進化していますので,まだまだいろいろなことができると思います。

中島:クラウドの問題は,本来インフラというのは公共的なものであるべきなのに,サーバを特定の私企業が独占的に管理しているということだと思います。P2Pは,それとは違う形の,もっとゆるやかな民主主義的な管理を行える可能性があると思うのですが,それがSkeedCastでは実現されているのでしょうか?

金子:大規模ネットワークも人間の社会と似た歴史をたどって進化していくと思います。混沌の中に秩序を与えようとすると,最初は中央集権的な独裁で,その次は,権限を部分的に委譲していくツリー構造の管理体系になりますよね。SkeedCastはそうなっています。

SkeedCastのアーキテクチャ

中島:DNSDomain Name Systemみたいな感じになるということですか?

金子:そうです。ドリームボートがルートになって,インフラを運用する事業者さんにコンテンツを承認する権利を委譲します。その事業者さんが,個々のアカウントを承認するという方法で,承認されたコンテンツ以外は流れないようになっています。

中島:流れるデータに全部電子署名が付いているということですか?

金子:そうです。

P2Pで難しいのは,消されたはずのファイルを持っている人が自由に離脱してまた戻ってくるわけです。すると,消えたはずのファイルがネットワークに復活してしまいます。ですから実はブラックリスト方式だけでは,ネットワークの管理って難しいわけですよ。そこでホワイトリストという考え方を使って,問題があるものを列挙するんじゃなくて,問題がないものだけを列挙します。

つまり,コンテンツ配信者の方に鍵ファイルを持っていただいて,配信する前に署名していただくようになっています。そして,その問題ない鍵一覧が署名リストという形になっているわけですが,このリストに対して管理者側で鍵をかけます。管理者さんが,⁠あ,この鍵はまずい」ってときは,ホワイトリストから外していけば,コンテンツは全部消えていくメカニズムです。そんなに難しいメカニズムではないんですけど,特許を取っています。

この他に,悪意があってやってるわけじゃないけど,たまたま間違って流しちゃったっていうときに,その人のアカウント抹消はやりすぎですので,緊急的に「今すぐこのファイルは消してほしい」っていうのは,ブラックリストとしてみんなで共有できるようになっています。

中島:メインのターゲットは,事業者によるコンテンツ配信ですか?

金子:それもありますが,完全なB2Bというか閉じた社内ネットワークで,効率的にファイル共有をしたいというニーズもかなりあります。そういうケースでは,ドリームボートが運用しているインターネット上のネットワークとは切り離して,SkeedCastのアーキテクチャイントラネットの中で完全に独立した別のネットワークとして運用されている場合もあります。

中島:そういう大規模なファイル共有なりファイル配信では,Winnyの効率性が活かされているということでしょうか?

金子:そうです。それと,普通のファイル転送だと,ファイルが壊れないことを保証できないじゃないですか。Winnyではファイルがいろんなところを行き来する形でコピーされていくわけですから,途中で壊れてしまったときにそれに気づかないと,どんどんファイルが壊れていってしまいます。それを防ぐために,たとえばブロック単位でハッシュ値チェックして,なおかつファイル全体のハッシュ値もチェックするなど,ファイルの破損に関してはかなりうるさい設計になってます。SkeedCastは,このWinnyのプロトコルをベースとしています。ブロック単位で効率の良い転送をしつつファイルの破損がないという特徴があるので,そのまま社内ネットワークでも使えると思います。

中島:Winnyというとすぐに,ウィルスによる情報流出の問題や匿名性の問題がクローズアップされて,P2Pという技術自体が悪いもののように言われてしまいますが,たいへんな誤解ですよね。

金子:かなりあるというか,まぁマスコミに扱われてしまっているからっていうのもありますけどもね。技術者さんはあまり間違った方向にはとられないです。

そもそも匿名性という点では,Free Net注1という前例があります。私がWinnyでやろうとしたのは,匿名性と効率性の両立です。匿名性とは,技術的に言えば,データの発信元の確率分布がノード全体に散らばっているということです。FreeNet はそれが完全にフラットになっているのですが,あまりにもフラットに作ってるがために効率が悪い。Winnyはそうじゃなくてちょっとこの辺が山になってるぐらいならいいだろうっていうことで,だから匿名性を落としているけれどもその分効率が良いという,両者のバランスを取ったネットワークです。

中島:その効率的かつ正確なファイル転送のノウハウが改良されて,SkeedCastに盛り込まれているということですか。

金子:そういうことです。それに加えて,もう一つの特色としては,日本独自のインフラの事情に最適化されているという面もあるかもしれません。上流のノードが高速な回線で相互に接続されているときに,それを活かしてどうやって効率的な転送を行うかということですね。海外のP2Pソフトはそのへんをあまり考えてないというか,上流/下流という発想そのものがないような気がします。

中島:そこが,FreeNet やBitTorrent などの海外発の技術と違うところなんですね。欧米発のP2Pは草の根指向が強いですからね。

金子:ネットワークの管理を,草の根ではなくて国とかもしくはどこか大きな,たとえばNTTさんが中央で管理するというのが,日本向きと言えるのかもしれませんね。SkeedCast はどちらかと言えばその方向なんですが,もちろん,違う方向もあると思います。

注1)
匿名性の保証に重点を置いて開発されたP2Pプログラム。

著者プロフィール

中島拓(なかじまたく)

ソフトウェア技術者として,汎用機上での大規模プロジェクト,ミニコンによる制御システム,パソコン用のパッケージソフト,オープンソースソフトウェア(Amrita,ReviewableMindなど)といった,幅広い分野での開発に携わる。アンカテのブロガーとして,2006年アルファブロガーに選出される。現職 株式会社ブレーン 研究部長

アンカテ:http://d.hatena.ne.jp/essa/

コメント

コメントの記入