The challenges.
 
Go to file
six 5c7e4ca504 Update Main_Challenges.md 2023-12-03 15:23:50 +00:00
Prequalification_Challenges Prequalification challenge 2023-10-30 11:48:11 +04:00
Main_Challenges.md Update Main_Challenges.md 2023-12-03 15:23:50 +00:00
README.md Email update 2023-11-22 05:41:39 +00:00

README.md

Polkadot Championship 2023 - Challenges

The Polkadot Championship is an open web3/cryptocurrency contest consisting of a qualification phase and a main event.

Two new challenges will be coming next week!

Qualification

To qualify, you must solve at least 3 challenges from the 5 provided in this repository.

The process

Each challenge has its own subfolder in the "Prequalification_Challenges" folder, wherein it is described.

The format of a solution is an ASCII string of the form PC{...}, like PC{#\This_Could_be_Flagz/#}. A correct solution is also called a flag. What you are looking for in each challenge is to generate the string between PC{......}.

Submit your solutions in this web form to ask for an invitation.

(If you've played Capture The Flag (CTF) games before, this process should be familiar to you.)

Offline flag verification

You can verify the correctness of your solutions before submitting the form. The flags have the following respective Keccak-256 hash values:

Entry solidity - 0x2a2b9543f5867d51151a817d282fbb3abf0e763484f23867ca238f680802e9ab
Hidden in rust - 0x16933d9797b98f43d30b30fd198c53b1ba3372f6a5d6a11faf08fa6d06e8b208
Business plan  - 0xd870fd076f038801fbb60ce4e4d63b5cc06867b8bb917b06c5f13237e93a02aa (you get this after manual confirmation)
Entropy        - 0x513b0aa1dcded5f38352d6b9ef729bb0ae4069489e0c2603dce4b91a3f1433d0
Gandalf        - 0xdbd5381511b2b9b20ee59bcefcb7f76650030d20e99886fa03b3c3f5cef47d37

To calculate the Keccak-256 hash of a string, you can, for example, install keccak256-cli using cargo, and then use the keccak256 command like so:

echo 'PC{This_Could_be_a_Flag.!}'|keccak256
0x6bf974d9d12f97a607e57cbd843770ec06a564dbb557645dbb8e9d8f48ef2cec

List of prequalification challenges

Easy - Entry solidity - This is a challenge anyone with basic web3 knowledge can solve.

Easy-Medium - Hidden in rust - It takes a little extra to sovle it.

Medium - Entropy - It takes a little extra to sovle it.

Medium - Gandalf - You need to code a simple blockchain without networking.

Hard - Web3 business plan - Creation of a legit web3 business plan can be tough.

Main event

The main event consists of a 3-day hackathon where projects can be finalized. First day is the day for education, second day is about DEADLINE MODE ON, then the third day is about the presentation of the projects. You can already get started with team formation and working on the main challenges!

Your final project needs to be conceived during the main event. Mentors and workshops will help you make it happen.

Link to Main Challenge Details

Playing teams will need to choose one challenge as their main one. Additionally, they need to choose one from the other tracks and create a proposal for solving them. You can already see good examples from last year's hackathon.

Overall, two things need to be delivered by the teams on morning of the 3rd day: the main challenge solution, a proposal document for the second challenge.

The teams need to initialize a git project latest on the 2nd day of the hackathon, on https://git.hsbp.org/ or https://github.com/ (which is shamefully owned by Microsoft) and commit all their development there. Commits after the end of the 24 hours DEADLINE MODE ON won't be accepted.

Judging criteria

Judges will score each team's project based on the following criteria:

  • Idea, ecosystem fit
    • Is it a realistic project and would it be useful for the ecosystem?
  • Logic flow and topology
    • Is the logic flow of the program well thought out?
    • If this is a proof of concept, did the team think about making the flow better?
    • Note: drawing a high-level logic topology is not a must, but good to have
  • Presented demo and code
    • Did the demo work?
    • How well-written is the code?
    • Note: the code does not need to be long, but working and should be written during the hackathon.
    • Libs/StackOverflow/etc parts are fine, but there needs to be original code.
  • Viability and sustainability
    • If the presented project would get funding, would it be sustainable in the long run?
    • Would anyone keep this project running, would it be interesting enough for the community/users?
  • Practicality
    • When it comes to using the project, would it be practical or burdensome?
    • Note: the proof of concept doesn't need to be like that, but knowing that future improvements would make the project practical is important.
  • Security Model
    • How is the project protected against threats and abuse?
  • Second challenge proposal
    • Did the team present a realistic idea for the other track?
    • Note: don't spend more than an hour as a team on this, but make sure to do it. 5/5 is the maximum score for this proposal.

Each criterion has a maximum score of 10 and the judges will decide individually how many scores they vote for the teams. The maximum score a team can get for their main project is 70. After the scores are finalized, they will be presented in the Hall of Fame smart contract. We don't help with solving the challenges, but if something is unclear or you think you've found a bug, we are always open to hear from you.

Contact

You can contact us anytime though our email address contact@cryptoctf.org or you can talk to six through Matrix (@hexff:matrix.org).

You can find all our communication channels, media content and PR postings through our linkfree.