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
| Egenskap | Magnetlänk | Torrentfil (.torrent) |
|---|---|---|
| Lagring | Textbaserad URI | Bencoded metadatafil |
| Central server krävs | Nej | Nej (men används ofta) |
| Identifiering | Hash direkt i länken (Content-based) | InfoHash lagrad i filen |
| Metadata | Hämtas senare via peers/DHT | Inbyggt i filen |
| Storlek | Mycket liten (några bytes) | Några kilobytes |
| Robusthet | Mycket hög (ingen central punkt) | Medium (beroende på filens tillgänglighet) |
Multihash och multiprotokoll
Magnetlänkar kan även innehålla flera xt-fält för att ange olika identifierare:
magnet:?xt=urn:btih:...&xt=urn:sha256:...&xt=urn:tree:tiger:...
Detta gör det möjligt att:
- identifiera samma innehåll i olika P2P-protokoll,
- övergå mellan hashfunktioner (t.ex. SHA-1 → SHA-256),
- använda distribuerade lagringssystem parallellt.
Säkerhet och integritet
Magnetlänkar har flera säkerhetsrelaterade egenskaper:
- Innehållsverifiering – klienten verifierar varje delbit mot hashlistor.
- Ingen central server – minskad attackyta mot webbsidor som distribuerar länkar.
- Öppen peer-information – P2P-nätverk exponerar IP-adresser för alla peers.
Sårbarheter och risker:
- DHT-förgiftning (malicious nodes injicerar falska peers).
- Kollisionsattacker mot SHA-1 i äldre torrents.
- Metadata-spoofing innan första bitarna är verifierade.
Säkerhetsåtgärder:
- Migrering till SHA-256-baserade V2-torrents.
- Autentiserade trackerprotokoll.
- Begränsning av inkommande anslutningar.
- Användning av VPN eller Tor (begränsad kompatibilitet).
Implementering i olika protokoll och system
Magnetlänkar används i:
- BitTorrent (standard)
- I2P-Bittorrent (krypterat)
- Freenet
- IPFS (i modifierad form via CID och multihash)
- GNUnet
De är särskilt användbara i system som förespråkar:
- decentralisering
- dataintegritet
- replikerad lagring
- bandbreddsdelning
Fördelar
- Centraliseringsfri identifiering av innehåll
- Kompatibel med DHT-baserad peer-upptäckt
- Effektiv vid driftsättning av stora filarkiv
- Minimal overhead: en magnetlänk kan distribueras via textmedia
- Robusthet vid censur eller nedstängning av resurser
Nackdelar
- Kräver DHT eller tracker för att hitta peers
- Ingen medföljande metadata utan peer-kontakt
- Kan starta långsamt i glest distribuerade svärmar
- Begränsade verifieringsmöjligheter innan nedladdning startar
Exempel
Exempel 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 även
Sidslut
https://www.linux.se/kontaka-linux-se/
Tack till Datorhjälp som har sponsrat Linux.se med webbhotell.