#1 Paving the Way for an Autonomous World: Creating a Secure and User-Friendly Identity Solution for On-Chain Gaming (4k USD in total)
Prize Pool
1st prize (max 1): $3k USD
2nd prize (max 1): $1k USD
Description
What is Fully On-Chain Gaming
Fully on-chain games like Dark Forest and Loot have all interactions, behaviors, and states processed via the blockchain, serving as the game's server. These games also use smart contracts for all player actions and even allow for decentralized narratives and governance through DAOs.
General Challenges We Are Facing
- Technical Limits: Low throughput and high latency hinder real-time interactions.
- Smart Contract Complexity: It is difficult to encode all game rules in smart contracts.
- Hidden Info: Challenges in implementing games with hidden or incomplete information.
Specific Questions We Noticed as a DID open source protocol
Burner wallets in on-chain games like Dark Forest enhance user experience by automating transactions. However, they lack secure, intuitive key management, making them temporary solutions for storing in-game assets. This complexity limits participation to technically savvy users and hinders cross-game interoperability and reputation building in the autonomous world.
Our Thoughts to the Solution Which You May Need
In general, we propose to design a Game Account system similar to how Steam ID functions for all games within the Web2 world's platform.
A possible approach to how we design the Game Account System:
- it can work as below, or you can design your own structure:
- Entry Point → Game Account → Game
- In Game Account section, it contains 3 parts:
- AA wallet to perform as the login window
- Proxy Logic to handle business
- Access Control module to check if AA Wallet is properly linked with the Identity Graph
- A Session Key handles the Entry Point
- Frontend SDK for creating these Session Keys, binding with Avatar(the gate where the user becomes one of the dots in the Identity Graph)
- Solidity library for on-chain game logic integration
We invite Dev with us to co-build this comprehensive identity solution for on-chain gaming, lowering entry barriers for end-users. The toolkit may include:
- Web/Mobile SDKs
- Optional Backend Service
- Smart Contract Library
- Sample Game
- Docs
The solution consists of two parts: off-chain and on-chain.
- (Existing users) Use their existing wallet as their Avatar (sharing the same private key)
- (New users) Generate their own MPC-controlled avatar with their email
- For each session of each game, generate a burner per-device session key (that may or may not have an expiry time) and use Next.ID to bind with the avatar
- For each new session, repeat the same
- Each session/device key never leaves the device and could expire to protect security
- In-game assets and game status are synced through and built upon the avatar, which can be considered as a universal reputation
- Generate a smart contract wallet along with identity graph(https://docs.next.id/?utm_source=nextid#what-is-an-identity-graph)
- Tokens can be airdropped to these wallets to pay for game plays from game creators
- identity graph is used to maintain on-chain social capital based on identity bindings, which can be used as factors for token airdrops or small credit loan
- A solidity identity library is needed to integrate into game logics to realize game asset and game status synchronization.
Bounty Acceptance Criteria
Documentation and Design Diagrams
- Requirements Document: A clear outline of the functionalities and objectives that the system aims to achieve.
- Product Design Diagrams: These would include the user interface and user experience designs.
- Technical Architecture Diagrams: These would describe the overall architecture of the system, including how various components interact with each other.
Code and Development Tools
- All SDK Code: This would include all necessary libraries and dependencies, along with instructions for integrating them.
- Database Schema: If the system involves a database, you would need to provide its structure and schema.
- API Documentation: If there are interactions with external or internal APIs, detailed API documentation would be necessary.
Demonstrations and Testing
- Demo: A simple demonstration or prototype to showcase the effectiveness and feasibility of the solution.
- Test Cases and Results: This would include unit tests, integration tests, and the corresponding test reports.
Additional Items
- Installation and Deployment Guide: Instructions on how to deploy the system across different environments.
- User and Developer Guides: Documentation on how to use the system and how to carry out further development and maintenance.
Reference Materials:
https://mirror.xyz/vanishk.eth/kXdSumWuR9JHZHKQz9uvjQeaxME6TsOH9cPklXsBJn4
https://mud.dev/
https://www.dojoengine.org/en/
#2 Best Use of RelationService - Develop the Next-Gen Application with a Portable Universal Profile (6k USD in total)
Prize Pool
1st prize (max 1): $3k USD
2nd prize (max 1): $2k USD
3rd prize (max 1): $1k USD
Description
Utilize the RelationService API (https://docs.next.id/relation-service/rs-graphql) to develop a use case that addresses market needs.
Strive to be as innovative as possible.
Recommended Use Cases (but not limited to):
Cross-Platform Profile Search and Recommendations
Get an understanding of what this involves and why it's useful by visiting W**eb3.bio** first.
For instance, consider linking a Twitter account with Mastodon using a DID.
Sybil Attack Resistance by Wallet History Verification
For instance, in a significant airdrop event, bot accounts controlled by a small group of people need to be filtered out, ensuring that each user claiming the airdrop is a legitimate individual user.
DAO (Decentralized Autonomous Organizations) Tooling
For instance, a DAO member's credentials can be made portable across different blockchain ecosystems.
For instance, when a new member joins, their existing social credentials can be immediately displayed, and different access levels can be provided based on their existing profile data.
Growth and Personalization
For instance, utilize a universal profile(Similar to this one: https://web3.bio/vitalik.eth) to identify potential user personas. Track social identities using wallet addresses and use this information to create look-alike audiences.
For instance, use a universal profile(Similar to this one: https://web3.bio/vitalik.eth) to solve the cold-start problem for apps. Allow users to invite their connections on Web2 by examining the wallet addresses they interact with.
Acceptance Criteria
Proof of Work: Submit either an open-source project published on GitHub for the judges to review, or if its business value necessitates confidentiality, share a private project repo address with us.
Relevance: Your use case should be pertinent and demonstrate a practical application of the RelationService feature within the DID protocol.
Protocol Compliance: Your use case must fully adhere to the DID protocol's specifications and accurately implement the RelationService feature.
Security: Your use case must prioritize data privacy and security. It should not introduce any security vulnerabilities.
Innovation: Creative or innovative applications of the RelationService feature are highly valued, even though not strictly required.
License Compliance: All submissions must be in accordance with the licensing terms of the open-source project.
Judgment and Awarding
The mentor will decide which prize to grant based on the quality and quantity of your work
- Good presentation(Recommended in recorded Video)
- Clear documentation
- Code quality, etc.