Update on Spotify Connect Protocol Reversing
I receive many e-mails from people interested in my progress on reversing Spotify Connect and/or those who would like to continue with this task. Since it was taking me a while to reply to all of you, I decided to rather update this post to reflect this project`s status.
As mentioned in the comments of my original post - I stopped working on this soon after Onkyo released support for my music receiver. Sorry! It is an interesting challenge and if I had plenty of time (as I had in my student years;) I would be probably making it happen.. But now I am satisfied with the availability of support for Spotify Connect in my devices and after working for about 36 hours in total on reversing this library, I just abandoned it for good.
(Tip: From what I've learned looking at the code, the library is still using lots of code for authentication, encryption and communication with Spotify servers identical or just slightly different to despotify or https://gitorious.org/libopenspotify/)
I receive e-mails from those interested to obtain the library`s binary.
Well, I got my copy of libspotify_embedded.so from Powernode speakers firmware.
This library is of no help standalone since no function calls are documented and it also need it's parent, called sovi-spotify, which acts as a controlling process between the library and speakers` Perl environment. You need to re-create the whole environment before you'd be able to attempt to analyse it's logic. If you grab that firmware you'll soon find out that all .pl files are encrypted. I'll leave it to you to find out how to decrypt them as this is should be a rather simple task for anyone thinking to attempt reversing Spotify connect.
Alternatively, you can get libspotify_embedded.so from Onkyo firmware using my extractor. I haven't had time to study how it's used there, but I estimate it has an easier deployment than with Powernode.
And finally, I do hope Spotify releases Connect as a part of their SDK. It's just about time!