Try cracking these 7 passwords if you can.

Codomo Singapore

Our passwords are super vulnerable

Previously, I wrote a Medium article on how I cracked 40,000 passwords with Python in an hour. I wrote how companies store our sensitive passwords in their database responsibly (and also irresponsibly), how p@$$w0rd and password are the same in weakness and some simple techniques to make hard to crack and easy to remember passwords.

The Game

A month has passed. While I was in the shower rubbing my scalp, I thought of a cool idea — a hacking game even for the non-tech people and children. There will be image and text hints to help you out. This game challenges your craftiness and creativity, not so much on your technical skill. It’s a perfect game for the weekend with friends or with your kids.

The full game can be found here. Have fun cracking them. :)

Potato Cracker Challenge

Read more →

Forbidden Magic III: The Answer to All

Codomo Singapore

For a moment, Potato King was speechless. His throat felt tight and his heart sank as his eyes tried to make sense of the words on the Answer to All.

Answer to All - potato pirates coding card game

The truth has now become clear. He had messed up the ritual. It split him into seven different parts, each a different aspect of himself and sealed them into their own frozen time. He had been erased from the timeline in which his crew existed, and the only one who had been trapped in this current time was the lone spear-holding potato, who had been standing guard outside his cabin when the explosion occurred.

While it rendered him immortal technically, he was an incomplete entity. Yet, despite all this, he felt oddly cheerful and optimistic - no matter; he would have time to find the other six pieces and reunite them. After all, he still had his trusty ship, and finding a crew would be fun - meeting new friends would be a wonderful thing.

The happy potato crew - potato pirates coding card game

Congratulations! Your help has revealed the truth to Potato King, who is now determined to seek out the other six pieces of himself. You had also gone on a great journey, ending it off with a real bang!

As promised to all our Challenge 2 Buds, Spuds and Sages, below are your secret chests. When you have found your special keyword, key it into their suspiciously modern interfaces and you will get your cool rewards!


What you could have learnt

  1. Creating a variable
  2. Creating a function || def myfunction():
  3. What is a string, index, ASCII  || index starts from 0 , chr(97) = 'a'
  4. Assigning some content to your variable using =
  5. Changing mutable content with operators || + - += -=
  6. If-loops || if char == key: 
  7. elif, also known as else if  || elif char == key2:
  8. If-else loops || if char == key: ... else: ...
  9. For loops || for char in string: ...
  10. String formatting || string = string + char, string.replace(char, '') 
  11. File actions || , 'r') ,, file.readlines()
  12. Dictionaries and their key-value pairs|| my_dict = {key1: value1 , key2: value2 }
  13. Getting dictionary keys || keys = my_dict.keys()
  14. Getting dictionary values using their keys || value = my_dict[key1]
  15. Getting one character in a string || char1 = string[0]
  16. Regular expression (regex) || r'\b{1,10}\w\b'

Thank you so much for participating!

We hope that you had a great time with programming, especially if this is your first time trying to code. To help us better improve possible future events, please take a couple minutes of your time filling out the feedback form below. As always, may the winds always be on your back!

Speaking of encryption

Can a board game alone teach cybersecurity to children?

Enter the Spudnet box art

Potato Pirates — Enter the Spudnet is a board game inspired by how the Internet works. Dispatch ships, fulfill orders and dodge cyber-attacks while learning a thing or two about network and cybersecurity. Now live on Kickstarter!

Read more →

Forbidden Magic II: Veggie Vengeance

Codomo Singapore
The truth is ready to be decoded

Potato King wiped the sweat off his tubery forehead - after several hours, he had finally deciphered the mess that was the "Terms of Service". He was tired, but he knew he needed to keep going - he wanted to; no, needed to - find out what happened to himself and his crew.

He grabbed the dirty wooden box, held it upside down, and chanted at the top of his voice, "Oh Great Sage Spudfucious, I have messed up, please reveal the errors of my ways!"

Nothing happened.

Potato King frowned and checked the "Terms of Service" again. He muttered something a little inappropriate and went to rummage within his tool cabinet, eventually returning with a flat-head screwdriver. He carefully placed the screwdriver into a tiny notch in the wood, and tried to pry up the lid. It didn't budge. Potato King frowned and applied more pressure. There was a loud sound that sounded like a mix between a "crack" and a "pop", and the screwdriver flew out of his hand, landing with a clatter on the floor. The wooden lid had come up part of the way, and Potato King wedged his fingers in and pried it the rest of the way off, leaving it to join the screwdriver on the floor.

A shabby booklet lay inside the shallow compartment, bound together by dirty, frayed string. It was clearly far from pristine. Potato King picked up the box and peered closely at the contents - the booklet looked as though it would crumble to pieces if he picked it up.

As he made his way back to his desk, he tripped on the screwdriver on the floor and fell face-first, sending the box flying across the room. By the time he picked himself up, the booklet lay in pieces on the floor, pages scattered all across the room. "Oh, bugger," he groaned, moving around to pick up the loose pages.

He carefully placed the pages back into the upended box and carefully walked back to his desk (he usually had way more grace than this) so as not to repeat what happened. Once the box was safely on the table, he picked up one of the worn pages and examined it closely, only to realize that the booklet's script had also been corrupted by the botched ritual, and reduced to endless lists of various vegetable names.

He stared at it in dismay. None of it made any sense; what was he supposed to do with this pile of nonsense? Just then, something glinted in the corner of the room.

