Stark Wallet

Stark Wallet

Brings Web2 auth to the Web3 world

The problem Stark Wallet solves

Issues with current Web3 wallet:

  1. Require users to understand the concept of public and private key.
  2. Users have to remember long and weird private keys or seed phrases.
  3. Current account recovery methods are very difficult and hacky. If users lose their private key they also lose all their assets.

Stark Wallet As a Solution

  1. Provides web2 auth flow to users to control their account contracts.
  2. Users have to only remember their password to control their accounts.
  3. Provides easy, secure and fast way to recover accounts. (Could not be built due to time constraints)

Challenges we ran into

Circom, the language we are using to generate ZK-SNARK proofs doesn't export verifier contracts in circom. So we had to bypass that hurdle by deploying solidity verifer on L1 Ethereum and then sending a message to the account contract on L2. Sending messages from L1 to L2 was also a bit tricky. We first started with trying to figure out how to send generic calldata from L1 to L2 but that was too difficutl. So we settled for a specific ERC20 transfer example.