Slashdot Mirror


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."

15 of 187 comments (clear)

  1. Past Winners with Spoilers by Entropy248 · · Score: 5, Informative

    Here are some past winners with "Spoilers" for what they do. It's already pretty slow though and I'm first post.

  2. Mirrors by ugo · · Score: 5, Informative

    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

  3. Speaking of obfuscated code... by PornMaster · · Score: 5, Informative

    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.

  4. Imawhore by Kethinov · · Score: 4, Informative
    Google cache of the main page: http://64.233.167.104/search?q=cache:QecdG73oJ2cJ: www.ioccc.org/main.html+The+International+Obfuscat ed+C+Code+Contest&hl=en&client=firefox-a

    Full text of rules.txt

    18th International Obfuscated C Code Contest Rules

    Copyright (C) 2005 Leonid A. Broukhis, Simon Cooper, Landon Curt Noll and
    Peter Seebach.

    All Rights Reserved. Permission for personal, education or non-profit use is
    granted provided this this copyright and notice are included in its entirety
    and remains unaltered. All other uses must receive prior permission in
    writing from the contest judges.

    Obfuscate: tr.v. -cated, -cating, -cates. 1. a. To render obscure.
    b. To darken. 2. To confuse: his emotions obfuscated his
    judgment. [LLat. obfuscare, to darken : ob(intensive) +
    Lat. fuscare, to darken < fuscus, dark.] -obfuscation n.
    obfuscatory adj.

    GOALS OF THE CONTEST:

    * To write the most Obscure/Obfuscated C program under the rules below.
    * To show the importance of programming style, in an ironic way.
    * To stress C compilers with unusual code.
    * To illustrate some of the subtleties of the C language.
    * To provide a safe forum for poor C code. :-)

    The 18th IOCCC contest window is:

    | 21-Mar-2005 00:00 UTC to 22-May-2005 23:59:59 UTC

    RULES:

    To help us with the volume of entries, we ask that you follow these rules:

    1) Your entry must be a complete program.

    2) The size of your program source must be <= 4096 bytes in length.
    The number of characters excluding whitespace (tab, space,
    newline, formfeed, return), and excluding any ; { or } immediately
    followed by whitespace or end of file, must be <= 2048.

    3) Submissions should be performed using the instructions outlined at,

    | http://www.ioccc.org/2005/submit

    4) If your entry is selected as a winner, it will be modified as follows:

    Your 'build' instructions will be incorporated into a
    makefile. If your build instructions *is* a makefile then
    it should be portable and usable from within a master
    makefile.

    Your program source will be renamed using an identifier of
    our choice (usually your family name or anonymous) followed
    by an optional digit, followed by '.c'

    Your entry will be compiled into a file with the above name
    minus the '.c'.

    If your entry requires that a build file exist, state so in
    your entry's remark section. The makefile will be arranged to
    execute a build shell script containing the 'build'
    information. The name of this build shell script will be your
    entry's title, possibly followed by a digit, followed by '.sh'.

    If needed, your entry's remarks should indicate how your entry
    must be changed in order to deal with the new filenames.

    5) The build file, the source and the resulting executable should be
    treated as read-only files. If your entry needs to modify these files,
    it should make and modify a copy of the appropriate file. If this
    occurs, state so in your entry's remarks.

    6) Your program source must be able to be compiled cleanly by an ANSI C
    compiler, or if there are any compile errors, they must be documented
    in the "remarks" section of your submission.

    7) The program must be of original work. All submitted programs are
    are thereby put in the public domain. All explic

    --
    You're right, I wouldn't steal a car. But if it were possible, I sure as hell would download one!
  5. Re:Grr by Rattencremesuppe · · Score: 2, Informative
    Stupid HTML that ignores white space. It looks kinda cool in the source of the page.
    Use <ecode>
  6. Re:Reminds me of a joke... by Pastis · · Score: 2, Informative

    2 things:

    - this was I think in 1993 and Gassiee has been more famous since by being the man behind BeOS.

    - this was on TV. we NEED to find that episode...
    It apparently is not in these archives: http://www.archive.org/movies/movieslisting-browse .php?collection=computerchronicles&cat=computer%20 bowl&PHPSESSID=afa9787e38cc81e4f22ed0542058072a

    Anyone with it? Maybe Mr Gassiee has it :)

  7. Re:Mirrors WITH A CLICKABLE LINK by hugesmile · · Score: 2, Informative
  8. Re:Reminds me of a joke... by Anonymous Coward · · Score: 3, Informative
  9. Re:Maze of Code - Does NOT work with Visual Studio by proverbialcow · · Score: 2, Informative

    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
  10. Re:I wonder... by downbad · · Score: 3, Informative

    They could run it through Perl and look at the optimized syntax tree it generates, but I suspect that's outside most hackers' repertoires.

  11. You want obfuscated? by prakslash · · Score: 3, Informative

    Try this:

    Whitespace

    It is so obfuscated, you cannot even see it!

  12. Re:Maze of Code by Speare · · Score: 3, Informative
    This was one of my favorite ObC programs from the distant past. Did you notice that the first variables spell MAZE? Did you notice the code is a maze? Did you notice the passages of the maze spell MAZE? A proper ObC entry is not just obfuscated, but is an onion of beautifully expressed multiple messages.

    There's another one in which the program is shaped like a sailor's semaphore, and produces stick-figure cartoons of a sailor waving semaphores to spell out a user-supplied message.

    --
    [ .sig file not found ]
  13. s/Oxymoron/Redundancy/; by LPetrazickis · · Score: 2, Informative

    "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.
  14. Re:Maze of Code - modifications for Visual Studio by Anonymous Coward · · Score: 1, Informative
    To make this run under Visual Studio, you have to make a couple of changes:

    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:
    #define rand2() ((rand()<<30)|(rand()<<15)|rand())
    char M[3]="%d",...scanf(M,&C);
    ...
    |6<<27<rand2()...
    These changes work under Visual C++ 6.0.

    p.s. It would also work to put M[3] = "" and use scanf("%d",&C).