He made his way to the object, and it turned out to be a small sheet of engraved metal. Unlike everything else that had been inside the wooden box, this metal square was immaculate; it's surface was not marred by any dents or scratches - in fact, not even a speck of dust was on it.

It sparkled beautifully in the sunlight streaming through the window. Potato King thought that the metal square must have been bestowed with a powerful enchantment, one powerful enough to withstand the catastrophic ritual. The words on the metal square were engraved with such beauty and precision that Potato King stood there mesmerized for a good while before he realized they were instructions - instructions on how to repair the veggie-fied booklet!

Ahoy there Pirate Buds, Spuds and Sages! Potato King is that much closer to discovering the truth of his spud-dy condition. In Coding Challenge II, you will help him figure out the page number in the Manuscript to discover the truth!

Below, you can find all the required resources and hints. May the winds always be on your back!

  • If you are still scrubbing the Python deck, please collect a Cannon Fodder pack.
  • If you know how to avoid walking the Traceback plank, check out the Buccaneer pack.
  • If Piper trusts you more than the Potato King himself, please try out the Sage pack.

Read more →

Forbidden Magic

Codomo Singapore

The Legend of Potato King - Part 1

There it was. The artifact he’d been looking for; it was stained and caked in mud, but in much better shape than he’d expected, given that it had been buried underground for hundreds of harvests. It was a nondescript wooden box, across which were written in fading cursive: “Preserving Potatoes: The Secret to Immortality.”

The potato king finds a box - potato pirates educational coding card game

This was the final step to cement his legacy as the “Greatest Potato Pirate That Ever Sailed” - if he was immortal, then he could hold onto the title indefinitely!

He had sailed the Seven Seas and conquered every single part of it; explored the ends of the oceans and experienced all they had to offer, and amassed enough gold, jewels and other treasures to last a lifetime.

He was Solanum Tuberosum Edward of Scotter Lincolnshire, the Seventh of the House of John Butler - the King of Pirates, and he had done all that any potato could hope for ... except conquering death.

However, that would change soon enough.

Potato King quickly pulled out the worn wooden box out of the dirt, and broke the rusted lock. The box squeaked open to reveal a tatty but still legible manuscript. He carefully picked it up and opened it, scanning the immaculately penned script.

For the past harvest season, he had been pursuing many rumours and stories about a legendary recipe that would grant immortality on any potato who performed the mystical ritual, and after several death-defying wild goose chases (one of which most notably involved a particularly irate Kraken), the recipe had been hiding under his non-existent nose all this while - buried in the backyard of his dock.

Wasting no time, he gathered all that the ritual called for - pepper, salt, several assorted spices, a large frying pan and some of the finest oils - ordered his crew to not interrupt him for the rest of the day, and sequestered himself in his cabin.

Ritual Recipe - potato pirates educational coding card game

As soon as everything he needed was assembled, he skimmed the recipe one last time, and began the ritual. He could almost taste it - the everlasting life, and eternal recognition as the Great Potato King. The last thing he remembered was a sense of great elation.

The potato king - potato pirates educational coding card game

The ground shook as a large explosion tore through the cabin and the ship.

When Potato King came to, the ingredients and materials he had used for the ritual were in a disarray and burnt; he felt different somehow but couldn’t quite place it. Was this what immortality felt like? He felt as though a weight was lifted off his starchy being, and more carefree than he’d ever been in ages.

He opened the door of his cabin, eager to spread the news to his crew - except the ship, and even the docks, were deserted. He couldn’t find a single member of his crew, except one. The lone potato stood stock-still, his hands gripped tightly around his spear. His eyes seemed blank and vacant.

Potato King could not remember that spud’s name, for some reason - but he remembered that he was important.

“Where’s everyone gone?” Potato King asked. Even his voice sounded different - not as gruff. The spear-holding spud stared blankly ahead, and mumbled a single word. “That’s helpful,” Potato King muttered to himself.

Spear-holding spud - potato pirates educational coding card game

He looked over the sides of his ship and caught sight of his reflection in the calm waters. A chill ran down his back and he rushed back to his cabin, tripping over himself as he did so.

He looked at himself in the mirror, and his appearance was clearly not how he remembered it. What had happened?

He checked the manual, a sense of dread rising in the pit of his tuber-tummy. Then he saw it - he had misinterpreted something crucial. What had seemed like an important symbol was simply just a large chunk of crushed peppercorn.

He thumbed through the manuscript’s pages. “I knew I saw it somewhere,” he muttered to himself. “Ah hah!” He came upon the page he was looking for - “Terms of Use”. However, the legibility of the text seemed to have been muddled into complete gobbledygook - perhaps by the ritual being performed incorrectly.

Potato King groaned - this was going to take a while to decipher, but he’d have to do it if he wanted answers.


Would you like to lend Potato King a helping hand to decipher the code?

You would? Cool beans! Here's how you can help.

  1. Download & install Python 3 here. (Skip this step if you already have it)
  2. Access the jumbled-up "Terms of Use" and starter Decoder files here:
    • If you are just starting out in programming, try out the Cannon Fodder pack
    • If you are familiar with but not a self-proclaimed expert in programming, download the Buccaneer pack.
    • If you are a seasoned programmer with the wisdom of Tzutato, we offer you the Sage pack.
  3. Start decodin'!
  4. Once you've cracked it, simply fill out the submission Typeform below and upload your code. You will be given the hint to the next level.

All the best!


Read more →