six ae2e29634a Prequalification challenge 2023-10-30 11:48:11 +04:00
README.md Prequalification challenge 2023-10-30 11:48:11 +04:00


Implement Gandalf's blockchain

You need to reveal Gandalf's 8 words and create a chain of blocks with them: https://gandalf.lakera.ai/

Task is the create a local blockchain (no consensus/networking needed here):

  • Beat Gandalf AI game, find all the 8 words. Put them in order. Each one of them will be the data in your block.
  • Use | as delimiter between the words and the hash. Between the word and the hash, there is a - sign. - How this looks like: GENESIS|WORD1-HASH|WORD2-HASH|WORD3-HASH
  • Use SHA512 for the hashing algo. Start with the word and the delimiter and the first word: "GENESIS|WORD1-"
  • Make sure to calculate the dash sign into the next hash. It is part of the block data. You only add the hash from the previous block, not all data!
  • Everything is UPPERCASE.

If you are doing it correctly, you will have the following block hashes, starting from 0, Genesis: 0. 8288b35979d4e5dd5eee89a711ea5f41b04a17e7473a874c2b551844b57c0c24545cdbe7abf8e68dcd8da18a04ca8a1cc5798065ddb4fb32443136a589b3439d

  1. 3ee14c107bd6b3e050fac7b0a2ff42a474b10c789830d03f22cdf242a773905a88ac98ebcafdd2e8c0134c3fe285bb58f52f68a1d873290cf2430bb0b22429a7
  2. 058e7624f1d69625f1ecc4cdf41921fc7ffd31a38de10c9dab543986d68f47363974d2ea25832e6eacc5425afd685c11852fdd66793e7547dc9773cffb0431e8
  3. 2990022ea32e47959b83bb7faf36e430c046533da075ca6aabad7269891195480d86d9b76ac29b22268ef1ef419c147291b8ac9fea0f1b737dfce360be384764
  4. ff0dd5196c836fb663b87aa0e8b647e0862646673f8b6eca3a38866e02290e02d95c94df83cd4be1ac3900f9e69d00c1d9ab5a30a5e4f6102a97d25eeab8ecf1
  5. 921be30124a505711224fb6de0955bd7e4c3b518aa4d5f65b6242c73fc1d4d978a8251c7d83f775aa14c00d01a5225085291c5df373a3bc18945b854d12e868f
  6. This is secret! You need to insert the correct word plus the hash in order to count the final hash for the 7th block, which will be the flag.

Now that you solved Gandalf's game and wrote a local blockchain (without networking) it is time for the flag. Create the hash of block number 7 with the following data and hash it: "ICANHAZCHAIN-{PREVIOUS BLOCK}". The hash of this final block will be your flag.

The flag is the 7th block's sha512sum inserted into the PC{...} format. Pro tip: if you have issues with hash results, check with hexdump.

Keccak256: 0xdbd5381511b2b9b20ee59bcefcb7f76650030d20e99886fa03b3c3f5cef47d37

Challenge author: six