AirPlay, Apple TV authentication and protected iTunes content
Erica continues her hacking explorations into the Apple TV and AirPlay.
Here's the thing. As far as I can tell, you can play back any content that plays back in your iPhone's iPod and video applications on any Apple TV. That includes DRM content, all that encrypted stuff that normally requires you to register your computer with your iTunes account.
Somehow the AirPlay protocol sends over enough information to the Apple TV to allow that device to gain at least temporary authorization to play the media you stream to it. From what I've been able to find out, that authentication step seems to be transmitted via a simple key using a message that looks something like this...
POST /authorize HTTP/1.1
Content-Length: 74
User-Agent: MediaControl/1.0
PIC-Request: AQAAAAAAAAAAAbS8TgEAA[REDACTED]vXJflQflYQo=
The authorize transmission sends what appears to be a Base-64 encoded string that contains the authentication information needed by Apple TV. That string changes each time you send a video, even if it's the same video from the same device. This suggests that the data includes some kind of timestamp to limit the session during which the Apple TV is authorized to play back the rights-managed media.
The way that iOS devices deal with protected media is that no DRM content can be synced to them unless the home computer is authorized to play that content, via an iTunes account. This means that any DRM-protected media on the device (playable in the iPod or Video applications) is basically pre-cleared for playback by virtue of its original sync.
Creating a simple key authentication like this retains the integrity of the original licensing while permitting the device to send data to a transient intermediary. Apple TV does not retain or store the media it plays back once playback has finished.
Perhaps this is a hint as to why we have not yet seen an AirPlay feature hit Mac OS X (or at least not officially). Until Apple engineers can implement a way to transiently and securely view data from third-party devices, they could be unable to deliver that data to the desktop under existing agreements with content providers.
I know I should finish with some kind of AirPlay/FairPlay DRM pun, but nothing springs to mind. Please feel free to share yours in the comments.
Thanks, Steven Troughton-Smith, Matthias Ringwald
Share
Source: http://tuaw.com/tag/airplay
Categories
Erica continues her hacking explorations into the Apple TV and AirPlay. Here's the thing. As far as I can tell, you can play back any...
Add a Comment
Wondering if this would work with the sling player app. Reason I ask is that Sling has discontinued the slingcatcher (which lets you stream to your TV, rather than the computer or phone). Apparently when one of the satellite companies purchased Sling, they saw the slingcatcher product as a threat to their business model.
It would be awesome if I could use my slingplayer app with my AppleTV2 (as a replacement for the slingcatcher). Used versions of the slingcatcher are selling for more than $300 (originally sold for about $150). Heck, I wish someone would write an jailbreak app that would just do it directly from the AppleTV. (It is just streaming content, after all)
Clueless spammer is clueless - might want to make these garbage posts someplace that shows a URL...
December 22 2010 at 6:43 AM Report abuse Permalink rate up rate down ReplyYou can play just about anything on the TV-1 if you install ATVflash. It is an object lesson in what the second generation unit could have been.
December 22 2010 at 6:36 AM Report abuse Permalink rate up rate down ReplyWhile like your efforts it seems that tuaw is now your development blog too?
I don't mean 2 troll @ all, and don't have much to CONTRIBUTE.
But, Erica, Thankyou for your love of all things Apple- and keep going lady!
We non-technical Apple TV early adopters are just waiting for the Apple TV to DO something good . I know in dear time my little ATV will be an awesome living room addition.
Thanks, and I can't wait to throw Angry Birds on my TV - easily.
Paulie420
why can't I stream the audio from a movie playing on my computer in itunes (rented from itunes) to speakers on my airport express? sucks that you can't do this...anyone know why?
December 22 2010 at 12:16 AM Report abuse Permalink rate up rate down Replyis it just a DRM thing?
December 22 2010 at 12:31 AM Report abuse Permalink rate up rate down ReplyYou can do this just fine using Airfoil. Airfoil Video Player works great.
http://www.rogueamoeba.com/airfoil/
Anyone know of a way to connect my new Mac Mini connected to my HDTV in my living room to also connect remotely to another HDTV in my office? The office is not in a line of sight as walls are in the way (I've looked at the new Link Wireless A/V Extender, but I guess that is line of sight only). And it's about 50 ft. between the two HDTVs and I would have to drill through floors to hardwire HDMI it.
Thanks for the suggestions.
Erica: Are you using any OSX specific stuff? Is there a chance that this may work on Linux at all? I would rather not have a MacMini that just serves video when i already have a linux server running.
December 21 2010 at 10:09 PM Report abuse Permalink rate up rate down ReplySee the earlier article about AirPlay Streaming to XBMC running on Linux. Most of what Erica is doing applies to Linux and Windows too. The place where it breaks down is AirTunes.... AirPlay and AirTunes are very, very different. From what I understand AirPlay is really just a DAAP on steroids implementation which is quite simple and elegant really. It sets up a method of push a "play this URL" to a compatible device and it's up to the source device (e.g. iPhone, iPad etc.) to provide that URL. In the AirTunes case it literally pushes the data to the AirPort[Express] device, but with AirPlay it tells the device to pull it.
I think that's correct but I'm sure someone will correct me if I'm wrong.
I wrote the Linux (PulseAudio) support for AirTunes, so I have a (vague) grasp of what it does, but we're still lagging behind on the AirTunes v2 protocol but are getting there. It works well enough for music and such like but could still to with a lot of TLC.
As I'm unsure AirPlay will work for pure audio streams (while technically totally feasible, I'm just not sure it's part of the spec?) I'm not sure it's worth supporting it specifically in the audio stack on Linux but application support is obviously still desirable.
@Colin
Interesting info, I'd wondered how AirPlay/AirTunes handled media, specifically from non-device and internet sources. If I'm understanding correctly.
AirPlay passes the task of streaming the media over to the target device (Apple TV etc.), the initiator (iPhone, iTunes etc.) only remains connected as a remote for playback control?
AirTunes however is only capable of receiving media being sent to it, and the Initiator or another device must stream the media and then push it to the AirTunes device?
I wonder if this same request is how Home Sharing works as well.
December 21 2010 at 10:08 PM Report abuse Permalink rate up rate down ReplyNot really. Home sharing allows copy-with-authorization-transfer; not just streaming. That's why Home sharing requires both ends to be authenticated using the same Apple id.
Deals of the Day
more deals- Refurb Mac Pro Xeon Quad-Core 2.8GHz Workstation for $1,150 + $38 s&h, more
- Used Apple iPad 32GB Wi-Fi Tablet for $200 + free shipping
- Apple iPod nano Multi-Touch 8GB MP3 Player for $100 + $8 s&h
- Cases for New iPad at HandHeldItems: Extra 20% off, $2 credit, from $3 + $3 s&h
- $15 Apple iTunes Gift Card for $8 for new Saveology customers
- Retro 80's Case for iPhone for $11 + $2 s&h
29 Comments