iTunes sync with Linux on unjailbroken 2.0+ iPhones/iPods?
Hey, it appears as those superbrain folks on the libiphone mailing list are onto something regarding the new hashing algorithm used in Apple’s 2.0+ firmware.
Current releases of libgpod which is able to handle managing of the iTunes database (this is where your Music/Photo data is stored) on an iPhone or iPod Touch are only able work with the database for firmwares 1.1.4 and below.
This involved recreating a specific hashing algorithm used by iTunes which had been widely in the news.
With iTunes 8 and Apple’s 2.0 firmware, a new hashing algorithm was introduced which made music/photo synchronization with 2.0+ devices not working at all.
The folks have now uncovered that Apple has apparently started to use their FairPlay-DRM to encrypt the iTunes database.
Recently, there has been progress in understanding how the hashing process for 2.0+ firmware looks like and while there is some more work to do the peak research seems to have been passed quoting someone from the private list:
ok it workes with the later address. and guess what, it worked !! tmpkey : ***** itunes : 1BEB2BE8EA1D08D1CAFBD89C5CBE50E0 itdb_hash : 1beb2be8ea1d08d1cafbd89c5cbe50e0 good work !
What you see is a prototype implementation (itdb_hash) having generated the same hash iTunes generated for a specific iTunes database.
The day to plug in the iPhone, let HAL recognize it and use Conduit to synchronize Music/Photos, Calendar, Notes, Addressbook or to use GtkPod or other managers for your Music is constantly rising upon us.
Note that you should understand that all this work will make up for software being iTunes independant without the need to jailbreak at all (on all platforms libiphone compiles).