Slash Boxes
NOTE: use Perl; is on undef hiatus. You can read content, but you can't post it. More info will be forthcoming forthcomingly.

All the Perl that's Practical to Extract and Report

use Perl Log In

Log In

[ Create a new account ]

pudge (1)

  (email not shown publicly)
AOL IM: Crimethnk (Add Buddy, Send Message)

I run this joint, see?

Journal of pudge (1)

Thursday May 01, 2003
06:06 AM

More iTunes: itms

[ #11943 ]

If you install iTunes 4, it adds several new schemes to your list in Internet Config.

[pudge@bourque pudge]$ perl -MMac::InternetConfig -le 'print join "|", GetICHelper($_) for qw(itms itmss daap)'

(hook is the creator ID of iTunes.)

itms stands for "iTunes Music Store" and allows for links like the ones you see below. Click on the song title and iTunes opens to that song in the store; click on the artist or album and get that. Of course, small spelling differences can mess things up, and many songs/albums/artists are not in the store, but that's life in the big city.

I imagine that itmss is for secure transactions. daap is used for playlist sharing. Both itms and daap are being reverse-engineered; itmss is more difficult since you can't just peek at the TCP/IP traffic, seeing as how it is, you know, encrypted.

Now Playing: At The Zoo - Simon & Garfunkel (Old Friends)

The Fine Print: The following comments are owned by whoever posted them. We are not responsible for them in any way.
More | Login | Reply
Loading... please wait.
  • I doubt itmss is anything more than itms over SSL. And I doubt that itms/daap are anything more than HTTP over high numbered ports, with maybe some extra metadata lurking somewhere. It would be too expensive for Apple to invent a completely new protocal when HTTP can be beaten into submission for virtually any task (e.g. SOAP).

    Any clues where they're using itmss vs. itms? Sending purchased tracks perhaps?

    • I did s/itms/itmss/ and iTunes threw me an error. So something else is going on.

      And yes, itms and daap (and most likely itmss) are just HTTP, but requests to send and what to do with the results, these need to be discovered. I didn't mean to say they weren't HTTP, just that there's another sort of protocol on top of HTTP.
      • Re:itmss (Score:3, Informative)

        Yep. A few people on xml-dev have poked around and determined that itms (at least) is a RESTful protocol. Replacing itms: with http: (and adding a port number perhaps) is sufficient for examining the XML documents that iTunes builds into an interface. At first glance, looks like a the presentation portion is an XMLified nib file of sorts. :-) (The data portion is a plist, of course.)
    • Any clues where they're using itmss vs. itms? Sending purchased tracks perhaps?

      There's no need to encrypt the downloaded AAC files since the DRM is already in place before it's downloaded (that's an educated guess). The encryption is probably only for authentication (both the user and machine, for the sake of DRM) and accessing user account information (including the credit card number). Perhaps the authorization "key" which unlocks a file to play on a particular machine would be encrypted to prevent mali
      • There's no need to encrypt the downloaded AAC files since the DRM is already in place before it's downloaded (that's an educated guess).
        I don't think AppleMusic is using DRM. Didn't pudge demonstrate that all of the restrictions are done within iTunes? If they're not using DRM, then encrypting the AAC files in transit will cut down on stealing a track when someone else pays for it.
        • No, the purchased AAC files have embedded DRM. They cannot play in other AAC players -- only iTunes 4, QuickTime 6.2 players, and iPod -- and cannot be played by unauthorized machines.

          But, you can convert the AAC to AIFF with iMovie (and QT 6.2).
          • That doesn't sound like DRM. That sounds like using encryption keys to restrict where the files can be played. DRM is about enforcing your right to make no more than 10 copies of a file, making a file self-destruct after a month (if you don't pay your subscription fee on time), or restricting your right to play a file except on the computer you used to download it.

            DRM is a complete mess. Apple's approach is a lot more sensible. Call it DRM if you want, but it's all picking nits at this point.

            • Microsoft says [] DRM is:

              DRM is a set of technologies content owners can use to protect their copyrights and stay in closer contact with their customers. In most instances, DRM is a system that encrypts digital media content and limits access to only those people who have acquired a proper license to play the content. That is, DRM is a technology that enables the secure distribution, promotion, and sale of digital media content on the Internet.

              That sounds like what Apple is doing, to me. YMMV. :-)

              • It's exactly because of phrases like «limits access to only those people who have acquired a proper license to play the content» that I don't think AppleMusic qualifies as DRM.

                Apple is emphatically letting you burn CDs of purchased tracks, and copy purchased tracks to any-and-all iPods, and even do limited streaming. Sounds to me like there are plenty of legal ways to use purchased tracks that don't involve acquiring a proper license. Or, at the very least, Apple's DRM implementation makes t

                • It says "limits," not "prohibits." It does limit access; you must have the Apple ID authorization to play the original file. And they are limiting streaming. Those are "limits."

                  And yes, it is less restrictive, by a lot. I never pretended all DRM was created equal. I don't even have significant problems with the protection of the purchased files, except 1. I would rather buy CDs and have no such restrictions (not to mention a better format [for me] and higher quality) and 2. Apple said on the one hand
        • Of course iTunes Music Store is using DRM! You can't play a purchased track on a computer until you use iTunes to authorize it (which involves communicating with an Apple server) and you can only have 3 computers at a time authorized to play a particular track.

          What pudge demonstrated was iTunes playlist *sharing* (i.e. streaming) is basically HTTP and using a properly formed URL, you can download a track. This trick will not get you a DRM-free copy of a purchased AAC track, the client computer still has to