Difference between revisions of "AirPlay"

From The iPhone Wiki
Jump to: navigation, search
m
Line 1: Line 1:
AirPlay is Apple's technology for streaming video and audio between iOS devices. It is an evolution of AirTunes that was limited to streaming audio from iTunes to Airport Express base stations.
+
'''AirPlay''' is the marketing name of Apple's technology for streaming audio and video between iTunes and iOS devices. It is an evolution of AirTunes that was limited to streaming audio from iTunes to Airport Express base stations.
   
Recent attempts to reverse engineer the protocol suggest that it is based on HTTP live streaming, while audio-only content uses the old AirTunes protocol.
+
Audio-only content is streamed by using the AirTunes / RAOP technology. Video/photo content is based on HTTP live streaming.
   
 
AirPlay was first introduced in iOS 4.2. Early developer builds had the feature integrated in all apps using the standard video controller, but in the final release it was limited to the iPod (Video on iPod touch and iPad) and YouTube apps.
 
AirPlay was first introduced in iOS 4.2. Early developer builds had the feature integrated in all apps using the standard video controller, but in the final release it was limited to the iPod (Video on iPod touch and iPad) and YouTube apps.
Line 9: Line 9:
   
 
Mac users can download AirPlayer by Erica Sadun that can receive video from an iOS device [http://www.tuaw.com/2010/12/14/hacksugar-mac-based-airplay-service-allows-device-to-mac-playba/]. It is quite buggy at the moment, does not support audio, DRM-protected video, or [[iTunes]] as a source, but it's still an important achievement as the first independent implementation of AirPlay.
 
Mac users can download AirPlayer by Erica Sadun that can receive video from an iOS device [http://www.tuaw.com/2010/12/14/hacksugar-mac-based-airplay-service-allows-device-to-mac-playba/]. It is quite buggy at the moment, does not support audio, DRM-protected video, or [[iTunes]] as a source, but it's still an important achievement as the first independent implementation of AirPlay.
  +
  +
== Encryption ==
  +
  +
AirPlay / AirTunes uses public-private-key cryptographic schemes to ensure that only valid devices 'talk' to each other.
  +
  +
There are 2 schemes in place:
  +
  +
1) Only valid software (iTunes) can send content.
  +
  +
2) Only valid devices (Apple TV & Airport Express) can receive content.
  +
  +
The first one was hacked by Jon Lech Johansen in August, 2004. This allowed 'invalid' (other then iTunes) software - e.g. ALSA under Linux - to stream audio to 'valid' AirPort Express devices.
  +
  +
The 2nd one was hacked by James Laird in 2011. This allowed 'valid' software (iTunes) to stream audio to 'invalid' devices - e.g. a Linux system running Shairport.
  +
  +
=== Public & Private Keys ===
  +
  +
==== RSA public key stored in iTunes ====
  +
  +
'''[[AirPort]] Express RSA Public Key, Modulus:'''
  +
<code>
  +
59dE8qLieItsH1WgjrcFRKj6eUWqi+bGLOX1HL3U3GhC/j0Qg90u3sG/1CUtwC
  +
5vOYvfDmFI6oSFXi5ELabWJmT2dKHzBJKa3k9ok+8t9ucRqMd6DZHJ2YCCLlDR
  +
KSKv6kDqnw4UwPdpOMXziC/AMj3Z/lUVX1G7WSHCAWKf1zNS1eLvqr+boEjXuB
  +
[[OitnZ]]/bDzPHrTOZz0Dew0uowxf/+sG+NCK3eQJVxqcaJ/vEHKIVd2M+5qL71yJ
  +
Q+87X6oV3eaYvt3zWZYD6z5vYTcrtij2VZ9Zmni/UAaHqn9JdsBWLUEpVviYnh
  +
imNVvYFZeCXg/[[IdTQ]]+x4IRdiXNv5hEew==
  +
</code>
  +
'''Exponent:'''
  +
<code>
  +
AQAB
  +
</code>
  +
  +
By using this key any app can stream audio to an [[AirPort]] Express, but the music stays encrypted on the network.
  +
  +
==== RSA private key stored in AirPort Express ====
  +
  +
-----BEGIN RSA PRIVATE KEY-----
  +
MIIEpQIBAAKCAQEA59dE8qLieItsH1WgjrcFRKj6eUWqi+bGLOX1HL3U3GhC/j0Qg90u3sG/1CUt
  +
wC5vOYvfDmFI6oSFXi5ELabWJmT2dKHzBJKa3k9ok+8t9ucRqMd6DZHJ2YCCLlDRKSKv6kDqnw4U
  +
wPdpOMXziC/AMj3Z/lUVX1G7WSHCAWKf1zNS1eLvqr+boEjXuBOitnZ/bDzPHrTOZz0Dew0uowxf
  +
/+sG+NCK3eQJVxqcaJ/vEHKIVd2M+5qL71yJQ+87X6oV3eaYvt3zWZYD6z5vYTcrtij2VZ9Zmni/
  +
UAaHqn9JdsBWLUEpVviYnhimNVvYFZeCXg/IdTQ+x4IRdiXNv5hEewIDAQABAoIBAQDl8Axy9XfW
  +
