Ed2k URI scheme: Difference between revisions

Content deleted Content added
YiFeiBot (talk | contribs)
m Bot: Migrating interwiki links, now provided by Wikidata on d:q308175
Bender the Bot (talk | contribs)
m HTTP to HTTPS for SourceForge
 
(21 intermediate revisions by 15 users not shown)
Line 1:
{{refimprove|date=June 2016}}
{{lowercase}}
In computing, '''eD2k links''' (''ed2k://'') are [[hyperlink]]s used to denote files stored on computers connected to the [[eDonkey network|eDonkey]] [[filesharing]] [[P2P network]].
Line 12 ⟶ 13:
 
== File link format ==
File links are preceded with the "file" token, which indicates that this is a file link, as opposed to a <code>server</code>, <code>serverlist</code>, <code>nodelist</code> or <code>friend</code> link. The typical eD2k file link also includes the [[filename]] and the file size. An example (a link to the 15&nbsp;MB [[wikia:lotr:The_Two_Towers:_The_Purist_Edit |Purist Edit]] trailer) is provided below:
 
ed2k://|file|The_Two_Towers-The_Purist_Edit-Trailer.avi|14997504|965c013e991ee246d63d45ea71954c4d|/
Line 20 ⟶ 21:
ed2k://|file|The_Two_Towers-The_Purist_Edit-Trailer.avi|14997504|965c013e991ee246d63d45ea71954c4d|/|sources,202.89.123.6:4662|/
 
On eMule, the link often contains also an [[AICH]] [[HashMerkle tree|top hash]] '''|h=H52BRVWPBBTAED5NXQDH2RJDDAKRUWST|''' to help recover the file in case of corruption during file transfer.
 
=== eD2k hash algorithm ===
 
The eD2k hash function is a [[hash list|root hash]] of a list of [[MD4]] [[hash function|hashes]]. It gives a different result than a simple usage of the MD4 algorithm.
Line 30 ⟶ 31:
This method of hashing allows the recipient to verify that a hash list corresponds to an original eD2k file hash, without the need to actually have the file present on disk.
 
In the past, there has been some ambiguity for files whose size is a multiple of the chunk size (9500 KiB). Old versions of some eD2k hash tools computed file hashes with an additional 0-byte chunk at the end. This is because an ambiguity of the term ''reminderremainder chunk'' which can be interpreted as either ''the last chunk'' or a ''non-full chunk at the end''. Following the latter interpretation, some implementations added a zero byte chunk in case the last chunk of a file was a complete one. This practice is discouraged however and the first interpretation is used as a standard nowadays to prevent some files from having different hashes depending on the algorithm implementation used to calculate their hash.<ref>{{cite web|url=https://mldonkey.sourceforge.net/Ed2k-hash|title=Ed2k-hash - MLDonkey|website=mldonkey.sourceforge.net|access-date=23 April 2018|archive-date=19 December 2017|archive-url=https://web.archive.org/web/20171219205033/http://mldonkey.sourceforge.net/Ed2k-hash|url-status=dead}}</ref>
 
=== AICH ===
{{main|eMule#Basic concepts}}
The AICH (Advanced Intelligent Corruption Handling) is an eMule extension. It subdivides the 9500 KiB chunk into 180-KiB blocks and builds a [[Merkle tree]] out of the SHA1 hashes of the 53 blocks, so that the root hash of each block is called a ''block hash''. The block hashes further feed into a Merkle tree, the root hash of which is the actual AICH root hash. The smaller block size allows eMule clients to more precisely identifify locations of corruption.<ref>{{cite web |title=Corruption Handling |url=http://www.emule-project.net/home/perl/help.cgi?l=1&rm=show_topic&topic_id=589 |website=www.emule-project.net}}</ref>
 
== Server links ==
Line 57 ⟶ 62:
* [http://wiki.amule.org/wiki/Ed2k_link aMule wiki: ed2k link].
* [http://www.emule-project.net/home/perl/help.cgi?l=1&rm=show_topic&topic_id=422 emule project] Ed2k link formats supported by emule client.
* [httphttps://ed2k-tools.sourceforge.net/ed2k_hash.shtml ED2K tools - ED2K_Hash] Tool to create ED2K hashes.
* [http://phantomp2p.com Phantom P2P] eD2k Links Provider
{{URI scheme|state = uncollapsed}}
Line 64 ⟶ 69:
[[Category:File sharing]]
[[Category:URI schemes]]
 
[[ru:eDonkey2000 (сеть)]]