Beefy Boxes and Bandwidth Generously Provided by pair Networks
No such thing as a small change

Re^7: What happened to perlcc?

by daveola (Acolyte)
on Feb 28, 2011 at 21:45 UTC ( #890648=note: print w/replies, xml ) Need Help??

in reply to Re^6: What happened to perlcc?
in thread What happened to perlcc?

It's strange, you even mention it yourself:

Source code is also obfuscated using a simple key to avoid extracting the string from the executable.

And in the home page, perhaps missed, was:

Takes a single perl script, converts the block using a simple encoding with an optionally defined key.

Which you can see from the usage involves the '-key' option.

  -key <str>         Specify key for encode/decode of embedded script

So your claim that the source code is provided intact is false.

And yes, it's weak encryption. Clearly if someone wants to attack an obfuscation like this, they'll do some sort of runtime attack rather than try to decode the script.

You also state: "Finally, there's an implicit claim that an executable can be made from the generated .c file, but it's not obvious how to do that"

And again, from the usage:

  -exe <exec>        Compile the code into an executable

I think that's pretty simple

But to help make it clearer, I've added the compilation command to the comments at the top of the C output.

Replies are listed 'Best First'.
Re^8: What happened to perlcc?
by ikegami (Pope) on Feb 28, 2011 at 22:17 UTC

    And in the home page, perhaps missed, was:

    Wasn't missed, just not relevant.

    And yes, it's weak encryption

    It's encoding, not encryption or obfuscation. There must be a secret for encryption.

    So your claim that the source code is provided intact is false.

    No, even when a key is specified, the code is provided intact.

    Compile the code into an executable

    I missed that, thanks.

        Encryption does NOT require a secret.

        Again? You really should start reading the material to which you reference before contradicting.

        to make it unreadable to anyone except those possessing special knowledge

        To consider ROT13 and perlc to be forms of encryption, one must consider the algorithm itself to be the secret. First rule of encryption: Never consider the algorithm a secret.

        But enough theory. In practice, perlc provides the original intact without knowing either the algorithm or the salt you call "key". Objections over names don't really matter.

Log In?

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

How do I use this? | Other CB clients
Other Users?
Others surveying the Monastery: (8)
As of 2021-01-18 09:38 GMT
Find Nodes?
    Voting Booth?