Схема URI ed2k
Эта статья нуждается в дополнительных цитатах для проверки . ( июнь 2016 г. ) |
В вычислительной технике ссылки eD2k ( ed2k:// ) — это гиперссылки, используемые для обозначения файлов, хранящихся на компьютерах, подключенных к eDonkey обмена файлами P2P-сети .
Общий
[ редактировать ]Многие программы, такие как eMule , MLDonkey и оригинальный eDonkey2000 клиент от MetaMachine , в котором появился тип ссылки, а также другие, использующие протокол обмена файлами eDonkey, могут использоваться для управления файлами, хранящимися в файлообменной сети.
Ссылки eD2k позволяют идентифицировать файл по ссылке в веб-браузере и затем загрузить его с помощью клиента, такого как eMule, Shareaza или любого другого совместимого программного обеспечения. Эта функция связывания была одним из первых URI , введенных в одноранговый обмен файлами, и оказала огромное влияние на развитие сети eDonkey, поскольку позволяла сайтам внешних ссылок предоставлять проверенный контент внутри сети. так называемые магнитные ссылки В настоящее время на практике ссылки eD2k заменили . Они выполняют аналогичную роль, но не ограничиваются хэшем eD2k и могут содержать другие хэши, такие как, например, SHA-1 или MD5 , что позволяет использовать эти ссылки для указания на файлы в нескольких сетях (а также в BitTorrent ) сразу.
Ссылки eD2k включают хэши файлов, поскольку эти хеши можно использовать в качестве уникального идентификатора файлов в сети, поэтому даже если файл, на который есть ссылка, имеет разное имя на двух компьютерах в сети, файл можно найти на обоих из них. , а фрагменты файлов можно получить из обоих источников. Это делается с помощью хеш-функции файла для вычисления его контрольной суммы, зависящей только от содержимого файла, а не от его имени.
Как и другие протоколы URI, веб-браузеры можно настроить на автоматическую обработку URI ed2k. После установки клиента eD2k протокол eD2k дополнительно регистрируется, чтобы нажатие на него в браузере автоматически запускало загрузку или спрашивало, хочет ли пользователь начать загрузку.
Формат ссылки на файл
[ редактировать ]Ссылкам на файлы предшествует токен «файл», который указывает, что это ссылка на файл, а не ссылка. server
, serverlist
, nodelist
или friend
связь. Типичная ссылка на файл eD2k также включает имя и размер файла. Пример (ссылка на трейлер Purist Edit размером 15 МБ) приведен ниже:
ed2k://|file|The_Two_Towers-The_Purist_Edit-Trailer.avi|14997504|965c013e991ee246d63d45ea71954c4d|/
Ссылки eD2k также могут включать ссылку на IP-адрес и порт конкретных клиентов, которые, как известно, совместно используют связанный файл. Это делается путем добавления списка источников после основной части ссылки, как показано в следующем примере:
ed2k://|file|The_Two_Towers-The_Purist_Edit-Trailer.avi|14997504|965c013e991ee246d63d45ea71954c4d|/|sources,202.89.123.6:4662|/
В eMule ссылка часто также содержит AICH верхний хеш |h=H52BRVWPBBTAED5NXQDH2RJDDAKRUWST| чтобы помочь восстановить файл в случае повреждения во время передачи файла.
алгоритм хеширования eD2k
[ редактировать ]Хэш-функция eD2k — это корневой хеш списка MD4 хешей . Это дает другой результат, чем простое использование алгоритма MD4.
Данные файла делятся на полные фрагменты по 9500 КиБ (9728000 байт) плюс оставшийся фрагмент, и для каждого вычисляется отдельная 128-битная контрольная сумма MD4. Если размер файла превышает 9500 КиБ (что означает, что существует более одного фрагмента), хэш eD2k вычисляется путем объединения контрольных сумм MD4 фрагментов по порядку и повторного хеширования результата с использованием MD4. В противном случае используется хэш MD4 единственного фрагмента файла без дальнейших изменений. [1]
Этот метод хеширования позволяет получателю проверить, что хеш-список соответствует исходному хешу файла eD2k, без необходимости фактического присутствия файла на диске.
В прошлом существовала некоторая неоднозначность в отношении файлов, размер которых кратен размеру фрагмента (9500 КиБ). Старые версии некоторых хеш-инструментов eD2k вычисляли хэши файлов с дополнительным 0-байтовым фрагментом в конце. Это связано с неоднозначностью термина «остаточный фрагмент» , который можно интерпретировать либо как последний фрагмент , либо как неполный фрагмент в конце . Следуя последней интерпретации, некоторые реализации добавляли фрагмент с нулевым байтом на случай, если последний фрагмент файла был полным. Однако такая практика не рекомендуется, и в настоящее время первая интерпретация используется в качестве стандарта, чтобы предотвратить появление у некоторых файлов разных хэшей в зависимости от реализации алгоритма, используемого для вычисления их хэшей. [2]
АЧИ
[ редактировать ]AICH (Advanced Intelligent Corruption Handling) — это расширение eMule. Он делит фрагмент размером 9500 КиБ на блоки по 180 КиБ и строит дерево Меркла из хэшей SHA1 53 блоков, так что корневой хэш каждого блока называется хешем блока . Хэши блоков далее передаются в дерево Меркла, корневой хэш которого является фактическим корневым хешем AICH. Меньший размер блока позволяет клиентам eMule более точно определять места повреждения. [3]
Ссылки на сервер
[ редактировать ]Ссылка на сервер — это ссылка на сервер eDonkey2000; щелчок по такой ссылке обычно добавляет ее в список серверов. Ссылки на сервер обозначаются значком server
токен в начале ссылки и имеют следующий формат:
ed2k://|server|IP|PORT|/
- IP – IP сервера, к которому нужно подключиться.
- ПОРТ — порт, на котором сервер прослушивает входящие соединения eD2k.
Пример:
ed2k://|server|207.44.222.51|4242|/
См. также
[ редактировать ]Ссылки
[ редактировать ]- ^ источник эмуля, метод
CKnownFile::CreateFromFile
. - ^ «Ed2k-хеш — MLDonkey» . mldonkey.sourceforge.net . Проверено 23 апреля 2018 г.
- ^ «Борьба с коррупцией» . www.emule-project.net .
Внешние ссылки
[ редактировать ]- Руководства по форуму emule Как удалить ассоциацию протокола связи ed2k в Windows.
- Вики aMule: ссылка на ed2k .
- Форматы ссылок Ed2k проекта emule, поддерживаемые клиентом emule.
- Инструменты ED2K — ED2K_Hash Инструмент для создания хешей ED2K.
- фантомных P2P- ссылок eD2k Поставщик