AirTunes という、遠隔地のスピーカーで音楽を流せるものを、Linux サーバで実行できるようにしたかった。
スピーカーの広報プロトコルとして mDNS が使われている。なのでこれは mt-daapd からコードを流用(コア部については Apple が実装しているはず)し、CocoaDev: AirTunes を参考にしながら iTunes に認識させるところまでは書けた。
が、次のステップで Apple-Challenge というヘッダに渡されたバイナリ値を、AirTunes に埋め込まれている RSA 署名して Apple-Response として返さねばならない。どうも本物の AirTunes にしか音楽データを送らないような仕組みのよう。ちなみに AirTunes の RSA 公開鍵は既に流れており、iTunes 側を実装するのは簡単であろう(既に他のアプリがあるため、今回は実装するつもりはないが)。
なんとか認証を回避する方法は無いのだろうか……。あと、こういう行為は違反なのかわからないので、詳しい人が居ましたらよろしくです。今のところコードは外に公開していないので大丈夫であろうと思いますが……(何が)。
Related Entries
- mt-daapd の調子が悪いなぁと思ったけど (2007-02-01)
Trackbacks
Trackback URI: http://blog.c--v.net/trackback/2007/02/06/1
There is no trackback.
by 剛 at 2007-02-06 01:49:45
ちょっと発想を変えて逆にiTunes側を実装すれば、Apple-Challengeや音楽データの暗号化がない状態でAirTunes側も実装ができ…って普通のストリーミングか。
なんでもないです。
by Ryosuke SEKIDO at 2007-02-07 16:32:48
Windows 用のソフトで、音を全て AirTunes に飛ばすってのは無かったと思うので実装したら面白そうですが、生憎 AirTunes が無いので楽しめません :-p