Skip to content

LightNodeStaking/lightnodecontracts

Repository files navigation

LightNode Ethereum Staking Protocol

Built on Ethereum, LightNode is a network of smart contracts that facilitate user deposits to the pool and track blockchain rewards. LightNode’s staking technology tokenizes staked ether in the form of slETH ("staked Ether") and accrues rewards based on the amount of Ethereum staked. Additionally, there will be wrapper protocols in place to allow users the use of a static, yield generating token with DeFi protocols. Since slETH is a 1:1 peg of Ether, it can be redeemed for the value they represent after Phase 2 of Ethereum 2.0.

Contracts

LightNode

LightNode is the core contract which acts as a liquid staking pool. The contract is responsible for Ether deposits and withdrawals, minting and burning liquid tokens, delegating funds to node operators, applying fees, and accepting updates from the oracle contract.

LightNode also acts as an ERC20 token which represents staked ether, slETH. Tokens are minted upon deposit and burned when redeemed. slETH tokens are pegged 1:1 to the Ethers that are held by LightNode. slETH token’s balances are updated when the oracle reports change in total stake every day.

NodeOperatorRegistry

Node Registry acts as validators on the Beacon chain for the benefit of the protocol. We can or DAO can select node operators and add their addresses to the NodeOperatorsRegistry contract. Authorized operators have to generate a set of keys for the validation and also provide them with the smart contract. As Ether is received from users, it is distributed in chunks of 32 Ether between all active Node Operators. The contract contains a list of operators, their keys, and the logic for distributing rewards between them. We can deactivate misbehaving operators when reported.

Oracle

Oracle is a contract where oracles send addresses' balances controlled on the ETH 2.0 side. Reward accumulation can go down due to slashing and staking penalties. Oracles are assigned by the devs or DAO.

slETH

SLETH is somewhat a typical ERC20 and an abstarct contract. Let's say user deposit the 1 ETH to the staking contract, in return user will recieve 1 SLETH given ETH:SLETH maintaining 1:1 ratio. If user swap their SLETH back to ETH, SLETH in swapping scenarion will get burn. We would also need to update the Node operator and oracle with user's updated amount.

Deployments

Görli testnet

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published