BLmkzkEiqoSwF0PsmVrPzH9KsnwLGH+QZlvjWd8SWYGN7u1507HvhF5N3drJoVU3O14nDY4TFQAa
  +
LlJ9VM35AApXaLyY1ERrN7u9ALKd2LUwYhM7Km539O4yUFYikE2nIPscEsA5ltpxOgUGCY7b7ez5
  +
NtD6nL1ZKauw7aNXmVAvmJTcuPxWmoktF3gDJKK2wxZuNGcJE0uFQEG4Z3BrWP7yoNuSK3dii2jm
  +
lpPHr0O/KnPQtzI3eguhe0TwUem/eYSdyzMyVx/YpwkzwtYL3sR5k0o9rKQLtvLzfAqdBxBurciz
  +
aaA/L0HIgAmOit1GJA2saMxTVPNhAoGBAPfgv1oeZxgxmotiCcMXFEQEWflzhWYTsXrhUIuz5jFu
  +
a39GLS99ZEErhLdrwj8rDDViRVJ5skOp9zFvlYAHs0xh92ji1E7V/ysnKBfsMrPkk5KSKPrnjndM
  +
oPdevWnVkgJ5jxFuNgxkOLMuG9i53B4yMvDTCRiIPMQ++N2iLDaRAoGBAO9v//mU8eVkQaoANf0Z
  +
oMjW8CN4xwWA2cSEIHkd9AfFkftuv8oyLDCG3ZAf0vrhrrtkrfa7ef+AUb69DNggq4mHQAYBp7L+
  +
k5DKzJrKuO0r+R0YbY9pZD1+/g9dVt91d6LQNepUE/yY2PP5CNoFmjedpLHMOPFdVgqDzDFxU8hL
  +
AoGBANDrr7xAJbqBjHVwIzQ4To9pb4BNeqDndk5Qe7fT3+/H1njGaC0/rXE0Qb7q5ySgnsCb3DvA
  +
cJyRM9SJ7OKlGt0FMSdJD5KG0XPIpAVNwgpXXH5MDJg09KHeh0kXo+QA6viFBi21y340NonnEfdf
  +
54PX4ZGS/Xac1UK+pLkBB+zRAoGAf0AY3H3qKS2lMEI4bzEFoHeK3G895pDaK3TFBVmD7fV0Zhov
  +
17fegFPMwOII8MisYm9ZfT2Z0s5Ro3s5rkt+nvLAdfC/PYPKzTLalpGSwomSNYJcB9HNMlmhkGzc
  +
1JnLYT4iyUyx6pcZBmCd8bD0iwY/FzcgNDaUmbX9+XDvRA0CgYEAkE7pIPlE71qvfJQgoA9em0gI
  +
LAuE4Pu13aKiJnfft7hIjbK+5kyb3TysZvoyDnb3HOKvInK7vXbKuU4ISgxB2bB3HcYzQMGsz1qJ
  +
2gG0N5hvJpzwwhbhXqFKA4zaaSrw622wDniAK5MlIE0tIAKKP4yxNGjoD2QYjhBGuhvkWKY=
  +
-----END RSA PRIVATE KEY-----
  +
  +
This is used so audio can be streamed to 'invalid' devices.
   
 
== External Links ==
 
== External Links ==

Revision as of 23:14, 13 October 2012

AirPlay is the marketing name of Apple's technology for streaming audio and video between iTunes and iOS devices. It is an evolution of AirTunes that was limited to streaming audio from iTunes to Airport Express base stations.

Audio-only content is streamed by using the AirTunes / RAOP technology. Video/photo content is based on HTTP live streaming.

AirPlay was first introduced in iOS 4.2. Early developer builds had the feature integrated in all apps using the standard video controller, but in the final release it was limited to the iPod (Video on iPod touch and iPad) and YouTube apps. However, it is possible to enable AirPlay in 3rd party apps on jailbroken devices [1].

Currently the only supported target for video/photo streaming is 2nd gen Apple TV, while other companies are expected to release compatible products in the future.

Mac users can download AirPlayer by Erica Sadun that can receive video from an iOS device [2]. It is quite buggy at the moment, does not support audio, DRM-protected video, or iTunes as a source, but it's still an important achievement as the first independent implementation of AirPlay.

Encryption

AirPlay / AirTunes uses public-private-key cryptographic schemes to ensure that only valid devices 'talk' to each other.

There are 2 schemes in place:

1) Only valid software (iTunes) can send content.

2) Only valid devices (Apple TV & Airport Express) can receive content.

The first one was hacked by Jon Lech Johansen in August, 2004. This allowed 'invalid' (other then iTunes) software - e.g. ALSA under Linux - to stream audio to 'valid' AirPort Express devices.

The 2nd one was hacked by James Laird in 2011. This allowed 'valid' software (iTunes) to stream audio to 'invalid' devices - e.g. a Linux system running Shairport.

Public & Private Keys

RSA public key stored in iTunes

