Skip to main content

Key Setup

warning

The Succinct Prover Network is currently in testnet. This means things are subject to change or break along the way.

Learn how to generate a new keypair or use an existing one to authenticate with the prover network.

The Succinct Network uses Secp256k1 keypairs for authentication, similar to Ethereum wallets. You may generate a new keypair explicitly for use with the prover network, or use an existing keypair.

Foundry

Generate a Public Key

Prover network keypair credentials can be generated using the cast CLI tool.

First install Foundry:

curl -L https://foundry.paradigm.xyz | bash

Upon running this command, you will be prompted to source your shell profile and run foundryup. Afterwards you should have access to the cast command. Then, use cast to generate a new keypair:

cast wallet new

which will give you an output similar to this:

Successfully created new keypair.
Address: 0x7594cF2161dC345B300A5Ac87e2473c7bF25D9fe
Private key: <PRIVATE_KEY>

When interacting with the network, you will set your NETWORK_PRIVATE_KEY environment variable to this value.

Retrieve an Existing Key

If you already have an existing key you would like to use, you can also use cast retrieve your address:

cast wallet address --private-key $PRIVATE_KEY

Metamask

These instructions will guide you through the process of creating a new wallet in Metamask and exporting the private key. This process should work for also any other Ethereum wallet.

Create a New Wallet

  1. Install the Metamask browser extension and follow the setup process
  2. Click on the Metamask extension icon, select the top arrow bar, and select "Add account or hardware wallet" and "Add a new Ethereum account". Name the account to your liking.

Export Private Key

To export your private key from Metamask:

  1. Click on the Metamask extension icon
  2. Click the three vertical dots menu (⋮)
  3. Select "Account details"
  4. Click "Show private key"
  5. Enter your Metamask password when prompted
  6. Copy the displayed private key

When interacting with the network, you will set your NETWORK_PRIVATE_KEY environment variable to this exported private key.