Magnetlänk
Magnetlänk
En magnetlänk (eng. Magnet URI) är ett innehållsidentifierande URL-format som används för att referera till data i distribuerade system, framför allt inom BitTorrent-protokollet. Till skillnad från traditionella URL:er, som pekar på en specifik plats eller server, pekar en magnetlänk på ett kryptografiskt hashvärde som representerar innehållets identitet. Detta gör magnetlänkar oberoende av centraliserade resurser och bättre anpassade för decentraliserade P2P-miljöer.
Magnetlänkar definieras i Magnet URI-schemat och har stöd i de flesta moderna BitTorrent-klienter, distribuerade hash-tabeller (DHT) samt andra innehållsbaserade adresseringssystem.
Teknik och designprincip
Magnetlänkar bygger på konceptet Content-Based Addressing, där innehållet identifieras med ett hashvärde i stället för en filbana eller nätverksadress. Det innebär att:
- samma data ger samma hash, oavsett var den lagras.
- klienter kan verifiera innehållet med hashkontroll.
- distribuerade system kan lokalisera innehåll genom DHT eller andra sökalgoritmer.
Det vanligaste identifieringsschemat är:
urn:btih:– BitTorrent InfoHash (SHA-1 eller SHA-256)
Nyare bittorrent-implementationer använder ofta SHA-256 enligt BEP 52.
Struktur och URI-format
En magnetlänk består av en URI enligt schemat:
magnet:?xt=urn:btih:<infohash>&dn=<filnamn>&tr=<tracker-URL>&xl=<storlek>
De vanligaste parametrarna:
xt(Exact Topic)- Unik identifierare för innehållet. Exempel:
xt=urn:btih:0123456789ABCDEF0123456789ABCDEF01234567
dn(Display Name)- Förslag på filnamn som klienten kan visa.
tr(Tracker)- En valfri tracker-URL för att effektivisera peer-upptäckt utanför DHT.
ws(Web Seed)- HTTP- eller HTTPS-URL där innehållet kan hämtas direkt.
xl(Exact Length)- Filens storlek i byte.
Magnetlänkar kan innehålla flera xt-värden, vilket används i Multi-Hash och Multi-Protocol-scenarier.
InfoHash och hashfunktioner
I BitTorrent är InfoHash en hash av torrentens metainfo-struktur. Ursprungligen användes:
- SHA-1 – 160-bitars hash (BEP 3, klassisk BitTorrent)
På grund av säkerhetsproblem med SHA-1 används nu:
- SHA-256 – 256-bitars hash (BEP 52, V2-torrents)
Magnetlänkar stödjer båda formaten. En klient som arbetar med V2-torrents kan behöva omvandla eller jämföra hashvärden för kompatibilitet.
Peer-upptäckt via DHT
Magnetlänkar fungerar utan torrentfil tack vare Distributed Hash Table (DHT). När en klient öppnar en magnetlänk:
- Klienten extraherar InfoHash.
- Klienten gör en DHT-query (typiskt Kademlia-variant enligt BEP 5).
- Andra noder i nätverket som känner till InfoHash returnerar listor över peers.
- Klienten etablerar BitTorrent-anslutningar mot dessa peers.
Det innebär att torrentfiler endast behövs för metadata; själva peer-upptäckten kräver inte en centraliserad tracker.
Magnetlänkar vs .torrent-filer
| | | | | | - | ---------------------------- | - | ------------------------------- | | | Textbaserad URI | | Bencoded metadatafil | | | | | | | | Nej | | Nej (men ofta praktiskt) | | | | | | | | Hash direkt i länken | | Hash inuti filen | | | | | | | | Kräver DHT och peer metadata | | Inbyggt i .torrent | | | | | | | | Bytes | | Kilobytes | | | | | | | | Mycket hög | | Medium (trackers kan försvinna) | | | | | |
Multihash och multiprotokollMagnetlänkar kan även innehålla flera magnet:?xt=urn:btih:...&xt=urn:sha256:...&xt=urn:tree:tiger:... Detta gör det möjligt att:
Säkerhet och integritetMagnetlänkar har flera säkerhetsrelaterade egenskaper:
Sårbarheter och risker:
Säkerhetsåtgärder:
Implementering i olika protokoll och systemMagnetlänkar används i:
De är särskilt användbara i system som förespråkar:
Fördelar
Nackdelar
ExempelExempel på magnetlänk med flera parametrar: magnet:?xt=urn:btih:0123456789ABCDEF0123456789ABCDEF01234567&dn=exempel.iso&tr=udp://tracker.example.org:80&ws=https://example.org/files/exempel.iso Se ävenSidsluthttps://www.linux.se/kontaka-linux-se/
|