> ... This got me to thinking -- suitably> sophisticated transformations could preserve the semantics of the> program, while completely disguising the text of the source. This has> obvious implications for anyone into intellectual property theft.>> So the question is, has anybody written such a program? Will anyone?> Would releasing such a program on the net be like the SATAN of IP?> [There are certainly C obfuscators, but the ones I know of perform primarily> lexical smooshing. -John]

We had received quite a bunch of source code, where, besides the
lexical smooshing - quoting John - the code was also destructured,
that is, enum variable declarations where replaced by ints,
loops by gotos, etc... It was rather effective: we rebuilt the source
code of a single function, and it was awfully long and awkward. I doubt
that it could be performed automatically reasonably easily.

I think it was produced by a tool by Gimpel Software. I never used it myself,
and I guess there might be limitations when using such a tool with too
much preprocessor niceties.

Cheers,

Darius
[Gimpel's product was called C Shroud. I presume it's still available,
though I don't see it on their web site, either. -John]
--