마그넷 URI
Magnet URI
고정된 서버 주소가 아닌 콘텐츠 식별자를 사용하여 리소스를 참조하는 URI; BitTorrent에서는 일반적으로 정보 해시를 포함하며, 표시 이름, 트래커 및 기타 검색 매개변수를 추가할 수 있다.
상세 설명
磁力链接(Magnet URI)는 콘텐츠 식별자를 통해 리소스를 참조하는 URI로, `magnet:?`로 시작하는 형식을 가집니다. 이 URI는 반드시 `.torrent` 파일이 저장된 고정된 웹페이지나 서버를 가리킬 필요는 없습니다. BitTorrent에서 이 링크는 일반적으로 정보 해시를 포함하며, 클라이언트는 이를 바탕으로 동일한 스웜을 찾고, 시드 메타정보를 획득한 뒤 파일 조각 요청을 시작합니다.
가장 중요한 매개변수는 exact topic, 즉 `xt`입니다. BitTorrent v1에서는 일반적으로 `xt=urn:btih:<info-hash>`로 표기되며, 해시는 16진수 또는 Base32로 표현할 수 있습니다. v2에서는 `urn:btmh:`에 다중 해시 태그가 포함된 전체 정보 해시를 사용할 수 있습니다. Magnet URI에는 `dn` 표시 이름, `tr` 트래커 주소, `x.pe` 알려진 노드 및 기타 확장 매개변수가 포함될 수 있으며, 동일한 키가 반복되어 나타날 수 있습니다. 매개변수는 URI 규칙에 따라 퍼센트 인코딩되어야 합니다.
v1 정보 해시만 포함된 링크에는 파일 목록, 조각 길이 및 각 조각의 해시가 포함되어 있지 않습니다. BEP 9를 지원하는 클라이언트는 먼저 DHT, 트래커 또는 알려진 노드를 통해 피어를 찾은 다음, 피어 연결을 통해 메타정보를 조각 단위로 가져오고, 정보 해시를 사용하여 `info` 내용을 검증합니다. 완전한 메타정보를 확보한 후에야 다운로드 과정이 기존의 `.torrent` 파일을 여는 방식과 유사해집니다. 연결 가능한 노드가 없다면, 링크의 구문이 올바르더라도 리소스를 제공할 수 없습니다. Magnet URI는 웹 페이지 다운로드 주소와 역할이 다릅니다. HTTP URL은 일반적으로 특정 서버상의 경로를 지정하는 반면, 磁力链接은 주로 여러 검색 메커니즘에서 사용할 수 있는 식별자를 전달합니다. 이 URI는 링크 내에 파일을 저장하지 않으며, 익명성, 암호화 또는 악성 콘텐츠 검사를 자동으로 제공하지도 않습니다. `dn`은 인터페이스 표시에 사용되는 권장 이름일 뿐이며, 콘텐츠의 진위 여부를 판단하는 근거로 삼을 수 없습니다.
트래커 매개변수나 표시 이름을 수정한다고 해서 `xt`가 가리키는 BitTorrent 메타정보가 반드시 변경되는 것은 아니지만, `info` 딕셔너리를 변경하고 해시를 재계산하면 새로운 링크 주제가 생성됩니다. 최신 클라이언트마다 v1, v2 및 하이브리드 토렌트에 대한 지원 범위가 다르기 때문에, `btih`와 `btmh`를 동시에 제공하는 링크는 구형 소프트웨어에서는 그중 일부만 인식될 수 있습니다.