V2EX 09月29日 10:07
PT下载新思路:修改种子实现不计下载量
index_new5.html
../../../zaker_core/zaker_tpl_static/wap/tpl_guoji1.html

 

本文作者分享了入坑PT一年来的探索,从bencode到tracker协议,深入理解了PT机制。文章重点介绍了如何利用BT客户端汇报数据(downloaded和uploaded)的机制漏洞,实现不计入下载量的PT下载。作者开发了一个tracker代理,能够缓存peer列表,在客户端汇报时返回缓存数据,从而达到不计下载量的效果。此外,该方法还能整合不同PT站点的peer列表,增加连接的peer数量,提升下载效率。文章还提到,作者开发了一个简单的网页工具,用户上传种子后即可下载修改后的种子,方便添加到BT客户端使用。文末提供了网站和GitHub仓库链接。

💡 PT下载机制的原理与漏洞:PT站通过客户端汇报的downloaded和uploaded数据来统计用户流量,但这些字段并非最初为限制流量比率而设计,因此存在可利用的漏洞。作者通过深入学习bencode和tracker协议,发现了这一机制的实现细节。

🚀 Tracker代理实现不计下载量:作者开发了一个tracker代理,当BT客户端向其汇报时,代理会检查并返回已缓存的、未过期的种子peer列表。如果缓存中不存在,则向真实tracker请求,并将获取到的peer列表进行缓存,从而实现客户端汇报下载量时,实际下载量不被计入PT站点的统计。

🌐 整合Peer列表与提升下载效率:该tracker代理的另一个潜在好处是,当不同PT站点的用户下载同一个种子时,他们的peer列表可以被整合。这意味着用户可能连接到更多来自不同站点的peers,从而有机会提升下载速度和稳定性。

🛠️ 简易种子修改工具:作者开发了一个简单的网页工具,用户只需上传种子文件,工具会自动修改并提供修改后的种子文件供下载。用户将修改后的种子添加到BT客户端即可开始下载,实现不计下载量的目标。网站和GitHub仓库链接也已提供。

我入坑 PT 也快一年了,之前偶然读到了一篇博客,讲的是 PT 机制的几个有意思的漏洞。正好我对 BT 也不是很了解,就一路从 bencode 学到 tracker 协议,现在也算是对这块比较熟悉了。

PT 只靠客户端汇报的 downloadeduploaded 来统计数据,而这些字段原本不是设计来限制 ratio 的,所以自然就留下了很多可以做文章的点。我就跟着博客作者的思路,实现了一个 tracker “代理”,当 BT 客户端向代理汇报的时候代理就会检查缓存里是否有这个种子的 peer 列表,如果有并且没过期就直接返回,否则向真实 tracker 发起一个“开始下载”的请求,得到 peer 列表并存储。这样就可以实现不计入下载量的效果。

而且可能还有一个额外的好处,就是如果两个人下载同一个种子,但是通过不同的 PT 站,那么 peer 列表会被整合,让每个人都能连接到更多的 peer 。

因为我不太会前端,所以网页做得比较简单,就一个按钮,把种子上传之后会自动修改并下载修改后的种子,然后添加到 BT 客户端就可以下载了。如果感兴趣可以试一试。

网站: https://tracker.submy.org

仓库: https://github.com/arielherself/btc

Fish AI Reader

Fish AI Reader

AI辅助创作,多种专业模板,深度分析,高质量内容生成。从观点提取到深度思考,FishAI为您提供全方位的创作支持。新版本引入自定义参数,让您的创作更加个性化和精准。

FishAI

FishAI

鱼阅,AI 时代的下一个智能信息助手,助你摆脱信息焦虑

联系邮箱 441953276@qq.com

相关标签

PT Private Tracker BT BitTorrent Tracker Proxy Ratio Download Count bencode tracker protocol
相关文章