Re: [pulseaudio-tickets] [PulseAudio] #421: emulated AirPort Express as audio source
#421: emulated AirPort Express as audio source --+- Reporter: albert | Owner: lennart Type: enhancement | Status: reopened Milestone: | Component: daemon Resolution: |Keywords: --+- Changes (by mourad): * cc: bugs-pulseau...@aquazul.com (added) * status: closed = reopened * resolution: wontfix = Comment: Now that the private key has been reverse-engineered and is in the open, maybe it's time to revisit this ticket. It would be a nice feature, considering AirPlay (RAOP) is still used a lot for quite a lot of devices (iTunes, iOS, appletv, etc). [http://mafipulation.org/blagoblig/2011/04/08#shairport shairport] -- Ticket URL: http://pulseaudio.org/ticket/421#comment:6 PulseAudio http://pulseaudio.org/ The PulseAudio Sound Server ___ pulseaudio-tickets mailing list pulseaudio-tickets@mail.0pointer.de https://tango.0pointer.de/mailman/listinfo/pulseaudio-tickets
Re: [pulseaudio-tickets] [PulseAudio] #421: emulated AirPort Express as audio source
#421: emulated AirPort Express as audio source --+- Reporter: albert | Owner: lennart Type: enhancement | Status: closed Priority: low | Milestone: Component: daemon |Severity: normal Resolution: wontfix |Keywords: --+- Changes (by coling): * status: new = closed * resolution: = wontfix Comment: Well I'm not a crypto-ninja but my basic understanding is that yes, we need to work out the private key equiv of the above. I'm not sure how many keys are used in the airtunes devices, not sure if it's actually got several public key/private key pairs or just the one. There is good info here: http://www.cocoadev.com/index.pl?AirTunes In the absence of any amazing breakthrough, I may as well close this bug :( FWIW, if someone worked on native fake-sound card devices for OSX and Windows for pulse, the need to use this facility would be more or less removed We just need passionate OSX and Windows devs to take up the challenge. Feel free to join in more discussion on the PA mailing list if you think you can step up to the plate ;) -- Ticket URL: http://www.pulseaudio.org/ticket/421#comment:5 PulseAudio http://pulseaudio.org/ The PulseAudio Sound Server ___ pulseaudio-tickets mailing list pulseaudio-tickets@mail.0pointer.de https://tango.0pointer.de/mailman/listinfo/pulseaudio-tickets
Re: [pulseaudio-tickets] [PulseAudio] #421: emulated AirPort Express as audio source
#421: emulated AirPort Express as audio source --+- Reporter: albert | Owner: lennart Type: enhancement | Status: new Priority: low | Milestone: Component: daemon |Severity: normal Resolution: |Keywords: --+- Comment (by albert): I would love to develop on this by myself, but I know barely nothing about the AirPort Express and only less about the PulseAudio internals. If anybody could help me a bit out here, give a rough overview where to start and what to do, that would be nice. For example: 1. How can I distribute the server as an AirPort Express base station via Avahi? 2. Good starting point for the emulation itself? (I assume that I would have to listen on some UDP port and then decode the stream, which is coded as Apple Lossless audio as far as I know. I would try to get the needed information about the protocol from the raop-play project.) -- Ticket URL: http://www.pulseaudio.org/ticket/421#comment:2 PulseAudio http://pulseaudio.org/ The PulseAudio Sound Server ___ pulseaudio-tickets mailing list pulseaudio-tickets@mail.0pointer.de https://tango.0pointer.de/mailman/listinfo/pulseaudio-tickets
Re: [pulseaudio-tickets] [PulseAudio] #421: emulated AirPort Express as audio source
#421: emulated AirPort Express as audio source --+- Reporter: albert | Owner: lennart Type: enhancement | Status: new Priority: low | Milestone: Component: daemon |Severity: normal Resolution: |Keywords: --+- Comment (by albert): Hi Coling, Thank you very much for pointing that out. That is really a pity. To point it out more clearly, we basically have to get the private RSA key which belongs to this public RSA key: {{{ 152 static int rsa_encrypt(uint8_t *text, int len, uint8_t *res) { 153 const char n[] = 154 59dE8qLieItsH1WgjrcFRKj6eUWqi+bGLOX1HL3U3GhC/j0Qg90u3sG/1CUtwC 155 5vOYvfDmFI6oSFXi5ELabWJmT2dKHzBJKa3k9ok+8t9ucRqMd6DZHJ2YCCLlDR 156 KSKv6kDqnw4UwPdpOMXziC/AMj3Z/lUVX1G7WSHCAWKf1zNS1eLvqr+boEjXuB 157 OitnZ/bDzPHrTOZz0Dew0uowxf/+sG+NCK3eQJVxqcaJ/vEHKIVd2M+5qL71yJ 158 Q+87X6oV3eaYvt3zWZYD6z5vYTcrtij2VZ9Zmni/UAaHqn9JdsBWLUEpVviYnh 159 imNVvYFZeCXg/IdTQ+x4IRdiXNv5hEew==; 160 const char e[] = AQAB; ... }}} (code from http://www.pulseaudio.org/browser/src/modules/raop/raop_client.c) The private key should be stored somewhere on the AirPort Express and is used to decrypt the message (as I have seen from the code, this RSA encryption is only used to transfer the AES key, whereby that does not really matter for the problem). I sadly don't own an Airport Express myself, but for somebody who has access to one, wouldn't it be possible somehow to read the key from the device? (I guess that the key is not stored in any of their firmware updates, which would be a bit easier to read (or is it?).) -- Ticket URL: http://www.pulseaudio.org/ticket/421#comment:4 PulseAudio http://pulseaudio.org/ The PulseAudio Sound Server ___ pulseaudio-tickets mailing list pulseaudio-tickets@mail.0pointer.de https://tango.0pointer.de/mailman/listinfo/pulseaudio-tickets