in reply to Re: 1337JAPH
in thread 1337JAPH
Like you, I'm only just starting out in the world of obfuscation... This is just a few thoughts that came into my head when I read your code. Not necessarily criticisms!
Try to avoid assigning to "real" variables like @n etc. Use perl builtin variables like $= or $; or just put the values inline. I changed your assignment of @l to a quoted string using qw;; (there are lots of options for the delimiters of quoted strings, ; is one I've been playing about with recently) - more obfu than an "English" word like split.
You also had some dupes in @l which I removed. I'm not sure if they were in there on purpose (to confuse/mislead) or not. Same goes for q0, which I removed. Again this doesn't necessary make it more (or less) obfuscated but it does compact things a bit. You could also consider muddling up the list in non-alphabetic order.
I re-arranged a few other things, using $1,$2 instead of $e,$r and re-ordered the print/pack code into something a little shorter, without changing the basic meaning of the code.
for(qw; a01001010 b01111100 c01011111 d00110101 e01110100 f00110100 g01011100 h00110000 i00101101 j00110011 k01010010 l01010000 m01110010 n01001000 o00111110 p00111100;){/(\w)(\d+)/;$g{$1}=$2} for(split//,q;abcbdeqfbgbhebibjkqljmbqnfophk;){print $g{$_}?pack"B8",$g{$_}:' '}
I hope this is useful, if only a little. Others more experienced (or with more warped minds, depending on how you look at it) may suggest more interesting ways to obfuscate your code. Perhaps you could consider changing from binary to some other more wacky pack format (maybe uuencode?). Good luck anyway.
|
|---|