Node.js去除邪恶的torrent文件信息
2012,一个日本电影叫abs-130引起互联网的冲击。在互联网的开始出现了一种像狗一样的狗的现象。现在,它已经成为2012互联网上的一件大事。2014,净网行动如火如荼地进行,所有主要的互联网公司都表明,XX云和雷把所有邪恶种子的种子都带走了!(还有我的老师!)!!!)
所有大的SkyDrive和下载的应用程序从种子中提取关键信息,使种子的出了门。在这些关键信息隐藏让我们找出答案。
种子文件的结构
以下内容来自维基百科
种子文件本质上是一个文本文件,包含跟踪信息和文件信息的两部分,跟踪信息主要是跟踪服务器的地址和跟踪服务器的设置,这是BT下载所需要的。档案信息是基于目标文件的计算产生的,其结果是根据BitTorrent协议的bencode编码规则,其主要原理是提供下载的文件到虚拟块相同的大小,块大小必须是2K的整数次幂(因为它是一个虚拟的块,每块没有硬盘文件),和每个信息块和Hash验证码写入到种子文件的索引;因此,种子文件下载的文件索引。
上面的图片是一个典型的种子的结构,和公认的邪恶的关键词是隐藏在名称和文件名称中包含种子的名字,如:abcd-123性感XXXX。和路径在文件中包含的所有文件的信息被下载,如草X社区的最新地址。txt,等等。
Node.js和解析种子库
为了找出邪恶信息的种子,我们问了Node.js和解析torrent图书馆助理。
实验制备:
一粒种子是Node.js计算机。
首先我们使用NPM安装解析种子库,这可以帮助我们快速找到信息的种子。
NPM安装解析torrent
var =要求(FS );
无功parsetorrent =需要('parse-torrent);
VaR信息= parsetorrent(fs.readfilesync(种子));
console.log(信息);
库将解析种子的信息并以对象的形式返回给我们。
看看结果:
名称:
文件夹:
您可以看到,解析库中解析的名称和文件的信息以缓冲的形式存储。
清洗种子
如何清除种子中的邪恶信息,杀死摇篮中邪恶的种子。最重要的是清除名称和文件中路径的信息。
功能cleaninfo(信息){
MD5加密的种子
info.name = MD5(信息。姓名);
信息{ 'name。UTF-8} = MD5(信息{ 'name。UTF-8});
var文件= info.files;
对于(var i = 0;i < files.length;i++){
var文件=文件{ };
对于(文件中的var键){
如果(关键= =路径| |关键= 的道路。UTF-8){
对于(var j = 0;j <文件{键};长度;j + +){
var text =文件{ } { }的关键{J}. toString();
无功dotindex = text.lastindexof(,);
MD5加密的种子
{ } { }文件关键J = MD5(text.slice(0,dotindex))+ text.slice(dotindex,文本长度);
}
}
}
}
返回的信息;
}
在清理信息对象后生成一个洪流文件
VaR buf = parsetorrent.totorrentfile({
信息:cleaninfos {我}
});
fs.writefile(目录+/+ cleaninfos {我}。姓名+激流。
之后,我们邪恶的种子文件变成这样。
实战阶段
首先,为XX云的离线下载准备种子。
起初它被拒绝了。
然后运行脚本进行清理。
结cleantorrent iptd-xxx.torrent
下载成功了!
源代码在这里,看看我下载的内容!!!
(***)脱下你给我看这个!!!)
最后
这篇文章纯属技术讨论。谢谢你的阅读。请指出我的缺点。
请花些时间与朋友分享这篇文章,或者留下评论,我们要感谢你的支持!