Beefy Boxes and Bandwidth Generously Provided by pair Networks
The stupid question is the question not asked


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

Log In?

What's my password?
Create A New User
Node Status?
node history
Node Type: obfuscated [id://81756]
Approved by root
Discipulus wonders if just numbers less than 18 are really floating..( chemical humor)
[Lady_Aleena]: Hello.
[Discipulus]: ciao Lady_Aleena
[chacham]: hi

How do I use this? | Other CB clients
Other Users?
Others avoiding work at the Monastery: (4)
As of 2017-06-26 21:05 GMT
Find Nodes?
    Voting Booth?
    How many monitors do you use while coding?

    Results (594 votes). Check out past polls.