コンテンツにスキップ

英文维基 | 中文维基 | 日文维基 | 草榴社区

利用者:ぬるぽ三号/一時保管場

題:ファイル共有ソフト

ファイル共有ソフト( - きょうゆうソフト - )とは、インターネットを通じてファイルを多数のユーザ間で共有することを目的としたソフトウェアである。ファイル交換ソフトとも呼ばれる。

概要

[編集]

ファイル共有ソフトは、ソフトが定めた専用のプロトコルで通信を行うことで専用のネットワークを構成し、そのネットワークに接続された不特定多数のコンピュータとの間で共有されているファイルのやりとりを行う仕組みを持つ。 効率的な共有を実現させるために、ほとんどのファイル共有ソフトはPeer to Peerモデルを用いて通信させる。

少なくとも以下の機能を持つ。

  • ファイルを保持するコンピュータと要求するコンピュータを結びつける仕組み。

ファイルを保持するコンピュータと要求するコンピュータとの間に転送経路を確保するために、検索機能・マッチング機能を備えることが多い。

2001年以後、高速大容量通信(ブロードバンドインターネット接続)が世界的に発展するとともに、ファイル共有ソフトも大幅に増加した。

日本において当初は一対一でファイルをやり取りすることが多かったためファイル交換ソフトと呼ばれていたが、Winny以降は複数対複数でのやり取りが一般的になったためファイル共有ソフトと呼ばれるようになった。

ネットワークの方式

[編集]

現在、ファイルの共有に利用されているネットワーク方式は基本的に以下の三つに分類できる。

集中管理・集中転送タイプ

[編集]

クライアント・サーバー・モデルで全ての通信を行う。 サーバーがファイルを一極集中管理し、サーバーとクライアントとの間で転送を行うため、ネットワーク上の全ての転送はサーバーを経由することになる。

負担がサーバーに集中するため、ネットワーク全体での流通能力はファイル数・データ量共にサーバーの能力に依存し最も不利である。 一方で、ネットワーク内の全ての操作がサーバーに依存するため、容易に管理が可能で、ファイルの変更や管理が即座に反映されたり、ダウンロードが要求後すぐに始まるなど、リアルタイム性では最も有利である。 全ての検索・転送をサーバーが把握できるため匿名性は無い。

ファイル共有ソフトの方式としては利用されていない。 HTTPFTPなどを利用したファイル共有がこれに当たる。 HTTPは、ウェブブラウザだけで利用できる手軽さやリアルタイム性の良さから小容量のファイルの交換に関しては今も多く活用されている方式である。

集中管理・分散転送タイプ

[編集]

ハイブリッドP2P方式と呼ばれるものは大抵このタイプを指す。 サーバーは原則的にファイルの情報だけを扱い、ファイルの実体はノードが実際に持つ。 ファイルの転送はノード同士の間で行うが、ファイルの検索とノードのマッチングはサーバーが行う。 ソフトの仕様によっては、サーバーがノードの役割も兼ねることで結果的にサーバーと別のノードとの間で転送が行われる場合がある。

一極集中管理が向いている検索をクライアント・サーバー・モデルで、分散して行う方が向いている転送をP2Pモデルで行うので、最も合理的で効率が良い。 ネットワーク全体において、扱えるファイル数はサーバーの能力に依存し、扱えるファイル総容量はネットワーク規模と各ノードの平均的な能力に依存する。 ファイル情報をサーバーが管理しているため、容易に管理も可能で、ファイルの検索に関してはリアルタイム性は良いが、ファイルのダウンロードに関しては各ノードの状態に依存しリアルタイム性は不利となる。 全ての検索・転送をサーバーが把握できるため匿名性は無い。

ファイル共有ソフトの先駆けであるNapsterの他、日本で有名なWinMX、海外で最も普及しているBitTorrentが挙げられる。

分散管理・分散転送タイプ

[編集]

ピュアP2P方式と呼ばれるものは大抵このタイプを指す。 基本的に、全ての通信をノード間で行う。

サーバーに依存しないため、ネットワークの耐障害性が非常に高いのが特徴であり、また、ネットワーク全体を把握するサーバーが無いため、実装次第では匿名性を確保可能である等、サーバーが無いことによるメリットは大きい。 一方で、ネットワーク全体のファイルを把握しているサーバーが無いため、効率的な検索機能の実現が困難である。 例えば、典型的な手法で検索機能を実装すると、ネットワーク全体で検索のために費やされる通信量はネットワークの規模の二乗に比例するため、ネットワークの拡大と共に急激に効率が悪化してしまい、実用的なネットワークの規模を制限する原因にもなっている。 ほか、ファイル情報が分散しているため不安定で、ネットワーク内にファイルがあっても検索に引っかからない場合も多く、リアルタイム性は最も不利である。 この欠点を補うため、条件に合うファイルを見つけ次第に片っ端から自動でダウンロードさせる地引と呼ばれる利用方法と共に長時間の稼働が一般的となっている。 ネットワーク全体において、扱えるファイル総容量はネットワーク規模と各ノードの平均的な能力に依存するが、扱えるファイル数は特別な工夫をしない限りネットワーク規模と関係なく各ノードの平均的な能力に依存する。 特に能力の低いノードに足を引っ張られやすい。


