ED2k链接

eD2k链接(eD2k links (ed2k://) )是一种超链接,用于指示在eDonkey网络上存储的文件。包括eDonkey2000、eMule、MLDonkey、aMule等在内的许多使用了eDonkey文件共享协议的客户端软件,都可以用eD2k链接来管理网络上的文件。

浏览器可以识别eD2k链接,并递交到eMule、eDonkey2000或其他的eD2k软件中进行传输。eD2k链接是最早被引入P2P文件网络的链接之一。Magnet链接现在也与eD2k链接类似,但Magnet链接不仅限于eD2k Hash,而是可以使用其他的Hash,诸如SHA或MD5等。

这些Hash码,主要用于确保相同的文件在网络上具有的相同的唯一标识,即使这些文件储存在不同的地方或拥有不同的名字。它通过使用该文件的Hash函数(散列函数)来计算其校验和

eD2k链接和很多URI协议一样,可以被网络浏览器配置为自动关联处理。安装某些eD2k软件时,“ed2k://”协议可能被自动注册。于是在浏览器中点击文件的eD2k链接时,就能自动打开eD2k软件并进行此文件的下载。

链接格式

eD2k链接的大致格式形如:

ed2k://|<类型>|<其他信息>|/[註 1]

使用“|”分隔开各个区域。

注释:

  • ed2k://:协议处理方法。指明该协议是[失效連結]eD2k协议
  • <类型>:链接类型。有三种:file(文件)、server(服务器)、serverlist(服务器列表)。
  • <其他信息>:具体的其他信息。

文件链接

  • 典型的、基础的eD2k文件链接只包含必要的三样信息:文件名、文件大小、文件的eD2k Hash。形如:
ed2k://|file|<文件名>|<文件大小>|<文件Hash>|/

以下是大小为2868871字节(约2.7MB)的官方eMule v0.49c zip压缩包的eD2k链接的例子[1]

ed2k://|file|eMule0.49c.zip|2868871|0F88EEFA9D8AD3F43DABAC9982D2450C|/
  • eD2k链接也可以包含一个或多个来源的IP地址与端口,形如:
ed2k://|file|<文件名>|<文件大小>|<文件Hash>|/|sources,<IP:端口>|/

例如:

ed2k://|file|eMule0.49c.zip|2868871|0F88EEFA9D8AD3F43DABAC9982D2450C|/|sources,202.89.123.6:4662|/
  • 在eMule中,eD2k链接也可以包含根Hash(Root Hash)值。根Hash提供了一个可靠的值用于AICH(高级智能损坏处理),在传输的文件有损坏或错误时进行纠正恢复。包含根Hash的eD2k链接形如:
ed2k://|file|<文件名>|<文件大小>|<文件Hash>|h=<根Hash>|/

例如:

ed2k://|file|eMule0.49c.zip|2868871|0F88EEFA9D8AD3F43DABAC9982D2450C|h=SQ7LUTYUSMDBP2TVE2M7T6VUBLU324KF|/[失效連結]
  • 完整的Hashset可以确保文件的正确,也可帮助发布新的与罕见的文件。包含Hashset的eD2k链接形如:
ed2k://|file|<文件名>|<文件大小>|<文件Hash>|p=<Hash Set>|/
  • 带主机的eD2k链接形如:
ed2k://|file|<文件名>|<文件大小>|<文件Hash>|/|sources,<主机名:端口>|/
  • eMule也可兼容带HTTP来源的eD2k链接,形如:
ed2k://|file|<文件名>|<文件大小>|<文件Hash>|s=<文件的HTTP地址>|/

服务器链接

eDonkey服务器的eD2k链接和文件的eD2k链接类似,它可以指示一个eDonkey服务器地址,格式形如:

ed2k://|server|<IP>|<端口>|/

例如:

ed2k://|server|207.44.222.51|4242|/[失效連結][2]

服务器列表链接

服务器列表链接,用于从一个固定的HTTP地址添加server.met服务器列表文件。格式形如:

ed2k://|serverlist|<HTTP地址>|/

<HTTP地址>:server.met文件的HTTP地址。[3]

Kad节点列表链接

Kad节点列表链接,用于从一个固定的HTTP地址添加nodes.dat Kad节点文件。格式形如:

ed2k://|nodeslist|<HTTP地址>|/

<HTTP地址>:nodes.dat文件的HTTP地址。[4]

好友链接

好友链接,根据用户Hash来添加好友。格式形如:

ed2k://|friend|<用户名>|<用户Hash>|/

官方eMule不支持eD2k好友链接添加好友功能,仅Xtreme及Xtreme的Mods(如ScarAngel、Mephisto等)、CN Mod等部分eMule Mods支持此功能。

eD2k Hash

eD2k Hash 算法是一种MD4算法的变体。其函数是一个MD4 Hash列表(MD4 Hash List)的MD4根Hash,但与MD4 Hash的结果不同:

文件数据被分割成多个9500KBchunks块(9728000字节或大约9.28MB)和剩余的一个chunk。每个chunk都要计算128-bit MD4 校验和。如果文件长度正好是9500KB的整倍数,剩余的大小为0的chunk依然存在于Hash列表的末尾。将这些chunk的MD4校验和按顺序联合起来,并使用MD4计算Hash,可得到eD2k Hash。对于仅由一个chunk组成的文件(即文件大小小于9500KB),MD4和eD2k Hash是完全相同的。[5]

这种方法可以直接将Hash列表与原eD2k Hash进行验证,而无需使用文件块来验证。

参见

注釋

  1. ^ 尖括号“<>”为指示,实际使用时需替换内容,下同。

参考资料

  1. ^ 存档副本. [2009-09-26]. (原始内容存档于2010-02-07). 
  2. ^ 存档副本. [2009-09-26]. (原始内容存档于2009-09-25). 
  3. ^ 存档副本. [2009-09-26]. (原始内容存档于2009-10-12). 
  4. ^ 存档副本. [2010-06-29]. (原始内容存档于2010-07-06). 
  5. ^ 根据eMule源代码,method CKnownFile::CreateFromFile。

外部链接

  • emule forum guides (页面存档备份,存于互联网档案馆) How to remove the ed2k link protocol association in windows.
  • aMule wiki: ed2k link (页面存档备份,存于互联网档案馆).
  • emule project (页面存档备份,存于互联网档案馆) Ed2k link formats supported by emule client.
  • ED2K tools - ED2K_Hash (页面存档备份,存于互联网档案馆) Tool to create ED2K hashes.
  • Phantom P2P (页面存档备份,存于互联网档案馆) eD2k Links Provider
官方
  • aaa英语AAA protocol
  • aaas英语AAA protocol
  • about
  • acap英语Application Configuration Access Protocol
  • cap
  • cid
  • crid英语Content Reference Identifier
  • data英语data URI scheme
  • dav
  • dict
  • dns
  • fax
  • file英语file URI scheme
  • ftp
  • geo英语Geo URI
  • go
  • gopher
  • h323
  • http
  • https
  • iax英语Inter-Asterisk eXchange
  • im
  • imap
  • info英语Info URI scheme
  • ldap
  • mailto英语mailto
  • mid
  • news
  • nfs
  • nntp
  • pop
  • rsync
  • pres英语Presence information
  • rtsp
  • sip英语SIP address
  • S-HTTP
  • sips英语SIP address
  • snmp
  • tag英语Tag URI
  • tel
  • telnet
  • tftp
  • urn
  • view-source
  • wais英语Wide area information server
  • ws
  • wss
  • xmpp
非官方
网络协议列表(OSI模型)英语List of network protocols (OSI model)
eDonkey网络(分类)
网络与协议
链接及组成
eD2k链接(eD2k Hash · 磁力链接
服务器及其软件
eD2k服务器 · Lugdunum · Razorback2
客户端软件
比较
eDonkey2000(电驴) · eMule(电骡) · aMule · MLDonkey · Lphant · Shareaza · eMule Plus · iMule英语iMule · JMule · Jubster英语Jubster · lMule英语lMule · Morpheus英语Morpheus (software) · xMule
eMule Mod
Xtreme · ScarAngel · Mephisto · X-Ray · MorphXT · MagicAngel · StulleMule · NeoMule · ZZUL · AcKroNiC · Sivka · Pawcio · EastShare · CN Mod · eXcalibur · X Mod · VeryCD Mod · easyMule · eMule kMule
吸血驴[1]
哇嘎 · 迅雷 · QQ旋风 · 脱兔 · 快车 · BitComet[2] · Applejuice · ZZ-R
功能及组件
原版eMule
IPFilter · 模糊协议
eMule Mods
其他
注释
❶以Xtreme的官方DLP库是否侦测为准。不一定是数据方面的“吸血”,可能有其他不妥如违反GPL等。
❷默认无法连接eDonkey网络,但有官方插件供下载安装。