18th International Obfuscated C Code Contest Opens
chongo writes "The 18th International Obfuscated C Code Contest, the Internet's
longest running contest, is now open. The goals,
rules, and guidelines are available. Use the online submission tool to submit your obfuscated C code by 22-May-2005 23:59:59 UTC."
Here are some past winners with "Spoilers" for what they do. It's already pretty slow though and I'm first post.
Webmaster Wanted - Entropic Reactions
0 comments and /.'ed
ZERO COMMENTS!
Trolling using another account since 2005.
The legacy code I have to work on must be submitted. No body knows how it works and there is no documentation.
~Aha~
This is the extent of my programming skills
10 goto Hell
20 goto 10
Job? I don't have time to get a job! Who will sit around and bitch about being broke and unemployed then?
fact( int a) {return (a2?a : a * fact (a) ); }
slashdotted!
Weeeeeeeeeeeeeeee
Honestly, slashdot should seriously consider making all of the links to poor old defenseless websites such as this one automatically convert to mirrordot links.
It starts to get really ridiculous...
Stupid HTML that ignores white space. It looks kinda cool in the source of the page.
obviously been obfuscated... er, I mean slashdotted.
I'm gonna run now.
DOS C:\DOS C:\DOS\RUN RUN DOS RUN.. Wait... that's C isn't it? God damn it. I'll never win at this rate...
executeBrainFuckLanguageInterpreter(">>-+>+[>]+[-[ [>]-]>-[>]-]]");
Table-ized A.I.
www.tw.ioccc.org - Hsin-Chu, Taiwan
www.au.ioccc.org - Sydney, Australia
www.de.ioccc.org - Frankfurt/Main, Germany
www.es.ioccc.org - Madrid, Spain
www.gr.ioccc.org - Athens, Greece
www0.us.ioccc.org - Sunnyvale California, US
www1.us.ioccc.org - Saint Paul, Minnesota US
is there a similar contest for Perl? I imagine much crazier submissions with Perl than what can be done with C (no offense to C programmers ;))
"You mortals are so obtuse." -Q
Once upon a midnight dreary, gcc compiled, growing weak and weary,
code obfuscated like ne'er seen before.
I could hear a faint grinding,
As the preprocessor went on finding,
it was a noise I could plainly say I abhor.
T'was an executable destined to dump quite a core.
It was a nice sunny day, I remember, in May,
and there lay pizza boxes scattered all o'er the floor.
But because of this Gentoo, I felt I was being sent to
the depths of hell for damnation evermore.
All for a program that would dump its core.
In time, day diminished, and gcc was finished,
and the program was a size worthy of lore,
because of the a.out, my hard drive near ran out,
as the program took up gigabytes galore,
and when I ran it, quoth the output, "I've just dumped a core."
Will anyone be able to top the venerable 12 days?
Compile with -fwritable-strings, run, type in a number like 20, find your way out...
,C --Z ]=A,"_.":" |"];}
char*M,A,Z,E=40,J[40],T[40];main(C){for( *J=A=scanf(M="%d",&C);
-- E; J[ E] =T
[E ]= E) printf("._"); for(;(A-=Z=!Z) || (printf("\n|"
) , A = 39
) ; Z || printf (M ))M[Z]=Z[A-(E =A[J-Z])&&!C
& A == T[ A]
|6<<27<rand()||!C&!Z?J[T[E]=T[A]]=E,J[T[A]=A-
If you haven't been there yet, you should check out TheDailyWTF... it's not obfuscated code, but rather unmaintainable code people submit to show what they've been left to deal with at work. Quite interesting, and sometimes as difficult to understand as intentionally obfuscated code.
500GB of disk, 5TB of transfer, $5.95/mo
Full text of rules.txt
You're right, I wouldn't steal a car. But if it were possible, I sure as hell would download one!
"With a little practice, language can become a complete impediment to understanding"
But what's the point? Why expend all that effort on obfuscating code when there are languages with obfuscation already built in?
May your signals all trap
...
May your references be bounded
All memory aligned
Floats to ints rounded
Remember
Non-zero is true
++ adds one
Arrays start with zero
And NULL is for none
For octal, use zero
0x means hex
= will set
== means test
use -> for a pointer
a dot if its not
? : is confusing
use them a lot
a.out is your program
there's no U in foobar
And char (*(*x())[])() is a function returning a pointer to an array of pointers to functions returning char.
Wow, these guys are really good. They've obviously obfuscated their web site as well, I just get a time out when I try to load http://www.ioccc.org/main.html !
"I'd rather have a full bottle in front of me than a full frontal lobotomy"
Wasn't there some kind of obfuscated vote counting software contest announced before the recent US election? I would like to see some of the entrants into that.
Am I the only that thinks that perhaps the programmers of the world can spend their energies doing something a little...um...i dunno...um...productive?
take your favorite hello world project and outsource the coding to india, 500+ developers/project and punjabi will sure give you the top price at the cost of a big mac.
This I love - One guy went and had the first ever entry in the ioccc (from 1984) tattooed on his forearm ...
http://tattoo.thomasscovell.com/index.html
This I also love - the first ever entry was a hello world program!
That entry was the longest one ever made into a tattoo, however there are hundreds of people around the world who have unknowingly had this entry tattoed on their forearm:
http://www.de.ioccc.org/years.html#1994_smr
This is really a great competition - lots of fun, lots to learn. Try understanding how some of the entries work, its really a challenge sometimes, and you can learn plenty about C and the preprocessor.
a) a contest
b) held via Usenet.
Unproductive labor is bad. Only productive units can be allowed in hive. Workers who waste energy must be sent to the vats. It is therefore in interests of workers to be productive. To conserve energy. To obey.
(This message brought to you by the World Utilitarian Council).
Whence? Hence. Whither? Thither.
As we all know, programming and fun are mutually exclusive. It's completely inconceivable that someone might have, I don't know, a good time writing code.
--
the strongest word is still the word "free"
Yes, they do have this in Perl. It's called programming.
are She Had taken
B: Why did the chicken cross the road?
A: Windows sucks!
telnet.c
They certainly achieve their goal of showing how bad caode can be and also of providing a safe forum for amazing C code.
I have also learnt much better how to program in C, even for unobfuscated code. There is nothing like going through some of these entries to understand much better how the preprocessor works, and how compilers react to differrent constructs.
So, the only goal left is that of stressing the C compilers
I actually quite liked Hibachi. And not just for the animated logo! You can even run multiple instances on separate ports, and use NAT and port forwarding to get a poor man's virtual server setup.
I'd recommend you stick to v1.0 {which is actually PD}, for licencing reasons. The v2.8 licence is unnecessarily restrictive.
Je fume. Tu fumes. Nous fûmes!
alternative server at the same domain
on baby...don't it will be among and I purobably Contrib0ted code Which don't use the conversation and world-spanning You to join the
Gassee's response makes no sense. It indicates that he really just didn't know what the question meant and was just making something up. Not surprising, given where he ended up: with another failed startup.
Running the above will generate different output from the original, due to the extra spaces in the strings (near the top), apparently added by Slashdot. The original is at 2004/gavare.c (relative to one of the IOCCC mirrors).
It's a great program; one that has been distracting me since March 1st!
Let me know if you have an open postdoc position. -braney
Go talking to Nils HellStrom... He would tell you how far your are from reality.
Workers in the hive only work. They are selected at birth to be workers. And bad workers won't be sent to the "cuve", because of their weakness (being bad workers). It's not that unproductive labor is bad, it's that in the hive every work is productive.
Well, on a such geeky website, I'd never had imagined telling someone : "Go back first school reading Herbert" =o)
We ought to submit the code for WIndows?
The instruction at "0x00401234" referenced memory at "0x0042202d". The memory could not be "written".
Click on OK to terminate the program
Click on CANCEL to debug the program
OK Cancel
~Aha~
Wow! I'll be sure to send this to the guys at the Indian delivery team my company is using. I am quite sure I could find a winner there!
/ Anonymous Architect Guy
Use a real compiler that understands -fwritable-strings
Comment removed based on user account deletion
This clearly has no hacker cred what so ever if Visual Studio won't compile it!
(Real men use visual basic!!!!)
Worked beautifully for me using gcc, like so:
gcc -fwritable-strings -o maze maze.c
The only surefire protection against Microsoft infections is abstinence. - The Onion
..
Rule 7. No one shall submit code that contains swear words in the comments.
and this
Rule 13. No one shall submit code that was developed with the help of Satan or any of his little helpers.
You didn't even get it right, tard.
And she never replied back. Of course she knew programming.
i j%yjf%gjktwj%mjfinsl%mtrj$");putchar(012);dc("Nx%n y%utxxngqj%ytif~D%`~jx4stb%");gets(t);(!strcasecmp (t, "yes"))? ) ; }% ~tz %ktw%wzssnsl%ymnx");
int ec(int c){return c-5;}
void dc(char *s){if(*s){putchar (ec(*s));dc(s+1);}}
int fp();se(f){f&1?fp():f&2?
fp2(): f&4 ? fp3():0;}
fp(){char t[4] = "";dc("N%fr%ytt%ynwji%ytif~33%|fsy%f%ltti%mtrj%rf
se(2):se(4);}
fp2(){char s[21]="";dc("|mfy%ynrj%hfs%N%iwtu%nsD%");gets(s);
dc("N%|nqq%gj%ymjwj%g~%");puts(s);dc("Ymfsp%~tz"
fp3(){dc("N%fr%xt%xfi33333%");dc("Fs~|f~%ymfsp
putchar(012); }
main(){se(1);}
#include std_disclaimer.h
Ive seen obfuscated DVD decryption code..
But what happens if someone submits obfuscated SCO code? Heck, what happens if someone submits code that used to be proprietary? Noone really checks, and say the code gets printed on T-shirts and the like, and is discovered by the owners, wonder what the consequences will be.
I'll just send my sendmail.cf
"Give orange me give eat orange me eat orange give me eat orange give me you." -Nim Chimpsky
"Obfuscated C Code"
He said to compile with "-fwritable-strings".
I don't know if VC has an option for it, but what it does is allow you to write to string constants. Without it, it will segfault.
Many people can write code, fewer people can write good code.
The many who do not write good code also produce obfuscated code without even trying. This is particularly true with large projects, done by groups, over time, and with limited oversight.
Another interesting contest would be to see how fast different people could figure out such code.
Yep, that's why you need -fwritabe-strings in gcc. Old C compilers (remember this was written almost 20 years ago) let you write to constant strings (that is to say, they weren't constant in the first place). MSVS probably has an option for this.
I've been wanting to get a cool tatoo for a while now...
A NON-obfuscated Perl contest?
I've always thought that slashdot should hold an obfuscated english contest...
Choose yer poison: Prophets or Profits
Writing unmaintainable code.
Looks like line noise.
I always thought slashdot was an obfuscated english contest!
Ardente veritate incendite tenebras mundi
...or did any other web developers get their wires crossed when they read "18th International" and thought this had something to do with "I18N"?
Try this:
Whitespace
It is so obfuscated, you cannot even see it!
Someone submitted the leaked Windows source code.
Microsoft has been declared the winner.
Beauty is in the eye of the beerholder.
Comment removed based on user account deletion
On the other hand, I think such a contest for C++ would produce even more obfuscated code than IOCCC. Think about what could be done with just:
- operator overloading
- multiple inheritance...
The AACS key is NOT 0xF606EEFD628B1CA427BEA93A9CA9773F
Actually, you should submit all unintentionally horrible code to The Daily WTF instead. Great site.:)
Is this a sigs-optional kind of place? 'Cause I am totally down with that if you know what I mean.
Stuff.
"Military Intelligence" an "Microsoft Works" are oxymora. "Dead Corpse" and "Obfuscated C Code" are redundancies. Hope that helps. Have a nice day.^-^
Is this a sigs-optional kind of place? 'Cause I am totally down with that if you know what I mean.
I remember one from years and years ago that I believe was published in Dr. Dobbs. It as a C source listing that had all kinds of 3.14s etc in it and the code was literally formatted to look like pi, however it calculated e. Does anyone remember it or have it?
Um, what is the point of this ?
Posted by timothy on Wednesday March 23, @02:19AM
Contest Over: 22-May-2005 23:59:59 UTC
Could you give me some warning next time?
First you have to make your own definition of rand() because Windows' rand() only returns 15 bits worth, and the program will be very boring if you don't extend the range. Next, to get around the -fwritable-strings issue, try using char M[3] = "%d" instead of char* M and M = "%d". Your code will look something like:These changes work under Visual C++ 6.0.
p.s. It would also work to put M[3] = "" and use scanf("%d",&C).
Posted by timothy on Wednesday March 23, @02:19AM
Contest Over: 22-May-2005 23:59:59 UTC
Troll much lately?
Pointless, nothing to see here - instead of bothering to do this stupid contest I suggest you all read programming style guides to help everyone else read your code instead of thinking of ways to ruin it.
But hey, this is slashdot! What do we expect!
Well, it would seem there is a Ruby IORCC contest as well, with over 1000 USD in prizes and big name sponsors. I can't help but imagine which contest they got their brilliant ideas from :) I would know, I'm shamelessly plugging the IORCC.
http://iorcc.dyndns.org/
Looks promising, entry window ends at the end of this month.
Enjoy
--- Old Time NeXThead
Always willing, and never rejected.
I don't mind being called a pussy..
R.C.
Once upon a midnight dreary,
while I websurfed, weak and weary,
Over many a strange and spurious
website of hot chicks galore,
While I clicked my fav'rite bookmark,
suddenly there came a warning,
And my heart was filled with mourning,
mourning for my dear amour.
'Tis not possible, I muttered,
give me back my cheap hardcore! --
Quoth the server, "404".
Vino, gyno, and techno -Bruce Sterling
I'm not worthy.
As copyright owner of this comment, I authorize everyone to defeat any technological measure which limits access to it.