Beefy Boxes and Bandwidth Generously Provided by pair Networks
Do you know where your variables are?
 
PerlMonks  

Re: My first obfu

by chargrill (Parson)
on Apr 20, 2006 at 03:38 UTC ( #544503=note: print w/ replies, xml ) Need Help??


in reply to My first obfu

I golfed it down a little and furthered the obfuscation a bit as well, but kept your basic premise. The golfing removes some of the easy readability of your original code garnered by running the likes of:

sed s/eval/print/ mpeg.pl | perl | sed s/eval/print/ | perl | perl -MO +=Deparse

Which of course gives us an easy to read, and easy to understand:

@_ = (104, 97, [112, 2], 121, 32, 98, 105, 114, 116, 104, 100, 97, 121 +, 10); foreach $_ (@_) { print chr $_ if not ref $_; print chr($$_[0]) x $$_[1] if ref $_; }
$ _ = ' $ _ =\')01,121,79,001 ,401,611,411,501, 89,23,121,]2,211[ ,79,401(rof)rhc:] 1[_$$x)]0[_$$(rhc ?)fer((tnirp\';s, ,reverse,ee';s'\s '$_'geex;m,,mgsix

And I just noticed that my version seems a bit harder to handily pick apart with sed | Deparse (or variation thereof) - the de-obfuscator needs to do a bit more work.



--chargrill
$,=42;for(34,0,-3,9,-11,11,-17,7,-5){$*.=pack'c'=>$,+=$_}for(reverse s +plit//=>$* ){$%++?$ %%2?push@C,$_,$":push@c,$_,$":(push@C,$_,$")&&push@c,$"}$C[$# +C]=$/;($#C >$#c)?($ c=\@C)&&($ C=\@c):($ c=\@c)&&($C=\@C);$%=$|;for(@$c){print$_^ +$$C[$%++]}


Comment on Re: My first obfu
Select or Download Code

Log In?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://544503]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others browsing the Monastery: (13)
As of 2015-07-01 18:24 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    The top three priorities of my open tasks are (in descending order of likelihood to be worked on) ...









    Results (16 votes), past polls