Great video Arpit! After watching your video I tried writing a bencode encoder and decoder using Javascript. If anyone needs a reference, I've added a medium link in my about section. Thanks!
Hi arpit, first of all thank you for making this in depth series. I created a python script which takes torrent file as an argument and prints its contents after decoding it. I tested a bunch of torrent files, even the official ubuntu 24.04 torrent file, but I did not find md5sum in any of those. I also looked at the specification, there is no mention of md5sum in that document. I don't think it is there. I guess it makes sense too, since we are calculating sha1 already, there is no need for much weaker md5sum. also, in most torrent files, alongside "announce", there is also a key called "announce-list" which contains a list of trackers
Hi Arpit, Great content, thank youuu Trying to find the Handwritten notes on the site, i couldn't. Can you please share the link, would be really helpful. Thanks
It is and hence in a torrent network tracker is load balanced just like normal API servers. Also there is pure P2P tracker less implementation that has no point of failure. I will be discussing it on Wednesday.
So, as far as I understand, the torrent file would contain the metadata and the entire data of the file but in Bencoded form as an array of pieces. So, the torrent client doesn't need seeders to be online, right? Of course, if seeders are online, download might be faster but if they are not then the download speed takes a hit, correct?
Not the download speed but the completion of download. Seeders have all the pieces but it is possible that leechers might not have all the pieces. Hence for the pieces that are no available with anyone in the network and when there is no seeder then the download could never complete.
wait, torrent files contains the entire data of the file? If so, why do we need seeders in the first place if we have all the data? Sorry if this sounds dumb
@@0xatul Torrent file contains only SHA of each piece, after downloading the pieces from the peers torrent will compare the hash of the pieces to verify whether the downloaded file is genuine/correct one.
Hi bro, iam planning to learn backend then lld and hld, but since iam from python background do you think is it better to learn fastapi ( mircroservices) than django?
I found an encoding which looks like "d5:emailld5:where4:home4:addr15:gre@example.comed5:where4:work4:addr12:gre@work.comee4:name14:Grace R. Emlin7:address15:123 Main Streete" . i am finding it difficult to determine if it's a dictionary of lists or not? Also do you know any bencoding parser I could use maybe?
Great video Arpit! After watching your video I tried writing a bencode encoder and decoder using Javascript. If anyone needs a reference, I've added a medium link in my about section. Thanks!
Thank you for this, Arpit!
Hi arpit, first of all thank you for making this in depth series.
I created a python script which takes torrent file as an argument and prints its contents after decoding it.
I tested a bunch of torrent files, even the official ubuntu 24.04 torrent file, but I did not find md5sum in any of those.
I also looked at the specification, there is no mention of md5sum in that document. I don't think it is there. I guess it makes sense too, since we are calculating sha1 already, there is no need for much weaker md5sum.
also, in most torrent files, alongside "announce", there is also a key called "announce-list" which contains a list of trackers
great video, a fan from linkedin
Hi Arpit,
Great content, thank youuu
Trying to find the Handwritten notes on the site, i couldn't.
Can you please share the link, would be really helpful.
Thanks
Was about to login , got this video notification , now will login after watching this video 😅
Hahahaha 🙈🙈
Hi, what if at any point of time that tracker is down... wouldn't it be single point of failure?
It is and hence in a torrent network tracker is load balanced just like normal API servers.
Also there is pure P2P tracker less implementation that has no point of failure. I will be discussing it on Wednesday.
Also, a torrent can have multiple trackers.
So, as far as I understand, the torrent file would contain the metadata and the entire data of the file but in Bencoded form as an array of pieces.
So, the torrent client doesn't need seeders to be online, right? Of course, if seeders are online, download might be faster but if they are not then the download speed takes a hit, correct?
Not the download speed but the completion of download. Seeders have all the pieces but it is possible that leechers might not have all the pieces.
Hence for the pieces that are no available with anyone in the network and when there is no seeder then the download could never complete.
I will be talking about it in next couple of videos.
wait, torrent files contains the entire data of the file? If so, why do we need seeders in the first place if we have all the data?
Sorry if this sounds dumb
@@0xatul no it does not. It only contains the SHA of each piece.
@@0xatul Torrent file contains only SHA of each piece, after downloading the pieces from the peers torrent will compare the hash of the pieces to verify whether the downloaded file is genuine/correct one.
tu viens de sauver mon ppex brother
Hi bro, iam planning to learn backend then lld and hld, but since iam from python background do you think is it better to learn fastapi ( mircroservices) than django?
Start with Django and then Fast API
@@AsliEngineering thanks got it
but how does client knows where to get torrent file from ??
that is what you download from torrent websites like piratebay, torrentz, etc.
I have been nerd-sniped. Now I want to go write the bencode decoder
I found an encoding which looks like "d5:emailld5:where4:home4:addr15:gre@example.comed5:where4:work4:addr12:gre@work.comee4:name14:Grace R. Emlin7:address15:123 Main Streete" . i am finding it difficult to determine if it's a dictionary of lists or not? Also do you know any bencoding parser I could use maybe?
Starting with d is dictionary
I love torrent
I recently found your youtube channel, this playlist, this cannel is a gem 😍
Love n respect 🖤🫡