DVDの解読プログラム
#!/usr/bin/perl -w
# 526-byte qrpff Keith Winstein and Marc Horowitz
# MPEG 2 PS VOB file on stdin -> descrambled output on stdout
# arguments: title key bytes in least to most-significant order
$_='while(read+STDIN$_2048){$a=29;$c=142;if>8^($f=($t=255)&($d>>12^$d>>4^$d^$d/8">*1<<17$e=$e>>8^($t&($g=($q=$e>>14&7^$e)^$q*8^$q<<6))<<9
$_=(map{$_%16or$t^=$c^=($m=(11101161001112220100)[$_/16%8])&110;$t
^=(72@z=(6472$a^=12*($_%16-2?0:$m&17))$b^=$_%64?12:0@z)[$_%8]}(16..271))
[$_]^*2for@a[128..$#a]}print+x"C*"@a}';s/x/pack+/g;eval
たった7行のPerlコードで解読できるなんて・・・。
DVDの暗号が脆いのはいいとして、Perlのすごさに恐れ入りました。
昔、MSX-FANで1画面プログラムとかあったけど、それを思い出しました。
3Dのレーシングゲームとかあったよなぁ・・・。全部マシン語だったけど。