Why DVD Encryption Sucks


This is a rant I posted on a discussion forum, when someone mentioned DeCSS.

WARNING: RANT FOLLOWS

My beef with DVD is political, and hard to explain in just a few words. Years ago I heard about this new digital video disc format and it seemed like a pretty good idea, so I got myself a DVD-ROM drive and started trying to decode the media format so I could write my own player software. See, I have this general opinion that mass market user interfaces are CRAP that just get in the way of actually using the product, so I tend to make my own hacky stripped-down programs that just do what I want and no more. I discovered that the DVD format is encrypted, and the keys are secret, and the common libraries to decode the format are awkward and place all kinds of silly restrictions on the application (like they won't decode to a TV-out interface unless it has "Macrovision" so you can't -- GASP -- hook it up to a VCR and make a tape of a DVD). I spent a few days reverse-engineering the libraries and a few trial-ware player apps, and found out that the code is extremely debugger-resistant -- it's intentionally obfuscated and tangled to make reverse engineering as difficult as possible. Furthermore, the movie industry managed to get FEDERAL LAWS passed against reverse-engineering the code and decoding DVDs without a license.

The upshot is that without exerting a lot of effort AND breaking the law, it was only possible to get at the movies stored on DVDs through a few heavily restricted and hamstrung applications licensed by the DVDCA, all of which had shit for user interfaces and wouldn't allow simple operations like skipping past the intro crap and going straight to the movie. DVD producers seem to have this fetish for annoying musical menus with SLOW animation sequences and other crap.... When I put in the disc and hit <play> just play the damn movie! If I want some "special feature" or to skip to a particular scene, give me a simple instantaneous text menu like the blue- screen menus on my VCR. But no, this will never be possible because the DVD format is ENCRYPTED and licenses to get the keys are very, very expensive and restrictive, and it's ILLEGAL even to TALK ABOUT decrypting them without the licensed keys.

I don't give a rat's ass about copying movies. I'd never even bother to go to the trouble of copying a DVD. It's totally worth the $2 to me to rent the disc and watch it once. In the unlikely event I ever want to watch the movie again I'll pay another $2; the extremely rare movie I'd want to watch 10 times in my life, I'll gladly pay $20 for that. But because of the idiotic encryption and corporate-purchased federal laws and typically brain-dead packaged software, I'll never spend a cent on DVDs, either to rent or to buy.

I know there are technical ways around the problems now -- DeCSS will decrypt the DVD so it can be played without the keys, by non-DVDCA-licensed (and thus somewhat less hamstrung) players, but to a large degree the social problems still exist: it's difficult-to-impossible to develop good turn-key DVD player applications and libraries in an open environment due to the DMCA and other bogus federal laws. When they open up the format, or repeal the laws and allow reverse-engineering and encryption-cracking, then I'll be all over DVD, renting and buying them like crazy. Until then, not one red cent from me.

CDs are the model I like. Wide open format, no license whatsoever needed to read and use the data however you want. Copyright still protects the music, preventing unauthorized resale or production of derivative works, and I can respect that (sort of -- but that's another story). I'm not interested in wholesale copying and distribution of other people's music. But I definitely want to listen to that music in my own way, with a player that I can program myself in any way I want, using code developed freely and in the open by a large community of programmers. If I want to listen to a song backwards, or at double speed, or interleaved with another song, or clip out 10 seconds from the middle, or do a Fourier analysis, or convert it into a visualization, or whatever other strange thing I happen to dream up -- no problem, just code it and go. The music industry is making noises now about putting an end to that freedom, to stop copying. Well fuck that, I don't want to be straightjacketed into a Coke-vs-Pepsi choice of equally crappy music player programs that only let me listen to the song how THEY want me to hear it. That's why Apple's music store is crap, the damn files have DVD-style illegal-to-crack encryption that can only be decrypted and played by their crappy little toy player. Maybe it's good enough for the masses (hey, why the hell would you ever want to listen to that song at double speed backwards interleaved with another song while doing a Fourier analysis for visualization, you weirdo?) but it's not good enough for me.

Art is a luxury, and I can live without it. I can definitely live without the crap art that some corporate executive thinks is so valuable that it has to be double encrypted and locked in an iron box with only a tiny peep-hole to let the consumer masses pay through the nose catch a glimpse of it.

By the way, this all applies equally to any DRM ("Digital Rights Management") system. They all work by encrypting the data and limiting access to the decryption keys. In short, arbitrary access to the data must be limited, because that arbitrary access could be used -- GASP -- to make unauthorized copies! This means anything "protected" with DRM can only be only be accessed through licensed toy "glimpse through a peep-hole" players. TCPA is a system for turning computers into uncrackable DRM machines, making sure that decryption keys are only accessible by licensed limited-access software, and ensuring that those keys will never be cracked by any practical amount of hostile reverse engineering. (And of course there are laws against that reverse engineering, too.)

RANT OFF. For now.

Got something to say? Talk to the Cheese!