Beefy Boxes and Bandwidth Generously Provided by pair Networks
Your skill will accomplish
what the force of many cannot


by Dominus (Parson)
on May 19, 2001 at 23:16 UTC ( #81756=obfuscated: print w/ replies, xml ) Need Help??

This is It decodes CSS, which is the Content-Scrambling System used to encrypt video data on DVDs:
$_='while(read+STDIN,$_,2048){$a=29;$c=142;if((@a=unx"C*",$_)[20]&48){ +$h=5; $_=unxb24,join"",@b=map{xB8,unxb8,chr($_^$a[--$h+84])}@ARGV;s/...$/1$& +/;$d= unxV,xb25,$_;$b=73;$e=256|(ord$b[4])<<9|ord$b[3];$d=$d>>8^($f=($t=255) +&($d >>12^$d>>4^$d^$d/8))<<17,$e=$e>>8^($t&($g=($q=$e>>14&7^$e)^$q*8^$q<<6) +)<<9 ,$_=(map{$_%16or$t^=$c^=($m=(11,10,116,100,11,122,20,100)[$_/16%8])&11 +0;$t ^=(72,@z=(64,72,$a^=12*($_%16-2?0:$m&17)),$b^=$_%64?12:0,@z)[$_%8]}(16 +..271)) [$_]^(($h>>=8)+=$f+(~$g&$t))for@a[128..$#a]}print+x"C*",@a}';s/x/pack+ +/g;eval
I did not write this; it was written by Keith Winstein and Marc Horowitz at MIT.

Some time ago I was hired by Wired magazine to explain how this program worked. I promised you folks that when the magazine got to the newsstand, I would put my original, unedited version online.

Here it is.

Mark Dominus
Perl Paraphernalia

Comment on qrpff
Download Code

Log In?

What's my password?
Create A New User
Node Status?
node history
Node Type: obfuscated [id://81756]
Approved by root
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others contemplating the Monastery: (3)
As of 2015-11-28 08:35 GMT
Find Nodes?
    Voting Booth?

    What would be the most significant thing to happen if a rope (or wire) tied the Earth and the Moon together?

    Results (740 votes), past polls