Newsforge reports that Reuters last week violated the DMCA (Digital Millenium Copyright Act) by publishing an article on how to disable Sony's music CD copyprotection using a magic marker. The story was widely republished in mainstream forums including CNN.
Given that hacking site 2600 has been taken to court simply for linking to information about DeCSS (a scheme used by Linux users primarily for watching legally purchased DVDs) under the DMCA, the Reuters article, which actually contained instructions for disabling Sony's copy protection, may be an interesting test of the DMCA vs. first-amendment rights. According to the DMCA, not only is illegal to violate copyright protection, but it is verboten to explain to others how to disable or compromise copy-protection, or even to let them know where that information resides.
That may seem minor, but it's striking when you realize that simply by linking to the Reuters story on Yahoo! I'm also therefore violating the DMCA and opening myself to potential litigation from Sony. So much for the right to report on current events.
From Reuters: "Monday, Reuters obtained an ordinary copy of Celine Dion (news - web sites)'s newest release "A New Day Has Come," which comes embedded with Sony's "Key2Audio" technology.
After an initial attempt to play the disc on a PC resulted in failure, the edge of the shiny side of the disc was blackened out with a felt tip marker. The second attempt with the marked-up CD played and copied to the hard drive without a hitch.
Internet postings claim that tape or even a sticky note can also be used to cover the security track, typically located on the outer rim of the disc. And there are suggestions that copy protection schemes used by other music labels can also be circumvented in a similar way. "
In case you're curious, this tiny program from two MIT students is all that's needed to decode a DVD in Linux for watching. (As I remember it, the DVD consortium claimed that the encryption scheme was "unbreakable.")
#!/usr/bin/perl # 472-byte qrpff, Keith Winstein and Marc Horowitz
# MPEG 2 PS VOB file -> descrambled output on stdout.
# usage: perl -I
# where k1..k5 are the title key bytes in least to most-significant order
s''$/=\2048;while(<>){G=29;R=142;if((@a=unqT="C*",_)[20]&48){D=89;_=unqb24,qT,@
b=map{ord qB8,unqb8,qT,_^$a[--D]}@INC;s/...$/1$&/;Q=unqV,qb25,_;H=73;O=$b[4]<<9
|256|$b[3];Q=Q>>8^(P=(E=255)&(Q>>12^Q>>4^Q/8^Q))<<17,O=O>>8^(E&(F=(S=O>>14&7^O)
^S*8^S<<6))<<9,_=(map{U=_%16orE^=R^=110&(S=(unqT,"\xb\ntd\xbz\x14d")[_/16%8]);E
^=(72,@z=(64,72,G^=12*(U-2?0:S&17)),H^=_%64?12:0,@z)[_%8]}(16..271))[_]^((D>>=8
)+=P+(~F&E))for@a[128..$#a]}print+qT,@a}';s/[D-HO-U_]/\$$&/g;s/q/pack+/g;eval