ファイルの転送に関しては集中管理・分散転送タイプと同様に効率が良い。


著作権問題

[編集]

手軽に共有できる点から著作権があるデータを共有させるといった問題も発生している。

最初にファイル共有ソフトが著作権問題に問われたソフトウェアにNapsterがある。1999年12月RIAAがNapsterを提訴し[1]、Napsterは非商用目的で共有するのは合法であると主張したが、米連邦地裁からサービス停止命令が出され[2]、Napsterもこれに反論し続けたが、2001年7月にシステム障害を理由として、ファイル共有ソフトとしてのNapsterはサービスを終了した[3]

WinnyShareなどのファイル共有ソフトは、ファイルを暗号化し、データを送受信してファイルを共有する。そのため配布者の特定が困難で、著作権の保持された音楽や映画、市販のソフトウェアなどを違法に交換する者が絶えない。

日本国内では、Winnyが高い人気を誇ったが、Winnyの開発者が逮捕され、利用者への取り締まりが進んでいる。それと呼応し、Shareという Winnyと類似した仕組みで動作するソフトウェアが開発された。現在はWinny・Share共に暗号化・匿名化の仕組みは解明され、配布者の特定が原則として可能になっている。ただし、特定にはそれぞれのネットワーク全体の絶え間ない監視が必要なので、監視を始める以前から存在するか、監視対象となる前のノードから発信されたファイルについては配布者特定は不可能である。

ファイル共有ソフトの歴史

[編集]

Napster

[編集]

Napster1999年1月に公開された、音楽の共有を目的としたソフトウェア及びサービス。 このサービスはMP3ファイルの共有を行うことができた。 P2Pモデルを用いたファイル共有ソフトの先駆けであり、初めて多くの利用者を獲得したP2Pファイル共有ソフトとなった。 尚、日本語に対応していないことから日本ではほとんど普及しなかった。 RIAAから訴えられ敗訴したことをきっかけに、2001年7月にサービスは停止した。

ファイルの転送はP2Pで行うが、ファイルの検索・ノードのマッチングは専用のサーバーが集中管理して行うハイブリッドP2Pモデルを採用している。 このため、専用のサーバーが停止すると一切機能しなくなる。 専用のサーバーはNapster社が用意したものを利用する。 人気があるファイルを持つノードにアクセスが集中して転送が遅くなる問題を持っている。

Gnutella

[編集]

最初のGnutellaクライアントは、AOL社のNullsoft部門の社員が会社に黙って開発し2000年3月に公開したものである。 これはAOLによって公開・開発はすぐに停止されたが、このクライアントの解析によりプロトコルが解明したことで、さまざまな互換クライアントが今も開発されている。 現在も多くの利用者が居る。

Napsterとの違いはピュアP2Pモデルを採用していることである。 従来のファイルの転送に加えて、ファイルの検索・ノードのマッチングもP2Pで実現し、専用のサーバーを不要とした。 このように専用のサーバーに依存しないためGnutellaネットワークは極めて高い耐障害性を持ち、いちど機能し始めてしまうと止めることは困難となる。

BitTorrent

[編集]

BitTorrent2001年に公開されたプロトコル。 非常に高い効率を持ち、合法的な用途では最も多く利用されている。 多くのクライアントがある他、一部のウェブ・ブラウザやネットワーク機器などが対応している。 WinMXの衰退により海外では多くの利用者がBitTorrentに乗り換えた。

従来のファイル共有ソフトは明示的に指定したファイルしかアップロードしなかったのに対し、BitTorrentクライアントはダウンロードしたファイルも自動的にアップロードするよう義務づけられている。 これにより、人気があるファイルを持つノードへのアクセス集中は最小限に押さえられ、むしろ人気があるほど高速に転送できる性質を持つに至り、効率の良いファイル共有を実現した。

BitTorrentはハイブリッドP2Pモデルを採用し、ノードのマッチングは専用サーバーが行うが、Napsterと異なりファイルの検索機能を持たず、ファイルの転送に徹している。 利用者は、ダウンロードしたいファイル一つに対し、対応するtorrentファイル一つを用意する必要がある。 専用のサーバーは誰でも設置することができ多くのサーバーが存在するが、torrentファイルに記録されているので利用者は意識する必要はない。 ほとんどのtorrentファイルはウェブ・サイトで配布されており、torrentファイルを集めて検索機能を付けたサイトも多い。

WinMX

[編集]

WinMX2001年に公開された。 マルチバイト文字に対応しているため、日本で初めて普及したファイル共有ソフトとなった。 (Unicodeに対応しているかは不明。) チャット機能も持ち、それを目的に導入する利用者も多い。 雑誌による丁寧な解説もあり、初心者による導入も増え利用者の裾野が広がっていったが、日本において2001年11月に著作権の侵害を理由に利用者から逮捕者が出たことで、利用者は激減した。 尚、ファイル共有ソフトの利用者が逮捕されたのは、世界的に見てもこれが初めてとなる。 海外でも、アメリカ最高裁が出した判決によって2005年9月に公式サーバーが閉鎖されたことで、利用者は激減した。

