iTMS-4-ALL
by Volker Weber
Jason Rohrer has reverse-engineered the proprietary and encyrpted protocol between iTunes and the iTunes Music Store (iTMS) and implemented a Perl script. Now the possibilities are endless: from "borrowing" the iTunes data for use in other apps to a full-fledged iTMS client for Linux.
Comments
Hmm, how many days till the lawyers roll in? I hereby propose a new unit for measuring that time: the lawyer-day.
(So, how many lawyer-days do we give this project to live? The bets are up ... ;-)
Who cares? The 'damage' is done. Until Apple releases a new version of iTunes and iTMS and updates the proprietary protocol once again to work around the re-engineering.
Here's an interesting site that converted the Perl interface into PHP. I think if he's using PHP it is going to be a lot easier for other web site to follow, since the Perl implemetation of itms-4-all is quite difficult because of the decryption library that needed to be installed the web site.
Link
Contrary to the last comment, the crypt modules for it to work aren't, in fact, hard to install at all; doing it by hand, or using the excellent CPAN.pm module is easy and takes but a few minutes.
From looking at the original iTMS-4-ALL program, it's apparent it was quickly thrown together: no modular code, content embedded in the program, poor formatting, et cetera. To facilitate further development (including my own -- I'm working on web frontends for Downhill Battle), I've written a couple Perl modules that do the behind the scenes work and processing of the XML.