stringtranslate.com

esquema de URI ed2k

En informática, los enlaces eD2k ( ed2k:// ) son hipervínculos que se utilizan para indicar archivos almacenados en computadoras conectadas a la red P2P de intercambio de archivos de eDonkey .

General

Muchos programas, como eMule , MLDonkey y el cliente eDonkey2000 original de MetaMachine , que introdujo el tipo de enlace, así como otros que utilizan el protocolo de intercambio de archivos eDonkey, se pueden utilizar para administrar archivos almacenados en la red de intercambio de archivos.

Los enlaces eD2k permiten identificar un archivo a partir de un enlace en un navegador web y descargarlo posteriormente mediante un cliente como eMule, Shareaza o cualquier otro software compatible. Esta función de enlace fue una de las primeras URI que se introdujo en el intercambio de archivos entre pares y tuvo un gran efecto en el desarrollo de la red eDonkey, ya que permitió que los sitios de enlaces externos proporcionaran contenido verificado dentro de la red. Hoy en día, los llamados enlaces Magnet han sustituido en la práctica a los enlaces eD2k. Cumplen una función similar, pero no se limitan al hash eD2k y pueden contener otros hashes como SHA-1 o MD5 , por ejemplo, lo que permite utilizar estos enlaces para apuntar a archivos en varias redes (así como en BitTorrent). ) En seguida.

Los enlaces eD2k incluyen hashes de archivos, ya que estos hashes se pueden usar como un identificador único para archivos dentro de la red, por lo que incluso si el archivo vinculado tiene un nombre diferente en dos computadoras dentro de la red, el archivo se puede encontrar en ambas. , y los fragmentos de archivos se pueden obtener de ambas fuentes. Esto se hace utilizando una función hash en el archivo para calcular su suma de comprobación, dependiendo únicamente del contenido del archivo, no de su nombre.

Al igual que otros protocolos de URI, los navegadores web se pueden configurar para manejar automáticamente los URI de ed2k. Después de instalar un cliente eD2k , el protocolo eD2k se registra opcionalmente de modo que al hacer clic en él en el navegador se inicia automáticamente la descarga o se pregunta al usuario si desea iniciar la descarga.

Formato de enlace de archivo

Los enlaces de archivos están precedidos por el token "archivo", que indica que se trata de un enlace de archivo, a diferencia de un enlace , servero un enlace. El enlace típico del archivo eD2k también incluye el nombre del archivo y el tamaño del archivo. A continuación se proporciona un ejemplo (un enlace al tráiler de Purist Edit de 15 MB):serverlistnodelistfriend

ed2k://|archivo|Las_Dos_Torres-El_Purista_Edit-Trailer.avi|14997504|965c013e991ee246d63d45ea71954c4d|/

Los enlaces eD2k también pueden incluir una referencia a la dirección IP y al puerto de clientes específicos que se sabe que comparten el archivo vinculado. Esto se hace agregando una lista de fuentes después de la parte principal del enlace, como se muestra en el siguiente ejemplo:

ed2k://|archivo|Las_Dos_Torres-El_Purista_Edit-Trailer.avi|14997504|965c013e991ee246d63d45ea71954c4d|/|sources,202.89.123.6:4662|/

En eMule, el enlace a menudo también contiene un hash superior AICH |h=H52BRVWPBBTAED5NXQDH2RJDDAKRUWST| para ayudar a recuperar el archivo en caso de corrupción durante la transferencia del archivo.

algoritmo hash eD2k

La función hash eD2k es un hash raíz de una lista de hash MD4 . Da un resultado diferente al de un simple uso del algoritmo MD4.

Los datos del archivo se dividen en fragmentos completos de 9500 KiB (9728000 bytes) más un fragmento restante, y se calcula una suma de comprobación MD4 de 128 bits separada para cada uno. Si el archivo tiene más de 9500 KiB (lo que significa que hay más de un fragmento), el hash eD2k se calcula concatenando las sumas de comprobación MD4 de los fragmentos en orden y aplicando hash nuevamente al resultado usando MD4. De lo contrario, el hash MD4 del único fragmento del archivo se utiliza sin más modificaciones. [1]

Este método de hash permite al destinatario verificar que una lista hash corresponde a un hash de archivo eD2k original, sin la necesidad de tener el archivo presente en el disco.

En el pasado, ha habido cierta ambigüedad para los archivos cuyo tamaño es múltiplo del tamaño del fragmento (9500 KiB). Las versiones antiguas de algunas herramientas hash eD2k calculaban hashes de archivos con un fragmento adicional de 0 bytes al final. Esto se debe a una ambigüedad del término fragmento restante , que puede interpretarse como el último fragmento o como un fragmento no completo al final . Siguiendo la última interpretación, algunas implementaciones agregaron un fragmento de cero bytes en caso de que el último fragmento de un archivo estuviera completo. Sin embargo, se desaconseja esta práctica y la primera interpretación se utiliza como estándar hoy en día para evitar que algunos archivos tengan diferentes hashes dependiendo de la implementación del algoritmo utilizado para calcular su hash. [2]

AICH

AICH (Manejo Inteligente Avanzado de la Corrupción) es una extensión de eMule. Subdivide el fragmento de 9500 KiB en bloques de 180 KiB y construye un árbol Merkle a partir de los hashes SHA1 de los 53 bloques, de modo que el hash raíz de cada bloque se denomina hash de bloque . Los hashes de bloque se alimentan además de un árbol Merkle, cuyo hash raíz es el hash raíz AICH real. El tamaño de bloque más pequeño permite a los clientes de eMule identificar con mayor precisión los lugares de corrupción. [3]

Enlaces de servidor

Un enlace de servidor es una referencia a un servidor eDonkey2000; al hacer clic en dicho enlace normalmente se agrega a la lista de servidores. Los enlaces de servidor se indican mediante el servertoken al principio del enlace y tienen el siguiente formato:

ed2k://|servidor|IP|PUERTO|/

Ejemplo:

ed2k://|servidor|207.44.222.51|4242|/

Ver también

Referencias

  1. ^ fuente de emule, método CKnownFile::CreateFromFile.
  2. ^ "Ed2k-hash - MLDonkey". mldonkey.sourceforge.net . Consultado el 23 de abril de 2018 .
  3. ^ "Manejo de la corrupción". www.emule-project.net .

enlaces externos