[PHP] torrent files uitlezen

Pagina: 1
Acties:
  • 81 views sinds 30-01-2008

  • simon
  • Registratie: Maart 2002
  • Laatst online: 14:48
Ik heb een vrij algemene vraag, waar php misschien niet eens zo belangrijk bij is. Maar hoe werken .torrent files, en hoe maak ik zo'n tracker?

Ik wil een site zoals suprnova in php opzetten, en ik doe dat in php. Maar google en GoT search kunnen mij weinig vertellen over hoe de torrent file werkt. Dus niet het protocol, maar wat de file precies inhoudt.

Alles wat ik vind gaat over het downloaden, maar ik wil graag weten hoe de torrents inelkaar zitten.

Ik heb een tracker gedownload, en ik probeer em nu door te spitten, maar deze is nogal slecht onoverzichtelijk geschreven, en ik kom er moeilijk doorheen..

Hebben hier mensen ervaring met het maken van torrent trackers?

|>


  • glrfndl
  • Registratie: Juni 1999
  • Niet online
ik geloof dat het gewoon een gecomprimeerde xml file was.
niet helemaal zeker though :)

Prepare for unforeseen consequences


  • zeroxcool
  • Registratie: Januari 2001
  • Laatst online: 27-11 18:30
Je zou misschien het een en ander over het protocol (lees: bestandsformaat) op de officiële site kunnen lezen:

http://bitconjurer.org/BitTorrent/protocol.html


lezen |:(

[ Voor 6% gewijzigd door zeroxcool op 18-06-2004 20:11 ]

zeroxcool.net - curity.eu


  • simon
  • Registratie: Maart 2002
  • Laatst online: 14:48
ZeRoXcOoL schreef op 18 juni 2004 @ 20:11:
Je zou misschien het een en ander over het protocol (lees: bestandsformaat) op de officiële site kunnen lezen:

http://bitconjurer.org/BitTorrent/protocol.html


lezen |:(
Deze is zo summier dat ik er niets mee kan, ik had em ook net al toegespeeld gekregen. Ik vind de docs als het gaat om het bestandsformaat wel tegen vallen :P

|>


  • zeroxcool
  • Registratie: Januari 2001
  • Laatst online: 27-11 18:30
Simon schreef op 18 juni 2004 @ 20:12:
[...]


Deze is zo summier dat ik er niets mee kan, ik had em ook net al toegespeeld gekregen. Ik vind de docs als het gaat om het bestandsformaat wel tegen vallen :P
Ja, ik meen dat daar ook de status codes binnen files stond, maar dat ging dus echt over het protocol zelf :).

[ Voor 1% gewijzigd door zeroxcool op 18-06-2004 20:17 . Reden: typo ]

zeroxcool.net - curity.eu


  • simon
  • Registratie: Maart 2002
  • Laatst online: 14:48
ZeRoXcOoL schreef op 18 juni 2004 @ 20:14:
[...]

Ja, ik meen dat daar ook de status codes binnen files stond, maar dat ging dus echt over het protocol zelf :).
Het enigste zinnige wat ik uit de torrent kan halen is dit:
28543:d8:announce47:http://tracker.digital-update.com:6969/announce
13:announce-listll47:http://tracker.digital-update.com:6969/ann
ounceel44:http://athena.mobilefrenzy.com:6969/announceel47
:http://tracker.phoenix-torrents.com:69/announceel45:http://beo
wulf.mobilefrenzy.com:6969/announceel42:http://tracker5.bit
uk.org.uk:6969/announceel43:http://ceres.mobilefrenzy.com:
6969/announceel38:http://hawkies-world.com:6969/announce
ee7:comment79:Gothika (2003) - single CD size DivX encode
of APX Telesync - very good quality13:creation datei1069711617e4:infod5:filesld6:lengthi1704e4:pathl32:G
othika.(APX).DivX.TS.DaDuck.NFOeed6:lengthi71413
76e4:pathl39:Gothika.(APX).DivX.TS.DaDuck.SAMPLE
.avieed6:lengthi719087616e4:pathl32:Gothika.(APX).DivX.T
S.DaDuck.avieee4:name28:Gothika.(APX).DivX.TS.DaDuck12:piece
Maar ik weet m'n god niet wat ik hier allemaal mee kan, zo kan ik nooit het aantal peers enzo listen. :P Ook het verwerken ervan is niet that easy :P

[ Voor 2% gewijzigd door simon op 18-06-2004 20:19 . Reden: even wat enters tussen gezet ]

|>


  • Soultaker
  • Registratie: September 2000
  • Laatst online: 14:58
Die bestanden zijn gecodeerde Python dictionaries. Je kunt het vergelijken met serialization in PHP.

Voor meer informatie kun je deze Bit Torrent Specification doornemen (gewoon gevonden met Google naar "torrent file specification").

edit:
Zie hier een PHP implementatie om bencoded strings te coderen en decoderen.

[ Voor 22% gewijzigd door Soultaker op 18-06-2004 20:46 ]


  • simon
  • Registratie: Maart 2002
  • Laatst online: 14:48
Soultaker schreef op 18 juni 2004 @ 20:33:
Die bestanden zijn gecodeerde Python dictionaries. Je kunt het vergelijken met serialization in PHP.

Voor meer informatie kun je deze Bit Torrent Specification doornemen (gewoon gevonden met Google naar "torrent file specification").

edit:
Zie hier een PHP implementatie om bencoded strings te coderen en decoderen.
Je bent een held :> ;) :P

Met bdecode kun je het in een array omzetten, en de info eruit halen. Heel erg bedankt. Echt heel erg bedankt.

Maar stel, dat ik niet zoals op suprnova het aantal peers wil weten? Hoe moet ik dat dan doen?

|>


  • Soultaker
  • Registratie: September 2000
  • Laatst online: 14:58
Als je je een klein beetje verdiept in hoe BitTorrent werkt (en dat is onvermijdelijk, als je Suprnova na gaat maken) dan weet je dat zo'n .torrent-bestand alleen een beschrijving is van een aangeboden bestand (grootte, bestandsnaam, welke tracker, enzovoort). Alleen de tracker weet welke peers er beschikbaar zijn. Dat is ook vrij logisch, want die peers veranderen voortdurend en de inhoud van het .torrent-bestand staat vast.

Om het aantal peers uit te zoeken moet je dus met de tracker gaan praten. Hoe je dat precies doet staat wel in de BitTorrent protocol specificaties en staat ook toegelicht op de Wiki-pagina waar ik al eerder naar verwees.

Verwijderd

is het ook mogelijk om de hele tracker zelf te maken? dus het systeem dat de 2 pcs aan elkaar koppeld?

  • Creepy
  • Registratie: Juni 2001
  • Laatst online: 18:25

Creepy

Tactical Espionage Splatterer

Ja, want zowel de specs als de source van bittorrent zijn volledig open. maar dat had je prima ook zelf kunnen opzoeken :)

Daarnaast lijkt een vraag me als deze het niet waard om een topic van meer dan twee jaar oud voor te kicken. Als je echt een vraag voor in PRG hebt dan kan je hier prima een nieuwe topic voor openen (mits natuurlijk gelet op het beleids topic hier ;) ).

"I had a problem, I solved it with regular expressions. Now I have two problems". That's shows a lack of appreciation for regular expressions: "I know have _star_ problems" --Kevlin Henney

Pagina: 1

Dit topic is gesloten.