Join us on Discord!
You can help CodeWalrus stay online by donating here.

Cemetech Contest #15: Crypto Golfing

Started by KermMart̕ian, December 16, 2015, 12:14:39 AM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

KermMart̕ian

Last month, we resurrected Cemetech programming contests with Cemetech Contest #14: TI-BASIC Connect 4 AI Challenge. In that short contest, designed by Cemetech members jonbush and earthnite, entrants were tasked with writing an AI to play Connect 4 in pure TI-BASIC. We congratulate JWinslow23 for winning that contest, and are happy to announce a longer, more elaborate contest. Cemetech Contest #15 is entitled Crypto Golfing, and is a multi-part contest. Starting today, and continuing every Tuesday until January 12th, we will release encrypted data with possible hints for a new challenge. Your mission, should you choose to accept it, is to create a program to decode each piece of encrypted data, be it a string, a number, an image, or something else, in as few bytes as possible. The top two overall winners will win a TI-84 Plus C Silver Edition and a TI-Nspire CX (with the first place winner getting first choice).

As in previous Cemetech contests, we'll have a number of categories; the sizes of entries from each category will be weighted at the discretion of the judging panel.
  • TI-83 Plus/TI-84 Plus TI-BASIC, ASM, C, or Axe: Programs in any of these languages for any calculator with "TI-83 Plus" or "TI-84 Plus" in its name will be accepted, including the TI-84 Plus C Silver Edition and TI-84 Plus CE. Hybrid TI-BASIC and z80 ASM programs must use only the libraries available in Doors CS or Doors CSE, to make grading easier.
  • TI-Nspire CX and HP Prime: Lua entries for the TI-Nspire CX and CX CAS as well as PPL programs for the HP Prime will be accepted.
  • Computers: Java, Javascript, C++, Rust, Haskell, and Python: For those who focus on computer programming these days, computer programming solutions will be accepted in the languages listed. Want to write in another language? Let us know what that language is in the attached Cemetech topic, and we'll consider it.
The usual rules apply:
  • Contestants may not release any code or binaries before the end of the contest, including asking for programming help publicly or privately. Violators will be disqualified. Projects that have already been released in any form (excluding a contest project topic) already are not eligible for the contest.
  • The contest will run until January 19th, 2016, at 11:59:59pm Eastern Time. No late entries will be accepted. Entries to any of the five challenges will be accepted up until this deadline. The earlier you submit each challenge's solution, the higher your score!
  • All contestants must maintain a topic in the Contests subforum on Cemetech, including a first post that mentions the programming language(s) you'll be using. You can also post the size of your entries and when you complete them. Do not post algorithmic solutions, code, or hints.
  • Submit entries by emailing them, in a zip file, to contest at the Cemetech domain name. Be sure to provide your Cemetech username in the subject or body of the email so we know who you are! Each Cemetech member can submit a single entry in one or more of the accepted language + platform combinations.
  • Judging will be performed by a team picked from among the Cemetech administrators and members; all judges are disqualified from entering the contest. Results will be posted no later than ten days after the end of the contest.
  • Algorithmic grading will be performed, based on the size of each entry's source code (or for assembly, assembled binaries) and how early the entry was submitted. Speed will not be graded.
  • As with the Contests #12 and #13, we are very proud to offer two brand-new calculators as prizes. The grand prize winner will be awarded one TI-84 Plus C Silver Edition or one TI-Nspire CX, as chosen by the winner. The second-place winner will receive the remaining calculator. Additional Cemetech swag may be added to the prizes at the Cemetech staff's discretion. All participants will earn Cemetech flair in the form of signature bars and respect.
So what are you waiting for? Get coding, solve Challenge 1, push yourself to learn something new in the process, and win some calculators!

Challenge 1: GSVHVXIVGNVHHZTVRHLOWDRAZIW

More Information
Contest #15 Rules



Both of the two remaining of these six generously-donated calculators will be awarded as prizes. A special thanks to our anonymous donor for making this contest possible!

Yuki

Oh, that's nice, I'll enter for sure. Provided I can figure it out...
  • Calculators owned: TI-83+ (dead?), Casio Prizm (also dead???)
  • Consoles, mobile devices and vintage computers owned: A lot
Read Zarmina!
YUKI-CHAAAANNNN
In the beginning there was walrii. In the end there will be walrii. All hail our supreme leader :walrii: --Snektron

if you wanna throw money at me and/or CodeWalrus monthly it's here

Dream of Omnimaga

#2
So I assume it's kinda like Code Golf but with cryptography instead? It should hopefully be popular, since in the past, code golf contests on Omni were.

