anthony-joal
10.08.17, 18:01
Please before reading this thread, read Client file format (https://www.sb-innovation.de/f275/announce-parameters-url-headers-33455/).
Since BitTorrent clients are updated regularly, i'll post the default file template for qbittorrent. And will list any changes for a particular version against this default template.
Default template
{
"keyGenerator": {
"length": 8,
"type": "hash_no_leading_zero",
"refreshOn": "TORRENT_PERSISTENT",
"case": "upper"
},
"peerIdGenerator": {
"pattern": "xxxxxxxxxxxxxxxx",
"refreshOn": "NEVER",
"shouldUrlEncode": false
},
"urlEncoder": {
"encodingExclusionPattern": "[A-Za-z0-9_~\(\)\!\.\*-]",
"encodedHexCase": "lower"
},
"query": "info_hash={infohash}&peer_id={peerid}&port={port}&uploaded={uploaded}&downloaded={downloaded}&left={left}&corrupt=0&key={key}&event={event}&numwant={numwant}&compact=1&no_peer_id=1&supportcrypto=1&redundant=0",
"numwant": 200,
"numwantOnStop": 0,
"requestHeaders": [
{ "name": "Host", "value": "xxxxx"},
{ "name": "User-Agent", "value": "xxxxxxxxxxxxxxxx" },
{ "name": "Accept-Encoding", "value": "gzip" },
{ "name": "Connection", "value": "close" }
]
}
4.1.4
peerIdGenerator.pattern: -qB4160-[A-Za-z0-9_~\(\)\!\.\*-]{12}
requestHeaders.User-Agent: qBittorrent/4.1.6
4.1.5
peerIdGenerator.pattern: -qB4150-[A-Za-z0-9_~\(\)\!\.\*-]{12}
requestHeaders.User-Agent: qBittorrent/4.1.5
4.1.4
peerIdGenerator.pattern: -qB4140-[A-Za-z0-9_~\(\)\!\.\*-]{12}
requestHeaders.User-Agent: qBittorrent/4.1.4
4.1.3
peerIdGenerator.pattern: -qB4130-[A-Za-z0-9_~\(\)\!\.\*-]{12}
requestHeaders.User-Agent: qBittorrent/4.1.3
4.1.2
peerIdGenerator.pattern: -qB4120-[A-Za-z0-9_~\(\)\!\.\*-]{12}
requestHeaders.User-Agent: qBittorrent/4.1.2
4.1.1
peerIdGenerator.pattern: -qB4110-[A-Za-z0-9_~\(\)\!\.\*-]{12}
requestHeaders.User-Agent: qBittorrent/4.1.1
4.1.0
peerIdGenerator.pattern: -qB4100-[A-Za-z0-9_~\(\)\!\.\*-]{12}
requestHeaders.User-Agent: qBittorrent/4.1.0
4.0.4
peerIdGenerator.pattern: -qB4040-[A-Za-z0-9_~\(\)\!\.\*-]{12}
requestHeaders.User-Agent: qBittorrent/4.0.4
4.0.3
peerIdGenerator.pattern: -qB4030-[A-Za-z0-9_~\(\)\!\.\*-]{12}
requestHeaders.User-Agent: qBittorrent/4.0.3
4.0.2
peerIdGenerator.pattern: -qB4020-[A-Za-z0-9_~\(\)\!\.\*-]{12}
requestHeaders.User-Agent: qBittorrent/4.0.2
4.0.1
peerIdGenerator.pattern: -qB4010-[A-Za-z0-9_~\(\)\!\.\*-]{12}
requestHeaders.User-Agent: qBittorrent/4.0.1
4.0.0
peerIdGenerator.pattern: -qB4000-[A-Za-z0-9_~\(\)\!\.\*-]{12}
requestHeaders.User-Agent: qBittorrent/4.0.0
3.3.16
peerIdGenerator.pattern: -qB33G0-[A-Za-z0-9_~\(\)\!\.\*-]{12}
requestHeaders.User-Agent: qBittorrent/3.3.16
3.3.15
peerIdGenerator.pattern: -qB33F0-[A-Za-z0-9_~\(\)\!\.\*-]{12}
requestHeaders.User-Agent: qBittorrent/3.3.15
3.3.14
peerIdGenerator.pattern: -qB33E0-[A-Za-z0-9_~\(\)\!\.\*-]{12}
requestHeaders.User-Agent: qBittorrent/3.3.14
3.3.13
peerIdGenerator.pattern: -qB33D0-[A-Za-z0-9_~\(\)\!\.\*-]{12}
requestHeaders.User-Agent: qBittorrent/3.3.13
3.3.7
peerIdGenerator.pattern: -qB3310-[A-Za-z0-9_~\(\)\!\.\*-]{12}
requestHeaders.User-Agent: qBittorrent v3.3.7
3.3.1
peerIdGenerator.pattern: -qB3310-[A-Za-z0-9_~\(\)\!\.\*-]{12}
requestHeaders.User-Agent: qBittorrent v3.3.1
If you want to get the "user-agent", "peer_id prefix" and "key algorithm" for the latest qBittorrent release you can also download and use my bash script that parse the qBittorrent source code from Github, download here (https://github.com/anthonyraymond/joal/tree/master/scripts/bittorrent-client-update-detector)
Download both qBittorrent.sh and libtorrent_funcs.sh and then run qBittorrent.sh with bash.
20149
Since BitTorrent clients are updated regularly, i'll post the default file template for qbittorrent. And will list any changes for a particular version against this default template.
Default template
{
"keyGenerator": {
"length": 8,
"type": "hash_no_leading_zero",
"refreshOn": "TORRENT_PERSISTENT",
"case": "upper"
},
"peerIdGenerator": {
"pattern": "xxxxxxxxxxxxxxxx",
"refreshOn": "NEVER",
"shouldUrlEncode": false
},
"urlEncoder": {
"encodingExclusionPattern": "[A-Za-z0-9_~\(\)\!\.\*-]",
"encodedHexCase": "lower"
},
"query": "info_hash={infohash}&peer_id={peerid}&port={port}&uploaded={uploaded}&downloaded={downloaded}&left={left}&corrupt=0&key={key}&event={event}&numwant={numwant}&compact=1&no_peer_id=1&supportcrypto=1&redundant=0",
"numwant": 200,
"numwantOnStop": 0,
"requestHeaders": [
{ "name": "Host", "value": "xxxxx"},
{ "name": "User-Agent", "value": "xxxxxxxxxxxxxxxx" },
{ "name": "Accept-Encoding", "value": "gzip" },
{ "name": "Connection", "value": "close" }
]
}
4.1.4
peerIdGenerator.pattern: -qB4160-[A-Za-z0-9_~\(\)\!\.\*-]{12}
requestHeaders.User-Agent: qBittorrent/4.1.6
4.1.5
peerIdGenerator.pattern: -qB4150-[A-Za-z0-9_~\(\)\!\.\*-]{12}
requestHeaders.User-Agent: qBittorrent/4.1.5
4.1.4
peerIdGenerator.pattern: -qB4140-[A-Za-z0-9_~\(\)\!\.\*-]{12}
requestHeaders.User-Agent: qBittorrent/4.1.4
4.1.3
peerIdGenerator.pattern: -qB4130-[A-Za-z0-9_~\(\)\!\.\*-]{12}
requestHeaders.User-Agent: qBittorrent/4.1.3
4.1.2
peerIdGenerator.pattern: -qB4120-[A-Za-z0-9_~\(\)\!\.\*-]{12}
requestHeaders.User-Agent: qBittorrent/4.1.2
4.1.1
peerIdGenerator.pattern: -qB4110-[A-Za-z0-9_~\(\)\!\.\*-]{12}
requestHeaders.User-Agent: qBittorrent/4.1.1
4.1.0
peerIdGenerator.pattern: -qB4100-[A-Za-z0-9_~\(\)\!\.\*-]{12}
requestHeaders.User-Agent: qBittorrent/4.1.0
4.0.4
peerIdGenerator.pattern: -qB4040-[A-Za-z0-9_~\(\)\!\.\*-]{12}
requestHeaders.User-Agent: qBittorrent/4.0.4
4.0.3
peerIdGenerator.pattern: -qB4030-[A-Za-z0-9_~\(\)\!\.\*-]{12}
requestHeaders.User-Agent: qBittorrent/4.0.3
4.0.2
peerIdGenerator.pattern: -qB4020-[A-Za-z0-9_~\(\)\!\.\*-]{12}
requestHeaders.User-Agent: qBittorrent/4.0.2
4.0.1
peerIdGenerator.pattern: -qB4010-[A-Za-z0-9_~\(\)\!\.\*-]{12}
requestHeaders.User-Agent: qBittorrent/4.0.1
4.0.0
peerIdGenerator.pattern: -qB4000-[A-Za-z0-9_~\(\)\!\.\*-]{12}
requestHeaders.User-Agent: qBittorrent/4.0.0
3.3.16
peerIdGenerator.pattern: -qB33G0-[A-Za-z0-9_~\(\)\!\.\*-]{12}
requestHeaders.User-Agent: qBittorrent/3.3.16
3.3.15
peerIdGenerator.pattern: -qB33F0-[A-Za-z0-9_~\(\)\!\.\*-]{12}
requestHeaders.User-Agent: qBittorrent/3.3.15
3.3.14
peerIdGenerator.pattern: -qB33E0-[A-Za-z0-9_~\(\)\!\.\*-]{12}
requestHeaders.User-Agent: qBittorrent/3.3.14
3.3.13
peerIdGenerator.pattern: -qB33D0-[A-Za-z0-9_~\(\)\!\.\*-]{12}
requestHeaders.User-Agent: qBittorrent/3.3.13
3.3.7
peerIdGenerator.pattern: -qB3310-[A-Za-z0-9_~\(\)\!\.\*-]{12}
requestHeaders.User-Agent: qBittorrent v3.3.7
3.3.1
peerIdGenerator.pattern: -qB3310-[A-Za-z0-9_~\(\)\!\.\*-]{12}
requestHeaders.User-Agent: qBittorrent v3.3.1
If you want to get the "user-agent", "peer_id prefix" and "key algorithm" for the latest qBittorrent release you can also download and use my bash script that parse the qBittorrent source code from Github, download here (https://github.com/anthonyraymond/joal/tree/master/scripts/bittorrent-client-update-detector)
Download both qBittorrent.sh and libtorrent_funcs.sh and then run qBittorrent.sh with bash.
20149