FairPlay.no
What follows is a high-level description of FairPlay that I wrote for a Norwegian journalist:
Kryptoalgoritmen som benyttes i FairPlay heter AES. Nøklene som benyttes er 128-bit.
Når man kjøper en sang i iTunes Music Store fra en ny PC for første gang så genererer Music Store serverne en tilfeldig brukernøkkel. Når sangen er ferdig lastet ned så bruker iTunes denne brukernøkkelen til å legge DRM på filen. Det som skjer når iTunes ber om brukernavn og passord for å autorisere datamaskinen er at alle brukernøklene som tilhører kontoen din blir lastet ned og lagret på PC’en.
Under Windows lagres brukernøklene i en fil i mappen
C:\Documents and Settings\All Users\Application Data\Apple Computer\iTunes\SC Info
og under MacOS X i mappen
/Users/Shared/SC Info
Dette brukernøkkellageret er kryptert med en nøkkel som beregnes på bakgrunn av diverse informasjon (under Windows er dette BIOS versjon, navnet på CPU’en, Windows Produkt ID og serienummeret på C:\ harddisken).
Hvis du har en iPod så vil iTunes under synkronisering kopiere over brukernøkkellageret og kryptere det med en nøkkel som beregnes på bakgrunn av serienummeret til iPod’en.
Det eneste man trenger for å dekryptere en FairPlay fil er altså brukernøkkelen som ble brukt for å legge til FairPlay på filen.
For å skaffe seg brukernøklene sine kan man enten hente de ut fra brukernøkkellageret som ligger på PC’en eller iPod’en, eller man kan laste de ned fra Apple sine servere (FairKeys) på samme måte som iTunes gjør det når maskinen autoriseres.
Apple har aldri endret hvordan FairPlay legges til på filene. Det de derimot har endret flere ganger er hvordan brukernøkkellageret blir kryptert. De har også endret protokollen for kommunikasjon mot Music Store serverne i et forsøk på å stenge ute andre programmer enn iTunes fra å f.eks. laste ned brukernøklene.
Protokollen for kommunikasjon mot Music Store serverne er HTTP basert. Se disse to XML filene for en oversikt over kommandoer:
http://phobos.apple.com/storeBag.xml http://phobos.apple.com/secureBag.xml
Det er samme protokollen som benyttes i SharpMusique for å kjøpe filer fra iTunes Music Store uten DRM.