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.


s^^unp(;75N=&9I<V@`ack(u,^;s|\(.+\`|"$`$'\"$&\"\)"|ee;/m.+h/&&print$&

In reply to Re^2: 1337JAPH by muntfish
in thread 1337JAPH by Anonymous Monk

Title:
Use:  <p> text here (a paragraph) </p>
and:  <code> code here </code>
to format your post, it's "PerlMonks-approved HTML":



  • Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
  • Titles consisting of a single word are discouraged, and in most cases are disallowed outright.
  • Read Where should I post X? if you're not absolutely sure you're posting in the right place.
  • Please read these before you post! —
  • Posts may use any of the Perl Monks Approved HTML tags:
    a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, details, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
  • You may need to use entities for some characters, as follows. (Exception: Within code tags, you can put the characters literally.)
            For:     Use:
    & &amp;
    < &lt;
    > &gt;
    [ &#91;
    ] &#93;
  • Link using PerlMonks shortcuts! What shortcuts can I use for linking?
  • See Writeup Formatting Tips and other pages linked from there for more info.