On Wed, 8 Dec 2004 15:26:58 -0500 (EST), Chris Devers <[EMAIL PROTECTED]> wrote:
> On Wed, 8 Dec 2004, Octavian Rasnita wrote:
> 
> > So the conclusion is that perl code cannot be really hidden (for
> > comercial purposes)?
> 
> For any purposes, yes, code cannot be hidden.

It can be hidden, but it will always be possible to reverse engineer
it's mechanics back.
 
Here is a silly example of a wrapper:
int main(void)
{
  FILE *fp;

  fp = fopen("./perl.pl", "w");

  fputs("#!/usr/bin/perl\nprint\"Hello World\\n\"", fp);
  fclose(fp);
  chmod("./perl.pl", 0000755);
  execve("./perl.pl", NULL, NULL);
  remove("./perl.pl");

  return EXIT_SUCCESS;
}

The code is somewhat hidden after compilation, but it can still be
found if you have access to the machine it's running on.

You could write a wrapper that holds the key to your encrypted
source-code, and have that wrapper decrypt it before running it. Your
code is somewhat hidden, but can be found in RAM at runtime. And, it
can be reverse-engineered like everything else.

> If you don't want someone seeing how your code works, don't let them
> have access to the machine on which your code runs.

This is the only solution. Obscurity can only get you so far.

Tor

-- 
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
<http://learn.perl.org/> <http://learn.perl.org/first-response>


Reply via email to