Up

My collection of perl obfuscations/signatures.

First off, yes I know how sad this is, but it keeps me busy in "spare" moments :D

Up to date sigs/obfu's can be found on perlmonks (ones that are posted there are linked with a pm link).

To run them (in case you don't know),either save as a .pl file (using the download link) and run normally or:

# perl <return>
<pasted code>
<ctrl-D>
I'm sorry but most of them use VT100 escape characters, so you'll need 'nix terminal.

You can download a tgz of a selection of my sigs (it will extract to a ./sigs directory)

The XML link will show you some of the xml used to generate this site (using Template Toolkit).

They're roughly split up by size (and coincidentally age - my obfuscations became longer as they became more complicated) - this page is ofuscations more than 4 lines long, and the next page shows ones suitable for signatures.

The Obfuscations

Balls! Pt 4 (pm)

This is part of a series; It is pure perl so should run anywhere.
           $_='map($     
       ..=pack("C",--$        
      _),@_=unpack"C*",            q^pqfo!g   
     -#?p/cnq#<qsjou!g!qb      dl#b3W:y31Dy4D2   
    127#-CN-29429-1-2189-5    1-251-241-63539:-      
    1-29311-366-279<%v>qbd   l#y29311#<%q>5+bubo3  
    )2-2*<gps)1//31111*|%s  >%`+%q02911<nbq!|%i>fy 
    q))%s,%`0:*0:*0:<%y>)2  0)%i,20%i**+dpt%s<%z>)
     20)%i,20%i**+tjo%s<w   fd)%v-jou)81+)2,%y,%z* 
      ,251+)21,jou)26,91    +%i++30)2,%i++3*,51+)%    
        z.%y****-9*>)%q      03,%s*&)3+%q*?%q@3;2  
           ~1//26~qs          jou!g%v^),eval$.'   
                               ;s#\s##g;eval  

see this for more info

Let's go to the Movies (pm)

This is related to this series
                                                           $_=q^($w,$h)=s
             plit/x/,shift||"19x20";$q=10+10*$w;$r=20+10*$h;@m=((31,(15)x
 ($w-1))x$h,(31)x$w);$m[$c]|=16,!(@a=grep!($m[$c+$$_[0]]&16+$|*$$_[1]),[-
 1,8],[1,1],[$w,4],[-$w,2])?$c=pop@p:${($i,$j)=@{$a[rand@a
  ]};$m[$c]&=
 ~8/$j;push@p,$c;$m[$c+=$i]&=~$j;++$u-$h*$w+$h||map$_&=15,@m,splice(@p),$
 c=$|=1}until$|&$c+2>$w*$h;$C=$q-4*int$q/4;$A=($q+$C)*$r;$u=pack"x"x(($q+
 $C)*$r);subZd{my($f,$g,$h,$i,$e)=@_;@a=sort{"000$a"<=>"000$b"}$h,$i||$h;
 for($a[0]..$a[1]){$s=($r-$_)*($q+$C)+$f;vec($u,$_,8)=$e||2 for$s..$s+$g-
 1}};subZt{$a=shift;$x=10*($a%$w);$y=10*(2+int$a/$w)};dZ9,$q-20,10;dZ9,$q
 -20,$r-10;dZ9,1,10,$r-10;dZ$q-11,1,10,$r-10;map{t$_;if($_%$w){$m[$_]&2?d
 $x-1,11,$y:"";$m[$_]&8?d$x+9,1,$y-10,$y:"";}}0..-1+$w*$h;$F="LIST";open(
 FH,">al.avi");binmodeZFH;selectZFH;printZpack"V*",/\d/?$_:unpack"V*",$_Z
 for"RIFF",(1256+($A+24)*($B=3+scalar@p)),"AVIZ$F",1216,"hdrlavih",56,500
 000,32,0,2064,$B,0,1,$A,$q,$r,(0)x4,$F,1140,"strlstrh",56,"vids",(0)x4,1
 ,10,0,$B,$A,-1,(0)x3,"strf",1064,40,$q,$r,pack("vv",1,8),0,$A,(0)x4,pack
 (("C"x1024),(0xff)x3,0,128),$F,(4+($A+8)*$B),"movi";map{printZSTDOUT".";
 t$z||1;$l=$x;$t=$y;t$_;$ri=$x;if($l>$x){$ri=$l;$l=$x}d$l+2,5+$ri-$l,($t<
 $y?$t:$y)-7,($t<$y?$y:$t)-3,1;$z=$_;print"00db".pack("V",$A).$u}@p,(-1+$
 w*$h)x3;print"idx1".pack"V",16*$B;$o=4;for(1..$B){print"00db".pack"VVV",
 16,$o,$A;$o+=$A+8}^;s#((?{$a.=$+})\s?(\S*)\s?)*#$a=~s/Z/ /g;$a#see  

Bear is driving? (pm) (Requires GD)

$_=q^use G;$i=M G::Image(FABL0,L0,L0);J l{$p=M G::C;$$_=ord(D-Lfor qw.x 
y.;$p->addPt(($x+=D,($y+=D)while$#_;AfilledC($p,D}J d{E0,0,L,-HL,H-L,HAB
KFEL,HL,-H0,L,-L,HABL,0,0)}J a{d@_;E0,0,0,L,L,H0,-L,ABL,F}$_="]]?l!{!]!?
!!?0]?{N";s#(.)(.)#a"$1","$2";\n#g;/".+;/;$_.="d$&";eval;open Z,">o.png"
;binmode Z;print ZApng^;for$r(qw.$i-> colorAllocate( Polygon shift) l@_, 
KK); GD 10, I sub 153, 20 new.){$l=chr 65+$c++;s#$l#$r#g}s#\n##g;eval

GD && EAN-13 (pm) (Requires GD)

$_="JUST ANOTHER PERL HACKER,";use GD;$i=new GD::Image(113,350);$i->fill
(0,0,$i->colorAllocate(255,255,255));s#.{5}#$d=5;@a=($q=0,map{$d+=$f++%2
?3*$_:$_;$_;}map{split//}unpack C5,$&);push@a,10-$d%10;@g=(3,5,23,join( 
"",@a)=~/(.{6})/,63,$');$b=$i->colorAllocate(0,0,0);$t=9;map{$h=$q++%7? 
50:60;$i->line(++$t,$y+9,$t,$y+$h,$_?$b:$w)for split//,/1/?$_.$i->string
(gdTinyFont,shift@g,53+$y,shift@g,$b):do{$l=$z=unpack B7,pack v,unpack(x
.$_.C,"5A;eKYWc_3")-40<<1;$z=~s/./1^$&/eg;$m=reverse$z;${qw.l m m l l m.
[$c++%12]||z}}}101,splice(@a,0,6,"01010"),@a,101;$y+=70#eg;print$i->png

The output should be piped into a png file thusly:
# perl ean-13.pl > out.png

Time Quine (pm)

$_='$p=chr(39);$t=reverse"\$_=$p$_$p;\ns!".chr(92)."s!!g;eval";$_="2.;NN
NO82VWiiiiiY2.8iW2/Ve<.8WMdO82WNA-77-A3ii3,ryir,K;F.;o.2O823i`VFBVVn.<82
.;O82<.;O83d82!";s!.!-32+ord$&!eg;s!.!(++$c%2?$":1)x$&!eg;s!.{10}!push@_
,$&!eg;{$q=$t;$z=sprintf"%2d:"x3,(localtime)[2,$|=1,0];sleep$|;my$s;for$
l(0..7){map$s.=s#:##?$"x4:$_[$l+$_*8].$",split//,$z;$s.=$/}$s=~s&1&chop$
q&eg;$_=reverse$q;s%.{78}%$&$/%g;print"\ec$s$/$_$/";redo}';s!\s!!g;eval

More..

I hope you like these, do what you want with them, just remember where you got 'em yeah?

Ta, Alex