The Algoriddle was solved on Sunday Dec 8, 2019. Congratulations to the winner (Algorand address U43Q64XZ6PHT5JU3SIEOF3R645K4EN25RXLLXA6EEDHDZGVSRYJ7LI36AQ) and thanks to everyone who played.

What is Algoriddle?

Algoriddle is a puzzle game built on Algorand. The puzzle is above, if you can solve it, its solution unlocks the 100 Algos sitting in the Algoriddle wallet KFGWR5LVDNWO3RRDNUUZN725S7V7FG5RLYEHUAIROSL6CBKLEHCKVZRXTE. Only the first person to solve the Algoriddle can get the 100 Algos. Good luck.

Want to check if someone has solved it? Check the wallet balance here. If it's zero, you're too late.

How to submit the solution

Well first, congrats!! That is huge. Tell your family, tell your friends, that is an accomplishment!!! The process below is a bit involved, if you have questions, for Algorand related questions you can ask on the Algorand forum and I'm [email protected] for Algoriddle-related questions.

1. The first thing you will need to do is create a wallet on Algorand you can send transactions from and receive Algos to. To do that you will need to run an Algorand node. It's recommended to run a node on a hosting provider such as Digital Ocean or Google Cloud instead of running it locally on your laptop. There are instructions here, it takes less than 5 minutes to install and run.

One quick note before we start interacting with the node you just installed -- at the end of every command made with Algorand's goal command line tool, you will need to specify the Algorand node's data directory. On Ubuntu, that is by default /var/lib/algorand. On a Mac and on other non-Ubuntu Linux distros, it is by default ~/node/data. Below you will see youralgoranddatadirectory and you should replace that with the location of your Algorand node's data directory.

2. Once you have your node running, you will need to let is sync. This requires just waiting for ~12 hours while the node is on and runnning. You can check the status of the node syncing by runnning this command (shown below) and comparing the block number to the most recent block number in the network, which you can find on the homepage of the Algorand block explorer:

goal node status -d youralgoranddatadirectory | grep "Last committed block:"

3. Next you will want to create a wallet. In the command line, run:

goal account new -f

That will return a mnemonic you will want to save in a safe place. That's your unrecoverable password to access your Algos.

4. Next you will need to have enough Algos in your account to send the transaction. You will need a very small amount, but nonetheless, you will need to go to (or if you're in the US), create an account, and buy a single Algo and send it over to the Algorand account running on your node. To get your local Algorand address, run:

goal account list -d youralgoranddatadirectory

5. Now you are ready to submit the solution to the Algoriddle. First you will need to encode the solution using base64. Run:

python -c "print('yoursolutionhere'.encode('base64'))

6. Next you will need to download this Algorand teal program containing the account logic.

7. Now you are ready to submit the transaction. Below is the command to do that. You should make sure to swap out yourriddlesolutionhere with your encoded solution, /path/to/algoriddle.teal with the actual path to that file and youralgorandaddress in both places below with your Algorand address, which you can find doing goal account list. The close-to address can be set to your Binance Algorand address instead of your local Algorand address if you would like for the Algoriddle funds to be sent to Binance when you submit the correct solution to the puzzle.

goal clerk send --amount 0 --argb64 yourriddlesolutionhere --to youralgorandaddress --from KFGWR5LVDNWO3RRDNUUZN725S7V7FG5RLYEHUAIROSL6CBKLEHCKVZRXTE --close-to youralgorandaddress --from-program /path/to/algoriddle.teal --fee 1000 -d youralgoranddatadirectory

Once you run that, the transaction ID will be printed to the console. You can lookup that transaction in the Algorand block explorer.

Final step: celebrate! If your solution to the Algoriddle is right, the 100 Algos in the Algoriddle account will be sent to you.

If the solution is not right, you will get back an error that says: HTTP 400 Bad Request: transaction [transaction_hash]: rejected by logic.