I was looking at this obfu, and after running it, and looking at it again, it occured to me how almost MVC this concept of a perl obfuscation was -- how completely separate the logic is from the presentation.

It's been at least implied that making an obfuscation is difficult and a mark of a talented (and perhaps dangerously obsessive) perl programmer. Might it not be a fun and dangerous experiment to crank it up a level of abstraction, and make an obfuscation maker? To bring the twisted art into the hands of the masses?

So suppose some madman were to start from a point of having a perl-aware context engine and something like a text editor ui. From that point you could change it into something like a painting program, allowing the user to draw arbitrarily, and as they draw, rewrite and reshape the text of the program while applying logically-harmless transitions to the text where needed to add more "ink" or to make certain areas darker or lighter. And while it would obviously cost something in performance, there's no reason it would have to change the functionality in any way (unless the performance timing affects the outcome - so you wouldn't want to use this thing on the core of a video encoding engine.)

Maybe while the user is painting, even try to (if this is even possible) arrange syntax elements in a pattern so that in a properly highlighting editor it will show a color image?

Can you imagine the labyrinthine obfus that could be produced with interactive graphical computer assistance? (cue maniacal laughter)

I don't want to be (solely) responsible for bringing such a thing into the world, but I don't mind planting the seed.. thoughts? For example, what transitions might be useful for "darkening" or "lightening"? One that comes to mind for darkening would be.. adding parenthesis around every expression element.


In reply to An awful, horrible, evil idea.. by dynamo

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.