bittorrent-peerid

Map a BitTorrent peer ID to a human-readable client name and version

Github星跟蹤圖

bittorrent-peerid travis npm downloads javascript style guide

Map a BitTorrent peer ID to a human-readable client name and version

Also works in the browser with browserify!

This module is used by WebTorrent.

install

npm install bittorrent-peerid

usage

const peerid = require('bittorrent-peerid')
const parsed = peerid('-AZ2200-6wfG2wk6wWLc')

console.log(parsed.client, parsed.version)

The parsed peerid object looks like this:

{
  client: 'Vuze',
  version: '2.2.0.0'
}

bittorrent-peerid can parse peer ids encoded in the following formats:

  • a 20-byte Buffer
  • a 40-character hex string
  • an arbitrarily-sized human-readable utf8 string (must decode to a 20-byte Buffer)

If an unknown peer id is passed in, the returned client will be unknown.

todo

  • Support known Azureus-style clients.
  • Support known Shadow-style clients.
  • Support known Mainline-style clients.
  • Support known Custom-style clients.
  • Recognize BitComet/Lord/Spirit spoofing.
  • Full support for client version parsing.
  • Full support for customized client version schemes.
  • Support unknown clients that conform to either the Azureus or Shadow-style conventions.

credit

This module is based heavily on the BTPeerIDByteDecoderDefinitions class from Azureus (Vuze). Related resources include:

license

MIT. Copyright (c) Travis Fischer and WebTorrent, LLC.

主要指標

概覽
名稱與所有者webtorrent/bittorrent-peerid
主編程語言JavaScript
編程語言JavaScript (語言數: 1)
平台
許可證MIT License
所有者活动
創建於2014-05-28 06:16:45
推送於2025-05-24 22:31:14
最后一次提交2024-09-17 00:11:55
發布數10
最新版本名稱v2.0.0 (發布於 )
第一版名稱v1.1.0 (發布於 2016-06-24 14:14:28)
用户参与
星數67
關注者數6
派生數19
提交數109
已啟用問題?
問題數15
打開的問題數6
拉請求數49
打開的拉請求數4
關閉的拉請求數1
项目设置
已啟用Wiki?
已存檔?
是復刻?
已鎖定?
是鏡像?
是私有?