Re: Making a partial C compiler

Ivan Boldyrev <boldyrev@cgitftp.uiggm.nsc.ru>
3 Jun 2003 00:45:40 -0400

          From comp.compilers

Related articles
[2 earlier articles]
Re: Making a partial C compiler matt@peakfive.com (Matt Rosing) (2003-05-24)
Re: Making a partial C compiler blackmarlin@asean-mail.com (2003-05-24)
Re: Making a partial C compiler idbaxter@semdesigns.com (2003-05-24)
Re: Making a partial C compiler cyberheg@l115.langkaer.dk (John Eskie) (2003-05-29)
Re: Making a partial C compiler vbdis@aol.com (2003-06-03)
Re: Making a partial C compiler lars@bearnip.com (2003-06-03)
Re: Making a partial C compiler boldyrev@cgitftp.uiggm.nsc.ru (Ivan Boldyrev) (2003-06-03)
Re: Making a partial C compiler jyrixx@astro.temple.edu (2003-06-03)
Re: Making a partial C compiler torbenm@diku.dk (2003-06-05)
Re: Making a partial C compiler cyberheg@l115.langkaer.dk (John Eskie) (2003-06-08)
Re: Making a partial C compiler cyberheg@l115.langkaer.dk (John Eskie) (2003-06-08)
Re: Making a partial C compiler and obfuscator chase@theworld.com (David Chase) (2003-06-08)
Re: Making a partial C compiler vbdis@aol.com (2003-06-20)
| List of all articles for this month |

From: Ivan Boldyrev <boldyrev@cgitftp.uiggm.nsc.ru>
Newsgroups: comp.compilers
Date: 3 Jun 2003 00:45:40 -0400
Organization: this field is intentionally left blank
References: 03-05-139 03-05-202
Keywords: C
Posted-Date: 03 Jun 2003 00:45:39 EDT

"John Eskie" <cyberheg@l115.langkaer.dk> writes:


> When I said flow obfuscation I really had something as this in mind:
>
> 1. Variable and function name string replacement (more of you
> already wrote how that can be done).


> 2. Introduction of parallel code i.e. dummy code which doesn't interfear
> with the real program but make things harder to read since you gotta figure
> out what is real and what isn't real.


Warning: optimizer can remove this dummy code.


> 3. Rearranging of code so if you got 3 blocks of statements A, B, C you can
> do:
>


Optimizing compiler (for example, gcc with -O1) will re-arrange these
blocks back. Do you agree to distribute slow unoptimized code?


> 4. Dynamic "linking" by making exact function calls to be resolved at
> runtime by using function pointers.


It may help, especially with name obfuscation.


--
Ivan Boldyrev


Post a followup to this message

Return to the comp.compilers page.
Search the comp.compilers archives again.