Beefy Boxes and Bandwidth Generously Provided by pair Networks
Syntactic Confectionery Delight
 
PerlMonks  

comment on

( [id://3333]=superdoc: print w/replies, xml ) Need Help??

The Obfuscated Code section contains some interesting code. The problem is that without working your way through the code it is difficult to decide if it is any good or not. This is probably why obfuscated code which is formatted into a recognisable shape often get more votes than visually mundane but superior code.*

However, it is unlikely that anyone has the time to work through all of the code posted in Obfuscated Code in order to determine the quality. Therefore, it would be nice if people took it upon themselves to take an occasional submission and deobfuscate it.

Apart from the benefits to the community at large deobfuscation is a good way to learn some of the more idiomatic or obscure features of Perl.

Perltidy or the indent-region function in emacs can be helpful in unearthing hidden code structures. And since perl is blind to obfuscation B::Deparse can be useful for clarifying code segments.

However, if the obfuscation is good these tools will be of limited use. I once used Perltidy and emacs to massage Dominus's obfu into a readable shape. It didn't help. While the overall structure was visible the mechanism was still deeply hidden.

As an introduction to the subject of obfuscation and JAPHs have a look at Teodor Zlatanov's The elegance of JAPH or Abigail's JAPHs and other obscure signatures.

So learn a little bit more about Perl while gaining XP and the respect of your peers. Deobfuscate today.

--
John.

* This is not to say that some of the superior code isn't formatted as well.


In reply to Deobfuscation for fun and profit by jmcnamara

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



  • Are you posting in the right place? Check out Where do I post X? to know for sure.
  • Posts may use any of the Perl Monks Approved HTML tags. Currently these include the following:
    <code> <a> <b> <big> <blockquote> <br /> <dd> <dl> <dt> <em> <font> <h1> <h2> <h3> <h4> <h5> <h6> <hr /> <i> <li> <nbsp> <ol> <p> <small> <strike> <strong> <sub> <sup> <table> <td> <th> <tr> <tt> <u> <ul>
  • Snippets of code should be wrapped in <code> tags not <pre> tags. In fact, <pre> tags should generally be avoided. If they must be used, extreme care should be taken to ensure that their contents do not have long lines (<70 chars), in order to prevent horizontal scrolling (and possible janitor intervention).
  • Want more info? How to link or How to display code and escape characters are good places to start.
Log In?
Username:
Password:

What's my password?
Create A New User
Domain Nodelet?
Chatterbox?
and the web crawler heard nothing...

How do I use this?Last hourOther CB clients
Other Users?
Others chanting in the Monastery: (1)
As of 2024-04-18 23:44 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found