Pull to refresh

Интернет на магнитах 1 — Магнит

Reading time 4 min
Views 4.6K

Итак, приходит время когда одноранговые сети такие как BitTorrent завоёвывают всё большее интернет-пространство, но окончательная победа придет только тогда, когда они станут невидимы для пользователей и сольются в единое целое с привычным сёрфингом в сети Интернет.


В этом им поможет magnet (магнет-ссылка или просто магнит). Это первый вариант p2p ссылки, который является универсальным и расширяемым стандартом, не привязанным к конкретной сети.


Концепция интернета на магнитах состоит в том чтобы не зависеть от программного обеспечения, протокола или способа передачи данных. Не важно каким образом вы получаете файл. Имея магнит вы можете найти файл и удостоверится что получили именно то что заказывали.


Что же из себя представляет магнит?


Начинается он, следуя стандартам, с названия протокола (в случае магнита для передачи данных используются разные протоколы) двоеточия и вопроса (magnet:?), после которого сразу идут параметры ссылки. Параметры могут следовать в любом порядке, но p2p клиенты накладывают свои ограничения.


Параметры


Самым главным параметром в магните является xt (eXact Topic).


magnet:?xt=urn:btih:QHQXPYWMACKDWKP47RRVIV7VOURXFE5Q

Он содержит в себе главное отличие магнита от обычной ссылки (ну кроме отсутствия основной части url), а именно хэш. Хэш из магнита используется для поиска и проверки целостности полученных данных (или файла).


Далее по важности следуют:
xl (eXact Length) — Размер файла в байтах (в торрентах не нужен)
dn (Display Name) — Имя файла
as (Acceptable Source) — Веб-ссылка на файл в Интернете


Ну а об остальных параметрах можно узнать из вики.


Хеш


Магнит может содержать не один хеш, и тем самым позволяет использовать не одну p2p сеть для получения данных.


magnet:?xt=urn:ed2k:354B15E68FB8F36D7CD88FF94116CDC1
&xl=10826029&dn=mediawiki-1.15.1.tar.gz
&xt=urn:tree:tiger:7N5OAMRNGMSSEUE3ORHOKWN4WWIQ5X4EBOOTLJY
&xt=urn:sha1:XRX2PEFXOOEJFRVUCX6HMZMKS5TWG4K5
&xt=urn:aich:7ZDRR3ZQW4JMHUQZUMJGQN2VNGLV3CVN
&xt=urn:btih:QHQXPYWMACKDWKP47RRVIV7VOURXFE5Q

Правда, это не гарантирует наличие источников в ней. У некоторых людей установлены клиенты для нескольких p2p сетей, и, благодаря правильной
организации, они могут наладить поток данных из одной в другую.


url


Так же магниты могут в себя включать и привычные нам http ссылки в параметре as (Acceptable Source). Но их умеют использовать всего два p2p клиета — это Shareaza и LimeWare.


magnet:?as=http://download.wikimedia.org/mediawiki/1.15/mediawiki-1.15.1.tar.gz

В будущем я надеюсь на то, что эта ситуация исправится за счёт того, что сами браузеры научатся читать поле as из магнита и использовать его для получения данных в отсутствии установленных p2p клиентов. Ну а сейчас мы можем эту ситуацию поправить, превратив магнит в url+magnet. Для этого после обычной ссылки на файл после # добавим магнит.


http://download.wikimedia.org/mediawiki/1.15/mediawiki-1.15.1.tar.gz#magnet:?xt=urn:btih:QHQXPYWMACKDWKP47RRVIV7VOURXFE5Q

тест


По клику по такой ссылке браузер отсекает часть после # (включая сам символ) и отправляет запрос, таким образом магнит остаётся не видимым для сервера (к сожалению это не верно для некоторых Downloader'ов) и никак не влияет на его работу. В случае недоступности файла пользователь может стереть из строки адреса часть, предшествующую magnet:?, и, нажав Enter, начать закачку файла из p2p сети. Можно написать плагин или UserScript, который это будет делать автоматически.


Такие ссылки могут использоваться и внутри контейнера video HTML5. И используя пункт копировать Url, мы скопируем не только url, но и магнит.


Также такая запись тесно связывает url и магнит показывая что это один и тот же файл.


Конец первой части.


Список статей


  1. Интернет на магнитах 1 — Магнит
    P2P сети завоёвывают всё большее интернет-пространство, но окончательная победа придет только тогда, когда они станут невидимы для пользователей и сольются в единое целое с привычным сёрфингом в сети Интернет.
    В этом им поможет magnet (магнет-ссылка или просто магнит). Это первый вариант p2p ссылки, который является универсальным и расширяемым стандартом, не привязанным к конкретной сети.
  2. Интернет на магнитах 2 — Гипертекст
    Пора дать волю гипертексту и расширить возможности его распространения не только классическим клиент-серверным способом, но и в одноранговых сетях. Для того, чтобы воспринимался он в полной мере малыми усилиями, придется постараться вебмастеру.
  3. Интернет на магнитах 3 — P2P Сайт и Форум
    Для создания и обновления магнитного сайта с множеством страниц нам понадобится электронная подпись. Нужна она чтобы обозначить источник и связать между собой страницы сайта. Для её создания и использования можно воспользоваться пакетом GnuPG.
  4. Интернет на магнитах 4 — Делим магнит на части
    В своих статьях «интернет на магнитах» я предлагал публиковать универсальные магниты с помощью которых можно скачать файл из любой p2p сети (Gnutella, Gnutella2, Edonkey2000, DirectConnect, BitTorrent). Их можно получить, либо с помощью программы rhash, либо смешав разные магниты и ссылки на файл на странице сервиса Magnet Converter. Но есть проблема в том что не многие клиенты для p2p сетей лояльно относятся к произвольному порядку параметров в магните. Я решил написать скрипт который исправляет эту ситуацию на всех страницах интернета.
  5. Интернет на магнитах 5 — Маяки и сообщения(личные, публичные и обновления)
    Не все P2P сети имеют возможность отправки и приёма личных сообщений. Также не всегда сообщение можно оставить в оффлайн. Мы исправим этот недостаток используя три возможности P2P сетей: поиск файла, просмотр шары(списка опубликованных файлов) или комментарии к файлу.
Tags:
Hubs:
+46
Comments 18
Comments Comments 18

Articles