Interestingly enough, the deadline date is identical to CW Contest II :P (except by five hours)
  • Calculators owned: TI-82 Advanced Edition Python TI-84+ TI-84+CSE TI-84+CE TI-84+CEP TI-86 TI-89T cfx-9940GT fx-7400G+ fx 1.0+ fx-9750G+ fx-9860G fx-CG10 HP 49g+ HP 39g+ HP 39gs (bricked) HP 39gII HP Prime G1 HP Prime G2 Sharp EL-9600C
  • Consoles, mobile devices and vintage computers owned: Huawei P30 Lite, Moto G 5G, Nintendo 64 (broken), Playstation, Wii U

alexgt

  • Calculators owned: Ti-84+, Ti-Nspire, Hp Prime, Broken HP Prime, HP 48SX

KermMart̕ian

DJ_O: Yep! It has the additional challenge that you have to figure out what the algorithm actually is before you can write a minimal solver for it.
Juju, Alexgt: Best of luck!

Yuki

#5
Hmm, by decoding, I assume it's a symetrical algorithm and you don't have to crack any keys? Also, I assume the result of the challenge is something meaningful in English?

Quote from: KermMartian on December 16, 2015, 12:14:39 AM
Submit entries by emailing them, in a zip file, to contest at this domain name.
Sending your entries at this actual domain name is probably not a good idea :P (I know, you meant Cemetech's domain name :P)
  • Calculators owned: TI-83+ (dead?), Casio Prizm (also dead???)
  • Consoles, mobile devices and vintage computers owned: A lot
Read Zarmina!
YUKI-CHAAAANNNN
In the beginning there was walrii. In the end there will be walrii. All hail our supreme leader :walrii: --Snektron

if you wanna throw money at me and/or CodeWalrus monthly it's here

KermMart̕ian

Quote from: Juju on December 16, 2015, 02:23:26 AM
Hmm, by decoding, I assume it's a symetrical algorithm and you don't have to crack any keys? Also, I assume the result of the challenge is something meaningful in English?
Correct on both counts.

Quote from: Juju on December 16, 2015, 02:23:26 AM
Quote from: KermMartian on December 16, 2015, 12:14:39 AM
Submit entries by emailing them, in a zip file, to contest at this domain name.
Sending your entries at this actual domain name is probably not a good idea :P (I know, you meant Cemetech's domain name :P)
Good catch.


alexgt

  • Calculators owned: Ti-84+, Ti-Nspire, Hp Prime, Broken HP Prime, HP 48SX

KermMart̕ian

Good luck to all! And thanks for front-paging this.

Dream of Omnimaga

No problem. :) I waited a few days since I wanted the CW contest to remain at the top for at least a week before promoting more news.
  • Calculators owned: TI-82 Advanced Edition Python TI-84+ TI-84+CSE TI-84+CE TI-84+CEP TI-86 TI-89T cfx-9940GT fx-7400G+ fx 1.0+ fx-9750G+ fx-9860G fx-CG10 HP 49g+ HP 39g+ HP 39gs (bricked) HP 39gII HP Prime G1 HP Prime G2 Sharp EL-9600C
  • Consoles, mobile devices and vintage computers owned: Huawei P30 Lite, Moto G 5G, Nintendo 64 (broken), Playstation, Wii U

alexgt

Yeah, I don't think I will have time to figure it out so I don't think I will participate. I will keep on trying though :)
  • Calculators owned: Ti-84+, Ti-Nspire, Hp Prime, Broken HP Prime, HP 48SX

p4nix

  • Calculators owned: fx9860GII (SH4)

Snektron

Woah this is a really cool contest idea! Will the hints be dropped here too? And do we need to send in entries before every tuesday or at the end?
And how is the encrypted data inputted?
  • Calculators owned: TI-84+
Legends say if you spam more than DJ Omnimaga, you will become a walrus...


KermMart̕ian

#14
The earlier you send them, the higher your score, but you can send all of the solutions together on the very last day of the contest if you so desire.

I'm happy to announce that another Tuesday is upon us, so Challenge 2 of Cemetech Contest #15 is also here! If you haven't completed Challenge 1 yet, you still have time, and the only thing you'll lose is the (up to) 5 bonus points you get by submitting your solutions quickly. Challenge 2 adds a few additional rules that we learned from seeing how people worked with Challenge 1:
  • For Challenges 2 and 3, TI-BASIC, Axe, and Assembly programs should take the ciphertext in Ans and return the decoded plaintext in Ans as well.
  • For Challenges 2 and 3, computer programs should take input from stdin and return output to stdout.
  • If there are any constants or keys that affect how a particular cipher works (for example, the offset in a Caesar cipher), these should be defined in a modifiable way in the source, so that someone with the source code could change those constants without needing to modify anything else in the program.
Challenge 2: VPUOUGHUVYUOOSIUWOPSTTEPMRWNSEOBHMYGUYUVUGP

Good luck!

Powered by EzPortal