Magnet URI scheme

Magnet is a URI scheme that defines the format of magnet links, a de facto standard for identifying files (URN) by their content, via cryptographic hash value rather than by their location.
Although magnet links can be used in a number of contexts, they are particularly useful in peer-to-peer file sharing networks because they allow resources to be referred to without the need for a continuously available host, and can be generated by anyone who already has the file, without the need for a central authority to issue them. This makes them popular for use as "guaranteed" search terms within the file sharing community where anyone can distribute a magnet link to ensure that the resource retrieved by that link is the one intended, regardless of how it is retrieved.
History.
The standard for Magnet URIs was developed by Bitzi in 2002, partly as a "vendor- and project-neutral generalization" of the codice_1 and codice_2 URI schemes used by eDonkey2000 and Freenet, respectively, and attempts to follow official IETF URI standards as closely as possible. BitTorrent introduced the codice_3 protocol in 2020 as part of its BitTorrent v2 changes.
Format.
Magnet URIs consist of a series of one or more parameters, the order of which is not significant, formatted in the same way as query strings that ordinarily terminate HTTP URLs. The most common parameter is "xt" ("exact topic"), which is generally a URN formed from the content hash of a particular file, e.g.:
codice_4
This refers to the hex-encoded SHA-1 hash (btih, "BitTorrent info-hash") of the torrent file info section in question. Note that, although a particular file is indicated, an availability search for it must still be carried out by the client application.
Parameters.
The following parameters are supported:
The standard also allows for application-specific experimental parameters, which must begin with "x."
xt exact topic.
The xt parameter specifies the URN for a given p2p protocol. Its purpose is to provide a search parameter for finding the metadata to the torrent. This effectively acts as a replacement to a .torrent file, which itself contains the torrent metadata, by instead searching the p2p network (using the URN) for that metadata. Each protocol handles a URN uniquely; for example, codice_5 uses the btih (BitTorrent v1 protocol), so a BitTorrent client can take the hash and lookup the torrent's metadata in the BitTorrent DHT. In the case of DHT the client searches through a set of pre-known nodes and requests the metadata for an infohash; those nodes will make the same request to other known nodes until eventually a swarm is found and returned.
xt also allows for a group setting. Multiple files can be included by adding a count number preceded by a dot (".") to each link parameter.
Some clients require Base32 of info_hash (e.g., Vuze).
Web links to the file.
There are two types of download links that a Magnet link can include as a direct or backup source.
Supplement format (x.).
For experimental and self-complementing informal options, the prefix followed by a chosen suffix letter can be used. These names are guaranteed to never be standardized.