Polkadot_Championship_Chall.../README.md

138 lines
6.1 KiB
Markdown
Raw Normal View History

2023-10-13 07:59:58 +00:00
# [WIP] Polkadot Championship 2023 - Challenges
2022-10-25 18:58:08 +00:00
2023-10-13 07:59:58 +00:00
This document is a work in progress, being updated for 2023!
The [Polkadot Championship (PMC)](https://polkadotchampionship.org/) is an open web3/cryptocurrency contest consisting of a qualification phase and a main event.
2022-10-25 18:58:08 +00:00
2022-11-21 15:26:59 +00:00
# Qualification
2022-10-25 18:58:08 +00:00
2022-11-21 15:26:59 +00:00
To qualify, you must solve at least 3 challenges from the 5 provided in this repository.
2022-10-29 11:59:00 +00:00
2022-11-21 15:26:59 +00:00
### The process
2022-10-29 11:59:00 +00:00
2022-11-21 15:26:59 +00:00
Each challenge has its own subfolder in the "Prequalification_Challenges" folder, wherein it is described.
2022-10-29 11:59:00 +00:00
2022-11-21 15:26:59 +00:00
The format of a solution is an ASCII string of the form __PMC{...}__, like PMC{#\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 PMC{......}.
2022-10-29 11:59:00 +00:00
2022-11-21 15:26:59 +00:00
[Submit your solutions in this web form](https://www.cognitoforms.com/UnconditionalPeace/PolkadotMetaverseChampionshipPrequalification) to ask for an invitation.
2022-10-29 11:59:00 +00:00
2022-11-21 15:26:59 +00:00
(If you've played Capture The Flag (CTF) games before, this process should be familiar to you.)
2022-10-29 11:59:00 +00:00
2022-11-22 09:26:22 +00:00
### Offline flag verification
2022-10-29 11:59:00 +00:00
2022-11-21 15:26:59 +00:00
You can verify the correctness of your solutions before submitting the form. The flags have the following respective Keccak-256 hash values:
2022-10-29 11:59:00 +00:00
```
2023-10-13 07:59:58 +00:00
js/wss - TBA
solidity - TBA
gear - TBA
rust - TBA
crypto - TBA
2022-10-29 11:59:00 +00:00
```
2022-11-21 15:26:59 +00:00
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 'PMC{This_Could_be_a_Flag.!}'|keccak256
0x6104a5489b671452684fee77579df24e6f2441d1f8a832c7366cf2cfc5194935
```
## List of prequalification challenges
2022-10-29 11:59:00 +00:00
2023-10-13 07:59:58 +00:00
__TBA challenge__: TBA
2022-10-29 11:59:00 +00:00
2022-11-21 15:26:59 +00:00
### Design for fame
By the way, you can compound your solutions with an optional 3D design of your own, in the web form. We'll add each such design to the Hall of Fame, where all the successfully qualified players get listed.
2022-11-22 09:26:22 +00:00
# Main event
2022-11-21 15:26:59 +00:00
The main event consists of a 3-day hackathon where projects can be conceptualized and implemented, and also of more challenge-solving in parallel.
At first, teams should be formed by qualified players.
2023-10-13 07:59:58 +00:00
The main event's challenges will be disclosed on /TBA, probably 2023-12-04 at 10:00:00 CET/. The teams will need to solve at least one from each challenge track, in 24 hours.
2022-11-21 15:26:59 +00:00
Note: You can already prepare libraries and some code before the hackathon, but the final project needs to be conceived during the main event.
2022-11-22 09:26:22 +00:00
### Challenges for the main event
2023-10-13 07:59:58 +00:00
The details of the main challenges will be shared on /TBA, probably 2023 December 5th 10:00 CET/. The teams formed before will need to solve at least one from each track, in 24 hours: one of them should be the team's main delivery and the two other are in proposal form. You can already prepare libraries and some code before the hackathon, but the final ideation and project needs to come out during the main event.
2022-11-21 15:26:59 +00:00
2022-11-22 09:26:22 +00:00
Outline:
2022-11-21 15:26:59 +00:00
2023-10-13 07:59:58 +00:00
#### Track 1 - Decentralized organizations and governance
2022-10-29 11:59:00 +00:00
2023-10-13 07:59:58 +00:00
Challenge 1 - TBA
2022-10-25 18:58:08 +00:00
2023-10-13 07:59:58 +00:00
Challenge 2 - TBA
2022-10-29 11:59:00 +00:00
2022-11-21 15:26:59 +00:00
#### Track 2 - Privacy and Security
2022-10-25 18:58:08 +00:00
2023-10-13 07:59:58 +00:00
Challenge 1 - TBA
Challenge 2 - TBA
#### Track 3 - AI in Web3
Challenge 1 - TBA
2022-10-29 11:59:00 +00:00
2023-10-13 07:59:58 +00:00
Challenge 2 - TBA
2022-10-25 18:58:08 +00:00
2023-10-13 07:59:58 +00:00
#### Track 4 - "Give me a problem and I solve it"
2022-10-25 18:58:08 +00:00
2023-10-13 07:59:58 +00:00
Challenges - TBA
2022-10-25 18:58:08 +00:00
2022-10-30 13:05:27 +00:00
2022-12-04 11:03:22 +00:00
#### Track J - Only for judges and mentors!
This track is an optional one for the judges and mentors. They are in their position for a good reason, so will they show-off their 1337 coding skills? What would they do in 24 hours while the players are competing? ... We will see :)
### Choosing challenges and deliveries
2022-12-04 11:09:02 +00:00
Playing teams will need to choose one challenge as their main one. Additionally, they need to choose at least one from the other tracks and create a proposal for improving the projects.
2022-12-04 11:03:22 +00:00
Overall, three things need to be delivered by the teams: the main challenge solution, a proposal for the second challenge, and a proposal for the third challenge.
The teams need to initialize a git project on https://git.hsbp.org/ or https://github.com/ when the 24 hours start and commit all their development there. Commits after the finish of the end of the 24 hours 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.
- 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 and Third challenge proposal
- Did the team present a realistic idea for the two other tracks?
- 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 per 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.
2022-10-30 13:05:27 +00:00
## Support and feedback for the prequalification
2022-11-21 15:26:59 +00:00
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.
2022-10-30 13:05:27 +00:00
## Contact
2022-11-21 15:26:59 +00:00
You can contact us anytime though our email address contact@metaversechampionship.gg 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](https://linkfree.metaversechampionship.gg/).