---
# System prepended metadata

title: SSV <> StakeWise V3

---

# SSV <> StakeWise V3 

By Alon Muroch

---


The below is a quick walkthrough on how to setup validators on StakeWise V3 that run on SSV.
I've created a [10 validator vault](https://testnet.stakewise.io/vault/0xb02b648c466bae7f3a382ef47799a39c93847b92) which already runs validators

## Background
StakeWise V3 is a new protocol that economically seperates Liquid-Staking-Derivatives(LSD) from the infrastructure on which they run.

The base component is called a Vault to which anyone can deposit ETH. Vault managers are responsible to then operate the deposited validators.
Vaults have each a unique ERC20 token issued as a deposit receipt which can then be staked to receive the more established StakeWise ETH LSD.

## Why is this important
DVT networks like SSV enable to run ethereum validators in a decentralized way by splitting the validator keys between independent operators.
SSV is built as a permissionless DVT network in which anyone can become a DVT node operator, and be included in clusters (a set of operators responsible for operating an ethereum validator).

SSV <> StakeWise V3 enables quick setups of liquid stake for both projects, institutions and home stakers. All on the ready built SSV <> StakeWise V3 infrastructures.

## How
### Setting up a vault
Anyone can go and setup a vault at [testnet.stakewise.io](https://testnet.stakewise.io/).
This will require a metamask wallet with some goerli ETH in it as it creates a vault contract managed by the address used to create it.

### Creating validators
You can create validators on the fly, i've created 10 in advance using the official ethereum launchpad. 
You can use the [cli](https://github.com/ethereum/staking-deposit-cli/releases/) or the [app](https://github.com/stake-house/wagyu-key-gen/releases) to do that.
You will end up with a deposit json file and a bunch of keystore files that have the encrypted private key for the validator.

At this stage we just have non deposited validators that we still need to associate with our vault.

***You must set the vault's withdrawal address as your withdrawal credentials when creating the validators!***

### Registering the validators with the SSV network
Once the validators are created we can register them with the SSV network so they will be ready to run as soon as they get deposited.
You can use the super easy [SSV UI](https://app.ssv.network) for that, then watch your validators on the [explorer](https://explorer.ssv.network).

If you are looking for solid SSV operators you can use any of the verified ones (with the little ✔️ next to their name). 

You can also use one of my operators:
* [AlonSSV](https://explorer.ssv.network/operators/49)
* [AlonEU](https://explorer.ssv.network/operators/60)
* [AlonAsia](https://explorer.ssv.network/operators/61)
* [AlonHelsinki](https://explorer.ssv.network/operators/580)

### Running the StakeWise manager
StakeWise is using a service manager that listens to the vault for incoming deposits and then registers validators on the fly.
I suggest grabbing [V0.1.5](https://github.com/stakewise/v3-operator/releases/tag/v0.1.5) as it worked well for me.

The StakeWise manager requires a config file that incldues the following:

```
# The network of the Vault. Choices are: mainnet, gnosis, goerli
NETWORK="goerli"

# Address of the Vault to register validators for
VAULT_CONTRACT_ADDRESS="<your vault's address>"

# The directory where the database will be created or read from
DATABASE_DIR="./"

# API endpoint for the execution node
EXECUTION_ENDPOINT="https://..."

# API endpoint for the consensus node
CONSENSUS_ENDPOINT="https://..."

# Absolute path to the password file for decrypting keystores
KEYSTORES_PASSWORD_PATH="./password.txt"

# Absolute path to the directory with all the encrypted keystores
KEYSTORES_PATH="./keys"

# Path to the deposit_data.json file
DEPOSIT_DATA_PATH="./keys/<deposit data file name>.json"

# Private key of the hot wallet with ETH for submitting transactions
OPERATOR_PRIVATE_KEY="<the private key for address with which you created the vault>"
```

***If you don't have synced ethereum nodes you can use a service like chainstack for a POC. It's not recommended for production, better spin your own nodes when you can.***

The deposit and keystore files put in a new folder called keys, put that folder in the same directory as your operator binary file (the StakeWise manager).

### Waiting for deposits
The manager waits in the background for incoming deposits to your vault, once a 32 ETH batch is found it will register that validator with the vault and deposit it. 
From that moment on the SSV network takes care of the rest, it will operate the validators like magic!