Evan Martin (evan) wrote in evan_tech,
Evan Martin

protocol hackery

When I was talking to Jeff (who I think said he was involved in reverse-engineering ICQ) about protocol stuff, he mentioned he knows the guy who wrote gnapster (for context: I wrote “gnome-napster”, Jeff’s friend wrote “gnapster”, and four wrote “gnap”, and they all did about the same thing and sucked a whole bunch). This friend, anyway, is supposedly now working on a multiprotocol file-“sharing” client that speaks a bunch of different protocols. From there, MLDonkey came up.

MLDonkey is this crazy awesome multiprotocol file-“sharing” client that is completely written in OCaml, which is pretty cool in itself. But Jeff was telling me: they were the first to figure out Fasttrack, the superfancy protocol spoken by Kazaa and Morpheus and (etc.), which is where all the Napster-style P2P action is these days (bittorrent is big too, but it works from a different model). The Kazaa people make their money off of ads and spyware in the client, so they don’t want other clients on their network, so they change the protocol regularly to try to keep clients off. (See also: all of the battles people went through to get AIM’s OSCAR to work.)

Here’s the punchline: Fasttrack changed in some mysterious way, and nobody could figure it out. So some (totally insane) people wrote this program that extracts the machine code from the Kazaa executable and generates code that emulates a PC well enough for the code to run. It’s reportedly some horrible 20,000 line file/function that takes in some input and gives you back some magical output that just manages to work.

(Disclaimer: the facts were likely exaggerated in this to make it sound more legendary.)

Update: found it! Hahaha, that’s so ugly slash awesome!

  • blog moved

    As described elsewhere, I've quit LiveJournal. If you're interested in my continuing posts, you should look at one of these (each contains feed…

  • dremel

    They published a paper on Dremel, my favorite previously-unpublished tool from the Google toolchest. Greg Linden discusses it: "[...] it is capable…

  • treemaps

    I finally wrote up my recent adventures in treemapping, complete with nifty clickable visualizations.

  • Post a new comment


    default userpic
    When you submit the form an invisible reCAPTCHA check will be performed.
    You must follow the Privacy Policy and Google Terms of use.