ConsensusLayerDepositManagerV1
Kiln
Consensus Layer Deposit Manager (v1)
This contract handles the interactions with the official deposit contract, funding all validatorsWhenever a deposit to the consensus layer is requested, this contract computed the amount of keysthat could be deposited depending on the amount available in the contract. It then tries to retrievevalidator keys by calling its internal virtual method _getNextValidators. This method should beoverridden by the implementing contract to provide [0; _keyCount] keys when invoked.
Methods
DEPOSIT_SIZE
Size of a deposit in ETH
Returns
Name | Type | Description |
---|---|---|
_0 | uint256 | undefined |
PUBLIC_KEY_LENGTH
Size of a BLS Public key in bytes
Returns
Name | Type | Description |
---|---|---|
_0 | uint256 | undefined |
SIGNATURE_LENGTH
Size of a BLS Signature in bytes
Returns
Name | Type | Description |
---|---|---|
_0 | uint256 | undefined |
depositToConsensusLayer
Deposits current balance to the Consensus Layer by batches of 32 ETH
Parameters
Name | Type | Description |
---|---|---|
_maxCount | uint256 | The maximum amount of validator keys to fund |
getBalanceToDeposit
Returns the amount of ETH not yet committed for deposit
Returns
Name | Type | Description |
---|---|---|
_0 | uint256 | The amount of ETH not yet committed for deposit |
getCommittedBalance
Returns the amount of ETH committed for deposit
Returns
Name | Type | Description |
---|---|---|
_0 | uint256 | The amount of ETH committed for deposit |
getDepositedValidatorCount
Get the deposited validator count (the count of deposits made by the contract)
Returns
Name | Type | Description |
---|---|---|
_0 | uint256 | The deposited validator count |
getWithdrawalCredentials
Retrieve the withdrawal credentials
Returns
Name | Type | Description |
---|---|---|
_0 | bytes32 | The withdrawal credentials |
Events
SetDepositContractAddress
The stored deposit contract address changed
Parameters
Name | Type | Description |
---|---|---|
depositContract | address | Address of the deposit contract |
SetDepositedValidatorCount
Emitted when the deposited validator count is updated
Parameters
Name | Type | Description |
---|---|---|
oldDepositedValidatorCount | uint256 | The old deposited validator count value |
newDepositedValidatorCount | uint256 | The new deposited validator count value |
SetWithdrawalCredentials
The stored withdrawal credentials changed
Parameters
Name | Type | Description |
---|---|---|
withdrawalCredentials | bytes32 | The withdrawal credentials to use for deposits |
Errors
ErrorOnDeposit
An error occured during the deposit
InconsistentPublicKeys
The length of the BLS Public key is invalid during deposit
InconsistentSignatures
The length of the BLS Signature is invalid during deposit
InvalidPublicKeyCount
The received count of public keys to deposit is invalid
InvalidSignatureCount
The received count of signatures to deposit is invalid
InvalidWithdrawalCredentials
The withdrawal credentials value is null
NoAvailableValidatorKeys
The internal key retrieval returned no keys
NotEnoughFunds
Not enough funds to deposit one validator
SliceOutOfBounds
The slice is outside of the initial bytes bounds
SliceOverflow
The length overflows an uint
Last updated