Categorygithub.com/ssvlabs/eth2-key-manager
modulepackage
1.4.2
Repository: https://github.com/ssvlabs/eth2-key-manager.git
Documentation: pkg.go.dev

# README

Eth Key Manager

Eth Key Manager is a library wrapping all major functionality an eth 2.0 validator will need:

Installation

go get github.com/ssvlabs/eth2-key-manager

Security and Architecture

eth2keymanager is the entry point to manage all operations, in it sits a unique wallet and accounts.
eth2keymanager <- Wallet <- [Accounts]

An account is the entity that ultimately signs transactions.
Wallets and accounts are derived according to EIP-2334:

  1. Withdrawal key: m/12381/3600/account_index/0
  2. Validation key: m/12381/3600/account_index/0/0

The seed is needed just to execute specific operations like creating new accounts or signing with the withdrawal key.

Examples:

# Packages

No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author

# Functions

InitCrypto initializes cryptography.
NewKeyVault creates a new wallet (with new ids) and will save it to storage Import and New are the same action.
OpenKeyVault opens an existing KeyVault (and wallet) from memory.

# Structs

KeyVault is an EIP 2333,2334,2335 compliant hierarchical deterministic portfolio https://eips.ethereum.org/EIPS/eip-2333 https://github.com/ethereum/EIPs/blob/master/EIPS/eip-2334.md https://eips.ethereum.org/EIPS/eip-2335.
KeyVaultOptions contains options to create a new key vault object.