Napster互換プロトコルによるハイブリッドP2Pモデルを採用している。 ファイルの検索・ノードのマッチングを行う専用サーバーは、公式のサーバーの他に、個人が設置したサーバーも幾つかある。

Winny

[編集]

Winny2002年5月に公開された国産のファイル共有ソフトであり、匿名ファイル共有ソフトの草分けでもある。 WinMXの利用者が逮捕されたことで、違法な共有を行っている利用者を中心に動揺が広がっていた時期であり、多くの利用者が匿名性を持つWinnyに乗り換えた。 現在でも国内で最も普及しているファイル共有ソフトである。 条件に合うファイルを片っ端から自動でダウンロードさせる地引と呼ばれる利用方法を初めて提案した。 BBS機能も持ち、それを目的に導入する利用者も多い。 マルチバイト文字に対応しているがUnicodeには対応しておらず、またローカライズが困難な仕様だったため、海外では殆ど普及していない。 当時、匿名性が絶大に信頼されていたものの、2003年11月27日に著作権の侵害を理由に利用者から逮捕者が出たことで、Winnyの開発は停止した。 翌年、2004年5月10日に著作権の侵害の幇助を理由に開発者も逮捕された。 現在では解析が進んでおり匿名性は破られてきている。

Winnyは作者のセンスが良く技術的なことも含め様々な点で特徴的であり注目を集めた。 国内では初めての実用的なピュアP2Pネットワークソフトであったことも、その一つである。 Winnyの影響を受けたソフトウェアも多い。

Gnutellaと同様にピュアP2Pモデルを採用しているが、Gnutellaよりファイルの検索機能が効率化している。 転送する時、ファイルをそのまま転送するのではなく、キャッシュと呼ばれるデータに変換してから(あるいは変換しながら)転送を行い、必要に応じて復元する。 その際、一定確率で転送の中継を行うことで匿名性の確保を図った。 BitTorrentと同様にダウンロードしたキャッシュは自動的にアップロードされるが、キャッシュは原則Winnyが管理し利用者は関与しない方針により、BitTorrent以上に徹底している。 キャッシュは暗号化されているため、利用者は自分のノードが何を中継したか分からないようになっている。 (実際には特定のツールで知る方法がある。)

セキュリティ上の考察

[編集]

暗号化

[編集]

著名なP2Pシステム(例えばwinny)の中にも、公開鍵をcertificate(認証を参照)せずに暗号化や署名を行っているものがあるが、これらは安全性上意味を持たない。逆にcertificateしてしまった場合は、データ秘匿だけは可能になるものの、(certificateの定義より)もちろん匿名ではなくなる。

一部では暗号化によってデータ秘匿や匿名性が確保されると喧伝されているが、暗号化(を使ったオニオン・ルーティング)によってデータを秘匿できるのは公開鍵をcertificateした場合だけであるし、暗号はそもそも匿名性を確保する為のものではない。

暗号学ではよく知られているように、公開鍵をcertificateせずに安全な方式を作る事は原理的にできない。(なりすまし、一人二役、man-in-the-middle攻撃等を防げないから)。公開鍵をcertificateしない限り、電子署名と併用したとしても同様の問題が生じる。

また共通鍵暗号方式を使おうとも、公開鍵暗号と共通鍵暗号を併用しようとも安全ではない。共通鍵暗号単独の場合には鍵共有問題を解決できないし、公開鍵暗号と併用した場合には前述のcertificateの問題が起こる。

秘密分散(を使ったオニオン・ルーティング)を用いた場合も同様である。

ただし、素人に対するめくらまし、解読プログラムができるまでの時間稼ぎといった効果はある。しかし一度解読プログラムがばらまかれてしまうと、その解読プログラムを使えば素人でも解読できてしまうという問題もある。

ウィルス感染

[編集]

コンピュータにインストールされるP2Pアプリケーションは、目的や用途を問わず、インターネットに対しポートをオープンにしてサーバ的動作をする場合が多い。また、クライアント的な動作のみであっても、いずれにせよアプリケーションにバッファオーバーフロー等のセキュリティホールが存在した場合、アプリケーション同士が常時接続している場合が多いだけに、ワームウイルス等が急速にP2Pネットに感染拡大する脆弱性を持っている。実際にWinnyShareなどをインストールしたパソコンから個人情報が漏洩する事件や機密情報漏洩事件が多発している。

Winnyなどにおけるウィルス感染・個人情報漏洩は、WinnyなどP2Pソフトの脆弱性によるものではなく、通常のウィルスと同等のセキュリティ対策を行なっていれば、対応できるものである。

主なファイル共有ソフト

[編集]

ファイル共有(交換)システムを一部機能として組み込んでいるソフト

[編集]

関連項目

[編集]

出典

[編集]
  1. ^ Napsterの動向、財団法人デジタルメディア協会
  2. ^ 米連邦地裁、音楽交換ソフトのNapsterにサービス停止命令、ImpressWatch、2000年7月27日
  3. ^ Napsterでシステム障害、ファイル交換サービスが一時停止、ImpressWatch、2001年7月3日