Skip to content

SKALE - Private key generation and token transfers

Goal

Create a means of transferring tokens between custodial wallets associated with users. If there are any obstacles, identify them and propose solutions.

What needs to be done

  • See if we can use Nostr private keys to act as a user's custodial wallet for the site.
  • If we cannot, find an alternative system of private key generation for users.
  • Check wallets can be imported in Metamask and tokens can be sent between wallets.
  • Build out a CLI endpoint that can be used to wire tokens between the wallets of two users.
  • CLI endpoint should print TX hash (as when implemented fully, we will want to pass this to the front-end.

QA

  • Test CLI endpoint works for users pre-seeded with testnet tokens.

UX/Design

N/A - though if any future UX considerations come up, we should consider it.

Personas

For now, developers, in future, users of the offchain system as outlined in &256

Experiments

N/A - this should NOT be exposed yet or accessible from existing API endpoints thus should not YET need a feature flag.

Acceptance Criteria

  • SKALE compatible private keys associated with user accounts.
  • Figure out sFuel distribution.
  • CLI endpoint to transfer tokens between two users by user guid - should print TX hash.
  • CLI endpoint for checking the balance of a wallet by address or user guid.
  • CLI endpoint for sending sFuel to a wallet by address or user guid (should be the same as sending Ether).
  • Unit tests.

Definition of Ready Checklist

  • Definition Of Done (DoD)
  • Acceptance criteria
  • Weighted
  • QA
  • UX/Design
  • Personas
  • Experiments
Edited by Fausto Arcidiacono