Joined: 21 Sep 2003 Posts: 16777097 Location: Portugal
Posted: Wed Oct 13, 2004 6:33 am Post subject: C code obfuscator
Ok, I am releasing a little toy prog that I made for fun over the last couple of afternoons, for anyone interested. It is licensed under the GPL.
I make no claims as to it's usability (in fact, I make all claims to the contrary: it's useless, don't use it! ).
An extract from the README:
Quote:
The original idea [with obfs is] to implement something that strips all non-essential
sequences from a C language source code (meaning comments, whitespace),
while leaving it's functionality unchanged.
Of course this is of little use for most real world purposes, but well, who
cares
Here is the source (you will need gcc, make and flex or equivalents): obfs-0.1.tar.gz
A compiled binary for Intel 586 Linux platforms, dynamically linked with glicb 2.3.3: obfs-0.1.i586.tar.gz
(./obfs --help for usage information)
As I said, nothing fancy, especially hard to make, or even useful. It probably has bugs, don't use it for production code. I just released it as a curiosity. I can make available a version of the source that does not require flex to compile if needed.
Nice little program there . I usually always code with neatness, I always make sure there are no extra spaces, etc. Lol, I even make sure I have CR LF after the text in EVERY text file on my computer. I'm like a nerd at keeping my files neat. Otherwise I probably might affixiate all over my self .
Joined: 21 Sep 2003 Posts: 16777097 Location: Portugal
Posted: Thu Oct 14, 2004 3:17 am Post subject:
Hehe, thank you
Well, actually the point ot the program above isn't really to make the code neat, rather to make it "un-neat" - i.e. turn something like:
Code:
for (i = 0; i < 50; i += 5 * -k)
{
/* this for is here to get the matter/anti-matter conversor
initialized before the Gauss flux reverses on itself */
blah (bla, ble);
if (s[i] == '\0')
{ /* avoid time paradox with the sequence transmogrifier */
bleh (i);
i = i - -bloh(k);
}
}
Future versions (if I do get around to making them) should do neater things such as mangle variable names, replace common expressions and literals with weird "look at me for 15 minutes to figure out what this does" expressions that return the same value, and so on.
As I said, just something completely useless unless maybe if you're wanting to make a sig program or something
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum