codierung von i-tunes Music Store

Hallo mitnander,

Ich muss für ein Projekt Daten vom i-tunes Music Store auslesen können. Das ganze mit php. Ich habe mir also i-tunes installiert, und mitprotokolliert was so alles über meine Netzwerkkarte läuft. Das ganze funktioniert mit XML und der header der mitgeschickt wurde war uncodiert. Dann habe ich mit der curl-Funtion folgenden Header mitgeschickt:
PHP:
//======header=======//
curl_setopt($ch, CURLOPT_HTTPHEADER, array("User-Agent: iTunes/6.0 (Windows; U; Microsoft Windows XP Professional  (Build 2600)) DPI/96" ));
//======/header/=======//
und auch daten zurückbekommen. soweit so gut. Beim näheren betrachten fiel mir aber auf das die Preise in Dollar angegeben waren, und ich somit die Daten von den Amis bekommen habe.
Ich brauche aber die Daten für Deutschland. Bin also wieder in mein Protokoll, und habe nun den ganzen Header mitgeschickt, da dort auch die Sprache mitgesendet wird. Hier ein Bsp für die Suche nach Rammstein:

GET /WebObjects/MZSearch.woa/wa/DirectAction/search?submit=edit&term=rammstein HTTP/1.1
Referer: http://ax.phobos.apple.com.edgesuite.net/WebObjects/MZStore.woa/wa/storeFront
Accept-Language: de-de, de;q=0.75, en-us;q=0.50, en;q=0.25
X-Apple-Tz: 3600
User-Agent: iTunes/6.0.2 (Windows; U; Microsoft Windows XP Professional (Build 2600)) DPI/96
Accept-Encoding: gzip, x-aes-cbc
X-Apple-Store-Front: 143443
Host: ax.phobos.apple.com.edgesuite.net

Nun bekomme ich Daten zurück, aber diese sind codiert, und komme einfach nicht drauf wie ich sie decodieren kann. Laut header ist das alles per gzip codiert (Accept-Encoding: gzip, x-aes-cbc). Ich weiss das php5 diese codierung unterstützt, und bei den US-Daten hat es ja auch funtioniert. Nur bei den Deutschen nicht...!? Ich habe alle möglichen Varianten des Headers schon mitgeschickt, um die deutschen Daten in der US-komrimierung zu bekommen. Ich bekomme entweder die US-Daten, oder die verschlüsselten.

Ich hab auch schon versucht die daten in eine .gz datei zu schreiben und sie dann auszulesen, aber mir war voher schon klar das das nicht gehen wird.

Bei meinen Recherchen bin ich auch auf diese Seite gestoßen:
http://tpemble.urfbownd.net/itunes/
die ist aber nur für die US-Version gedacht. Dort ist allerdings ein Script namens "iTMS twofish", welches für die decodierung der US-Daten zuständig ist.
Meine Programmierkenntnisse reichen nicht aus um das mit der (de)codierung zu verstehen, und mit dem script lassen sich auch die DE-Daten nicht decodieren.
Könnt ihr mir irgendwie helfen?
Wie bekomme ich heraus wie die Daten codiert sind?
Wie kann ich sie decodieren?
Habt ihr mir n Link wo ich dies Nachlesen könnte (auf http://www.gzip.org/ halte ich mich schon auf)?

Ich wäre euch für jede Hilfe sehr verbunden.

mfg DaRaffa
 
also dass du nach rammstein gesucht hast gefällt mir schonmal sehr :D
nach knapp ner stunde recherche habs ich dann aufgegeben
hast du schonmal versucht, beim accept-encoding das x-aes-cbc zu entfernen?

edit: http://www.s-seven.net/itunes_xml.html hast du auch schon ausprobiert?

mir scheint, dass die dateien base64 verschlüsselt sind:
Code:
case 2: $key = base64_decode("ip2tOZ+wFMExvmEYINeIlQ=="); break;
case 3: $key = base64_decode("mNHiLKoNir1l0UOtJ1pe5w=="); break;
default: $key = false;

ich hab zwar nach einem deutschen key gesucht, es gibt aber wohl keinen
 
ich danke dir vielmals... deine info hat mich endlich weiter gebracht.

ja, das mim accept-encoding hatte ich auch schon versucht gehabt, brachte mir aber nichts.

Das ganze Problem lag doch am Header. Ich bin aber erst darauf gekommen, nachdem ich deinen link genauer unter die Lupe genommen habe. Die codierten Daten die ich erhalten habe, waren nichts anderes als eine verschlüsselte Information an i-tunes. Das script von www.s-seven.net hat es mir verraten. Das codierte enthielt einen Verweis vom DE an den US Shop und umgekehrt. Was ich habe machen müssen, ist lediglich "X-Apple-Store-Front: 143443" und "User-Agent: iTunes/6.0.2 (Windows; U; Microsoft Windows XP Professional (Build 2600)) DPI/96" im header mitzuschicken, den Rest erledigt Freund-PHP-Server für mich. Nichts weiter...!!! Ich staune immernoch über die Einfachheit der Lösung.

Ich bin noch an keinem online-Musikshop so lange drangesessen wie i-trunes.
Aja, das Projekt wo ich mitmache ist www.musikbremse.de zum vergleichen der Preise von den ganzen Geldgierigen und mit ihrem DRM gute Musikdateien-vernichtenden Musikshops.

In diesem Sinne nochmals vielen Dank...

mfg DaRaffa
 
Zurück
Oben