Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

New Challenge 6: Multisig Wallet with Account Abstraction #205

Open
Nadai2010 opened this issue Feb 12, 2025 · 0 comments
Open

New Challenge 6: Multisig Wallet with Account Abstraction #205

Nadai2010 opened this issue Feb 12, 2025 · 0 comments
Assignees

Comments

@Nadai2010
Copy link
Collaborator

Nadai2010 commented Feb 12, 2025

Overview

Create a new challenge that guides users through building a decentralized multisignature (multisig) wallet on Starknet. This wallet will utilize Starknet's native Account Abstraction features to offer enhanced security and flexibility beyond traditional Ethereum multisig solutions.

👩‍👩‍👧‍👧 Advanced Multisig Wallet with Account Abstraction

Objective: Develop a smart contract wallet that requires multiple approvals for transaction execution, leveraging Starknet's Account Abstraction capabilities. This wallet should:

  • Dynamic Ownership: Allow for the addition and removal of owners.
  • Configurable Thresholds: Enable setting a customizable number of required approvals for transactions.
  • Enhanced Security: Utilize Argent X's features, such as guardians and social recovery mechanisms, to bolster wallet security.

Proposed Solution

  1. Understand the Mechanics of Account Abstraction and Argent X

  2. Design the Multisig Wallet Contract

    • Owner Management: Implement functions to add or remove wallet owners.
    • Threshold Configuration: Develop logic to set and modify the number of required approvals for transaction execution.
    • Transaction Proposal and Approval: Create a system where proposed transactions are stored and require a predefined number of approvals before execution.
  3. Integrate Enhanced Security Features

    • Guardians: Incorporate guardian roles that can approve transactions or initiate recovery processes in case of compromised owner keys.
    • Social Recovery: Implement mechanisms allowing owners to recover access through a predefined social recovery process.
  4. Develop a User Interface with Argent X

    • Utilize Argent X to interact with the multisig wallet, enabling users to propose, approve, and execute transactions seamlessly.
  5. Testing and Documentation

    • Thoroughly test the contract to ensure security and functionality.
    • Document the contract's architecture, usage instructions, and security considerations.

Repository & Workflow

  1. Create a separate private repository

    • Implement the challenge in Starknet using Cairo.
    • Ensure the contract logic follows best practices.
    • Document the challenge structure and steps in a README.md, following the format of previous challenges.
  2. Assign repository access

    • Grant repository access to nadai2010 or 0xquantum3labs for review and feedback.

Next Steps

  • Research: Deep dive into Starknet's Account Abstraction and Argent X's multisig implementation.
  • Design: Outline the contract's architecture, focusing on owner management, transaction flow, and security features.
  • Development: Implement the contract in Cairo, adhering to best practices.
  • Testing: Conduct comprehensive testing to identify and rectify vulnerabilities.
  • Documentation: Prepare detailed documentation to assist users and developers in understanding and utilizing the multisig wallet.
@Nadai2010 Nadai2010 self-assigned this Feb 12, 2025
@Nadai2010 Nadai2010 assigned gianalarcon and unassigned Nadai2010 Feb 20, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants