|C/C++ obfuscator firstname.lastname@example.org (Abbas) (2005-01-22)|
|Re: C/C++ obfuscator lkrupp@pssw.NOSPAM.com.INVALID (Louis Krupp) (2005-01-24)|
|Re: C/C++ obfuscator email@example.com (Walter Banks) (2005-01-24)|
|Re: C/C++ obfuscator firstname.lastname@example.org (Paul Pluzhnikov) (2005-01-25)|
|Re: C/C++ obfuscator email@example.com (George Neuner) (2005-01-25)|
|Re: C/C++ obfuscator lkrupp@pssw.NOSPAM.com.INVALID (Louis Krupp) (2005-01-30)|
|Re: C/C++ obfuscator firstname.lastname@example.org (Ira Baxter) (2005-01-30)|
|Re: C/C++ obfuscator email@example.com (Paul Pluzhnikov) (2005-02-03)|
|Re: C/C++ obfuscator firstname.lastname@example.org (2005-02-03)|
|Re: C/C++ obfuscator email@example.com (Paul Pluzhnikov) (2005-02-06)|
|Re: C/C++ obfuscator firstname.lastname@example.org (Louis Krupp) (2005-02-06)|
|From:||Paul Pluzhnikov <email@example.com>|
|Date:||3 Feb 2005 22:39:27 -0500|
|References:||05-01-074 05-01-087 05-01-093 05-01-103|
|Posted-Date:||03 Feb 2005 22:39:27 EST|
Louis Krupp <lkrupp@pssw.NOSPAM.com.INVALID> writes:
> > That has nothing whatsoever to do with OPs question.
> That has *everything* to do with the original post,
My mistake. I only read your quote from the OP, not his original
> Shipping obfuscated source, on the other hand, is an interesting idea.
> Could the obfuscated code be optimized as well as the original?
If the transformations performed by the obfuscator are correct and
do not change control flow too drastically, one would think that the
obfuscated code will be just as optimizable as the original.
> Would it be easier to reverse engineer?
It might be slightly easier, but not significantly so: it is farly
easy to convert e.g. SPARC disassembly back into "gibberish" C.
> lots of people can read a C program.
I expect that anyone can be tought "reading comprehension" of SPARC
assembly in a day or two.
> The source to be shipped would have to be tested on any compiler the
> customer might use ...
Not necessarily: if the original code desn't use
arcane/not-well-supported language features, then one can test 1
or 2 compilers, and expect all other combinations to work.
If some compiler/OS combinations turn out not to work, future
customers may be warned against using those.
The above approach is pretty much what everyone who ships source
does; shipping obfuscated source is not that different.
In order to understand recursion you must first understand recursion.
Return to the
Search the comp.compilers archives again.