AirPort Express RSA Public Key, Modulus: 59dE8qLieItsH1WgjrcFRKj6eUWqi+bGLOX1HL3U3GhC/j0Qg90u3sG/1CUtwC 5vOYvfDmFI6oSFXi5ELabWJmT2dKHzBJKa3k9ok+8t9ucRqMd6DZHJ2YCCLlDR KSKv6kDqnw4UwPdpOMXziC/AMj3Z/lUVX1G7WSHCAWKf1zNS1eLvqr+boEjXuB OitnZ/bDzPHrTOZz0Dew0uowxf/+sG+NCK3eQJVxqcaJ/vEHKIVd2M+5qL71yJ Q+87X6oV3eaYvt3zWZYD6z5vYTcrtij2VZ9Zmni/UAaHqn9JdsBWLUEpVviYnh imNVvYFZeCXg/IdTQ+x4IRdiXNv5hEew== Exponent: AQAB

By using this key any app can stream audio to an AirPort Express, but the music stays encrypted on the network.

RSA private key stored in AirPort Express

-----BEGIN RSA PRIVATE KEY-----
MIIEpQIBAAKCAQEA59dE8qLieItsH1WgjrcFRKj6eUWqi+bGLOX1HL3U3GhC/j0Qg90u3sG/1CUt
wC5vOYvfDmFI6oSFXi5ELabWJmT2dKHzBJKa3k9ok+8t9ucRqMd6DZHJ2YCCLlDRKSKv6kDqnw4U
wPdpOMXziC/AMj3Z/lUVX1G7WSHCAWKf1zNS1eLvqr+boEjXuBOitnZ/bDzPHrTOZz0Dew0uowxf
/+sG+NCK3eQJVxqcaJ/vEHKIVd2M+5qL71yJQ+87X6oV3eaYvt3zWZYD6z5vYTcrtij2VZ9Zmni/
UAaHqn9JdsBWLUEpVviYnhimNVvYFZeCXg/IdTQ+x4IRdiXNv5hEewIDAQABAoIBAQDl8Axy9XfW
BLmkzkEiqoSwF0PsmVrPzH9KsnwLGH+QZlvjWd8SWYGN7u1507HvhF5N3drJoVU3O14nDY4TFQAa
LlJ9VM35AApXaLyY1ERrN7u9ALKd2LUwYhM7Km539O4yUFYikE2nIPscEsA5ltpxOgUGCY7b7ez5
NtD6nL1ZKauw7aNXmVAvmJTcuPxWmoktF3gDJKK2wxZuNGcJE0uFQEG4Z3BrWP7yoNuSK3dii2jm
lpPHr0O/KnPQtzI3eguhe0TwUem/eYSdyzMyVx/YpwkzwtYL3sR5k0o9rKQLtvLzfAqdBxBurciz
aaA/L0HIgAmOit1GJA2saMxTVPNhAoGBAPfgv1oeZxgxmotiCcMXFEQEWflzhWYTsXrhUIuz5jFu
a39GLS99ZEErhLdrwj8rDDViRVJ5skOp9zFvlYAHs0xh92ji1E7V/ysnKBfsMrPkk5KSKPrnjndM
oPdevWnVkgJ5jxFuNgxkOLMuG9i53B4yMvDTCRiIPMQ++N2iLDaRAoGBAO9v//mU8eVkQaoANf0Z
oMjW8CN4xwWA2cSEIHkd9AfFkftuv8oyLDCG3ZAf0vrhrrtkrfa7ef+AUb69DNggq4mHQAYBp7L+
k5DKzJrKuO0r+R0YbY9pZD1+/g9dVt91d6LQNepUE/yY2PP5CNoFmjedpLHMOPFdVgqDzDFxU8hL
AoGBANDrr7xAJbqBjHVwIzQ4To9pb4BNeqDndk5Qe7fT3+/H1njGaC0/rXE0Qb7q5ySgnsCb3DvA
cJyRM9SJ7OKlGt0FMSdJD5KG0XPIpAVNwgpXXH5MDJg09KHeh0kXo+QA6viFBi21y340NonnEfdf
54PX4ZGS/Xac1UK+pLkBB+zRAoGAf0AY3H3qKS2lMEI4bzEFoHeK3G895pDaK3TFBVmD7fV0Zhov
17fegFPMwOII8MisYm9ZfT2Z0s5Ro3s5rkt+nvLAdfC/PYPKzTLalpGSwomSNYJcB9HNMlmhkGzc
1JnLYT4iyUyx6pcZBmCd8bD0iwY/FzcgNDaUmbX9+XDvRA0CgYEAkE7pIPlE71qvfJQgoA9em0gI
LAuE4Pu13aKiJnfft7hIjbK+5kyb3TysZvoyDnb3HOKvInK7vXbKuU4ISgxB2bB3HcYzQMGsz1qJ
2gG0N5hvJpzwwhbhXqFKA4zaaSrw622wDniAK5MlIE0tIAKKP4yxNGjoD2QYjhBGuhvkWKY=
-----END RSA PRIVATE KEY-----

This is used so audio can be streamed to 'invalid' devices.

External Links

Tango Media-cdrom.png This software article is a "stub", an incomplete page. Please add more content to this article and remove this tag.