eDonkey Network ( eDonkey2000ネットワークまたはeD2kとも呼ばれる)は、分散型で、主にサーバーベースのピアツーピアファイル共有ネットワークであり、2000年に米国の開発者Jed McCalebとSam Yaganによって作成されました[ 1 ] [ 2 ] [ 3 ]。 これは、ユーザー間で大きなファイルを共有し、ファイルの長期的な可用性を提供するのに最適です。ほとんどの共有ネットワークと同様に、ネットワークの中央ハブがないため分散型です。また、ファイルは中央サーバーに保存されず、ピアツーピアの原則に基づいてユーザー間で直接交換されます。
ネットワークのサーバー部分は、プロプライエタリなフリーウェアです。eD2kネットワーク用のサーバーソフトウェアには2つの種類があります。1つはMetaMachineが開発したオリジナルのもので、C++で記述されており、クローズドソースのプロプライエタリソフトウェアで、現在はメンテナンスされていません。もう1つはeserverで、 C言語で記述されており、こちらもクローズドソースのプロプライエタリソフトウェアですが、無料で利用でき、複数のオペレーティングシステムとコンピュータアーキテクチャに対応しています。2008年時点では、eD2kサーバーのほぼすべてがeserverソフトウェアを実行していました。
ネットワークのクライアントとして機能するプログラムは数多く存在する。中でも特筆すべきは、 MetaMachine社が開発したオリジナルのクライアントであるeDonkey2000である。これはクローズドソースだがフリーウェアであり、現在はメンテナンスされていないものの、当時は非常に人気があった。また、Visual C++で記述され、GNU GPLライセンスの下で提供されるWindows用の無料プログラムであるeMuleも挙げられる。
オリジナルのeD2kプロトコルは、eserverとeMuleプログラムのその後のリリースによって拡張されてきました。これらのプログラムは一般的に連携して、eD2kプロトコルがサポートすべき新機能を決定しています。しかし、eD2kプロトコルは正式には文書化されておらず(特に現在の拡張状態では)、実際にはeMuleとeserverが実行時に連携して行う処理、およびeMuleクライアント同士が通信する方法がeD2kプロトコルであると言えます。eMuleはオープンソースであるため、そのコードはプロトコルの動作に関するピアレビューのために自由に利用できます。eD2kプロトコルの拡張例としては、「クライアント間のピア交換」、「プロトコルの難読化」、4ギガバイトを超えるファイルのサポートなどが挙げられます。他のeD2kクライアントプログラムも、時間が経つにつれて、これらのプロトコル拡張を採用するようになります。
eDonkeyクライアントプログラムはネットワークに接続してファイルを共有します。[ 4 ] eDonkeyサーバーはクライアントの通信ハブとして機能し、ユーザーがネットワーク内のファイルを見つけられるようにします。クライアントとサーバーは、Windows、macOS、Linux、およびその他のUnix系オペレーティングシステムで利用可能です。インターネットに接続されたマシンでeDonkeyサーバープログラムを実行することで、どのユーザーでもサーバーをネットワークに追加できます。サーバーの数とそのアドレスは頻繁に変更されるため、クライアントプログラムはサーバーリストを定期的に更新します。
eDonkeyネットワーク上のファイルは、ファイルのMD4ハッシュリストのMD4ルートハッシュを使用して一意に識別されます。これにより、内容が同じでもファイル名が異なるファイルは同一ファイルとして扱われ、内容が異なるでもファイル名が同じファイルは異なるファイルとして扱われます。
ファイルは 9,728,000 バイト (9500 KiB) の完全なチャンクと残りのチャンクに分割され、それぞれに対して個別の 128 ビット MD4 チェックサムが計算されます。このようにして、送信エラーが検出された場合、ファイル全体ではなく 1 つのチャンクのみが破損します。さらに、ダウンロードされた有効なチャンクは、ファイルの残りの部分がダウンロードされる前に共有できるため、ネットワーク全体で大きなファイルの配布が高速化されます。ファイルの識別チェックサムは、チャンクの MD4 チェックサムを順番に連結し、結果をハッシュ化することによって計算されます。暗号化用語では、MD4 チェックサムのリストはハッシュ リストであり、ファイルの識別チェックサムはルート ハッシュ、またはトップ ハッシュまたはマスター ハッシュとも呼ばれます。
MD4は衝突攻撃に対して脆弱であるため、悪意のあるユーザーが同じチェックサムを持つ2つの異なるチャンクを作成することが可能です。
eDonkeyネットワークは、ファイル名だけでなく、サイズ、拡張子、ビットレートなどの二次的な特性によるファイル検索をサポートしています。Lugdunum版のeserver(eDonkeyサーバーソフトウェア)は、「one AND two AND (three OR four) AND ("five four three" OR "two one") NOT seven」のような複雑なブール検索をサポートしています。
ファイル検索を容易にするため、一部のウェブサイトでは、探しているファイルのチェックサムをeD2kリンクの形式で掲載している。また、これらのウェブサイトの中には、ユーザーが更新できるアクティブなサーバーのリストを提供しているものもある。
2004年、eDonkeyネットワークはFastTrackを追い抜き、インターネット上で最も広く利用されているファイル共有ネットワークとなった。数字は時間ごとに変動するが、2005年半ばの時点で、平均して約200万から300万人のユーザーが100から200台のサーバーを介して5億から20億のファイルを共有していると考えられている。ネットワークで最も人気のあるサーバーはかつてRazorback2で、通常約100万人のユーザーが利用していた。2006年2月21日頃、Razorback2サーバーはベルギー連邦警察によって捜索され押収された。[ 5 ] DonkeyServer No1とDonkeyServer No2は現在合わせて150万人以上のユーザーを抱えている。しかし、2007年7月16日頃、両サーバーは他のいくつかのサーバーとともに、一時的な差し止め命令が出された後に停止された。[ 6 ]
2007年までに、BitTorrentはインターネット上で最も広く使用されているファイル共有ネットワークとしてeDonkeyネットワークを凌駕した。2009年には、eDonkeyは依然として2番目に人気のあるP2Pプロトコルであるが、急速に衰退していると報告された。[ 7 ]
当初のeDonkeyネットワークは、必要な帯域幅と処理能力/ディスク使用量のオーバーヘッドを無償で提供するユーザーが運営する中央サーバーに依存していた。こうしたサーバーはトラフィックが集中しやすく、結果として攻撃に対して脆弱になる可能性があった。
この問題を克服するため、オリジナルのeDonkeyクライアントの開発元であるMetaMachineは、eDonkeyプロトコルの後継としてOvernetを開発しました。eMuleプロジェクトも、中央サーバーへの依存を克服するために独自のKademliaネットワーク( Kadと呼ばれる)を開発しました。さらに、eMuleには純粋なP2Pクライアントソース交換機能が含まれており、「High ID」(つまり 、受信eD2k接続がファイアウォールによってブロックされていない)を持つクライアントは、元のリクエストを処理した元のKadまたはeD2kサーバーから完全に切断された後でも、ソース数の多いファイルのダウンロード(およびアップロード)を数日間継続できます(eMuleは、サーバーから切断するように指示された場合、セカンダリサーバーに問い合わせません)。このソース交換機能は、シード数、つまりファイルのソース(他のクライアント)が多いファイルの場合、サーバーへの負荷を3分の2以上軽減するように設計されています。MetaMachineによるオリジナルのeDonkeyクライアントは、ソース交換をサポートしていません。
2006年9月13日、 eDonkey2000クライアントの開発元であるMetaMachine Inc.は、RIAA(アメリカレコード協会)が提起する可能性のある著作権侵害訴訟を回避するため、3000万ドルを支払うことに合意した。この合意に基づき、eDonkeyはソフトウェアの配布を中止するとともに、以前のバージョンのソフトウェアがファイル共有に使用されることを防止する措置を講じることになった。
Razorback2はeDonkeyネットワークのサーバーの一つで、100万人のユーザーを同時に処理できることで知られていた。
2006年2月21日、ベルギーのデータセンターに設置されていた複数のサーバー(Razorback2を含む)がベルギー警察によって押収され、スイス在住の運営者が逮捕された。これは、米国映画協会(MPAA)が国際レコード産業連盟(IFPI)と協力して行った告発を受け、ブリュッセル近郊のザベンテムにあるデータセンターでの押収を地元裁判官が承認した後に実施された。
MPAA(アメリカ映画協会)の会長兼CEOであるダン・グリックマン氏は、今回の摘発を「大きな勝利」と評した。
これは、ピアツーピアネットワークを介してインターネット上で流通している違法コンテンツの供給を断つための我々の戦いにおける大きな勝利です。Razorback2によって促進される著作権で保護された作品の違法なトラフィックを削減することで、他の違法ネットワークがインターネット海賊に著作権で保護された作品を供給する能力を弱めており、これは海賊行為と戦うための国際的な取り組みにおける前向きな一歩です。[ 8 ]
Razorbackの機器を没収し、サイトを閉鎖させただけでなく、MPAAやIFPIといった著作権執行機関は、オリジナルのサーバーを模倣する目的で「Razorback2」という偽サーバーを複数オンライン上に設置したが、これは何の役にも立たず、ファイル共有トラフィックを妨害するだけだった。その後、スイスの著作権侵害対策技術企業Logistep SAが雇われ、ファイル共有ユーザーへのさらなる威嚇と訴追を支援した。
eDonkeyネットワーク上に、共有コンテンツの検索やファイルに関する情報を、ファイルの種類(ビデオやMP3など)やキーワードで検閲するサーバーが出現している。[ 9 ]これらのサーバーは、最大150万人のユーザーが接続していると報告しており、ネットワークのユーザー数は1000万~1300万人にまで増加している。しかし、実際に何人が接続しているかを判断することは不可能である。このようなサーバーは、よく検索される音楽/ビデオファイルに見せかけた広告を配信することが多い。
eD2k ネットワークで使用されるメインのサーバー ソフトウェアはLugdunum サーバーとして知られています。これは、edonkey プロトコルをリバース エンジニアリングしてゼロから再設計して作成されました。(MetaMachine は eD2k サーバー ソフトウェアの開発を放棄し、2002 年後半にソース コードを Lugdunum に公開しましたが、使用されることはありませんでした)。[ 10 ] Lugdunum は、後方互換性を維持しながら eD2k プロトコルを拡張しました。Lugdunum サーバー ソフトウェアは無料ですが、オープンソースではありません。ソースを公開しない理由は、偽のサーバーが簡単に作成されないようにし、サーバー自体への攻撃を防ぐためです。
2007 年 9 月、eMule の Web サイト フォーラムで satan-edonkey-server と呼ばれる新しいサーバー ソフトウェアが発表されました[ 11 ]。数日前に主要な eMule サーバーが法的措置により停止されたことを考えると、新しいサーバーは疑わしいものとして受け止められました。このソフトウェアがクライアントに関する情報を未知の第三者に送信する可能性があると懸念されました。信頼できる eMule 開発者数名が satan-edonkey-server のソース コードを入手し、スパイ コードは組み込まれていないと述べました。satan サーバー ソフトウェアは、edonkey プロトコルをリバース エンジニアリングして作成されました。このソフトウェアには 2 つのバージョン (C++ と Java) があります。Satan-eDonkey-server ソフトウェアは無料です。
サーバー側のJavaバージョンは以下にあります。これは2012年に書かれたものです。
eDonkey/eDonkey2000ネットワーク向けには、無料ソフトウェアを含む多数のクライアントが利用可能です。
{{cite web}}: CS1 maint: bot: 元の URL の状態が不明です (リンク)