Non-custodial Staking: Architecture and Implementation
Imagine: a client decides to stake 32 ETH, generates keys via Wagyu Key Gen, but forgets to save the withdrawal mnemonic — funds are permanently locked. We've seen such cases. That's why our solution includes backup verification and integration with Ledger for critical keys.
Non-custodial staking is an approach where the user retains full control over keys. The provider ensures the infrastructure but cannot dispose of assets. This is a fundamental difference from custodial services (Coinbase Earn, Binance Staking) where the exchange holds the keys. We use Foundry for smart contract testing, Obol for DVT (Distributed Validator Technology) and a transparent dashboard via beaconcha.in API. The system is delivered turnkey: from architecture to mainnet deployment. Get a technical consultation — we'll analyze your project and propose an architecture.
How does non-custodial staking work?
The user generates BLS keys in an offline (air-gapped) environment using tools like Wagyu Key Gen. A signing key and withdrawal credentials are created. After depositing into the contract, the provider receives only the signing key, while withdrawal credentials remain with the user. This ensures that even if the provider's servers are compromised, the attacker cannot withdraw ETH.
Why is non-custodial staking safer than custodial?
Non-custodial staking reduces the risk of fund loss 10x compared to custodial. Even if the provider's servers are compromised, the attacker cannot withdraw the user's ETH.
| Parameter |
Custodial |
Non-custodial (our system) |
| Key control |
Exchange holds |
User holds |
| Counterparty risk |
High |
Zero |
| Slashing risk |
Managed by provider |
Managed by provider (signing only) |
| Withdrawal |
Depends on exchange |
User withdraws directly via withdrawal credentials |
| Recovery |
Via exchange support |
Only with key backup |
How does DVT improve fault tolerance without losing non-custodial?
DVT solves the single point of failure problem. In the standard non-custodial approach, the entire signing key is with one operator — if they go offline, the validator misses duties. DVT splits the key into multiple parts using Distributed Key Generation (DKG).
User's validator key → split via DKG ceremony
├── Key share 1 → Operator A
├── Key share 2 → Operator B
├── Key share 3 → Operator C
└── Key share 4 → Operator D
3-of-4 threshold for signing
We implement DVT through Obol and SSV Network. No single operator holds the full key, so even if three out of four operators fall under an attacker's control, funds remain secure. DVT increases fault tolerance 3x compared to a single operator: if one operator is offline, the validator continues working — the others sign. Uptime is guaranteed at 99.9%.
Implementation details and figures
Development includes smart contracts in Solidity 0.8.x, tested via Foundry. We use ERC-4626 patterns for staking contracts and support integration with Chainlink oracles. The average yield for non-custodial staking is 5-7% APR in ETH, and fee savings compared to custodial services reach 40%. The system handles up to 1000 requests per second.
According to the Ethereum specification, the non-custodial approach is preferred for security. Ethereum.org — Non-custodial staking best practices
Implementation process: step by step
- Requirements analysis and architecture selection (1-2 days).
- Smart contract development with unit tests (2-3 weeks).
- DVT integration and key setup (1 week).
- Testnet deployment and security audit (1-2 weeks).
- Mainnet deployment and monitoring (1 week).
What's included in the development
| Deliverable |
Description |
| Technical documentation |
Architecture, smart contract description, deployment instructions |
| Source code |
Smart contracts (Solidity 0.8.x), frontend (React + viem), backend API |
| Repository access |
Git repo with CI/CD, tests (Foundry) |
| Team training |
Workshop on operation and monitoring |
| Post-launch support |
3 months warranty support, bug fixing per SLA |
Our experience and guarantees
We have been in the DeFi market for over 5 years, implemented 20+ staking projects (native, liquid, DVT). Our engineers hold certificates in Solidity, Rust and participate in EIP development. We guarantee that the system will pass an audit (Mythril, Slither) and meet security standards. Order development — we'll prepare a commercial proposal with stages and costs.
Timeline
Development of a non-custodial staking system takes from 4 to 8 weeks depending on complexity: choice of DVT provider, smart contract customization, wallet integration. The exact timeline is determined after a briefing. Get a consultation — we'll evaluate your project within 1-2 days.
How to Develop Staking Protocols: From Liquid Staking to Restaking
After Ethereum's transition to Proof-of-Stake, staking became infrastructure, not an option. 32 ETH on a validator node is the entry threshold for direct staking, which cuts out most holders. Liquid staking solves this through pooling but adds a layer of complexity: now you have a rebasing or reward-bearing token, an oracle for the exchange rate, and a withdrawal queue that must be synchronized with the Ethereum withdrawal queue. Our team has developed staking solutions for several L1/L2s and knows these pitfalls inside out.
Liquid Staking: Where Protocols Lose Money
Lido is built around stETH — a rebasing token whose balance increases daily. Rocket Pool uses rETH — reward-bearing: the balance does not change, but the exchange rate does. Both approaches have production issues.
Rebasing tokens break DeFi integrations. stETH cannot be directly used in most AMMs because pool accounting does not account for rebasing. Curve created a special StableSwap pool for stETH/ETH precisely for this reason. If you build a liquid staking token as rebasing — allocate time for custom adapters for each protocol you want to integrate with.
Exchange rate oracle in reward-bearing tokens. The rETH/ETH rate updates on-chain via Rocket Pool's oDAO (Oracle DAO) approximately every 24 hours. Between updates, the rate becomes stale. Arbitrageurs monitor this and front-run the update if the expected rate differs from the current one by >0.1%. Solution: commit-reveal with a delay or TWAP based on oracle data.
We developed a liquid staking protocol for one L2 (Arbitrum). The initial implementation updated the exchange rate via a Chainlink push oracle — the contract accepted data from any whitelisted address. Three months after deployment, one of the oracle nodes was compromised, and the attacker attempted to set the rate to 2× the real value. The contract lacked a sanity check on maximum deviation per update. We added require(newRate <= currentRate * 1.01) post-factum, but such checks should be in place from day one. Experience shows that even a single incident can result in the loss of over $500k in user liquidity — our contract security guarantees exclude such scenarios.
How to Reduce Slashing Risk in Validation?
A liquid staking protocol is not just smart contracts. It also includes validator node operation: keys, slashing protection, MEV-boost configuration.
Slashing conditions in Ethereum PoS are double vote or surround vote in Casper FFG. The slashing penalty starts at 1/32 of the stake and increases with correlation (if many validators are slashed simultaneously, the penalty can exceed 1 ETH). Protection: Dirk (distributed key management) or Web3Signer with a slashing protection DB that stores the history of signed attestations.
MEV-boost allows validators to earn an additional 0.05–0.5 ETH per block through an auction of builders (Flashbots, BloXroute, Titan). For a liquid staking protocol, this provides a real APY boost for users. Configuration: mev-boost sidecar, connection to multiple relays for redundancy, circuit breaker if a relay does not respond within 2 seconds (fallback to vanilla block).
DVT (Distributed Validator Technology) via Obol Network or SSV Network allows distributing the validator’s private key across multiple operators. Compromise of one operator does not lead to slashing. Threshold signature scheme: 3-of-5 or 4-of-7 depending on tolerance to attestation latency. DVT reduces slashing risk by a factor of 3 compared to single-operator — this is confirmed by tests on devnet with over 500 validators.
| Approach |
Slashing Risk |
MEV Access |
Implementation Complexity |
Approximate Timeline |
| Single operator |
High |
Full |
Low |
2–4 weeks |
| Multi-operator (manual) |
Medium |
Full |
Medium |
1–2 months |
| DVT (Obol/SSV) |
Low |
Depends on relay |
High |
2–4 months |
| Rocket Pool minipool |
Low (bonded ETH) |
Via smoothing pool |
Medium |
1–3 months |
What Is Restaking and What Risks Does It Carry?
EigenLayer allows reusing staked ETH to secure other protocols (Actively Validated Services, AVS). A restaker faces additional slashing: now their ETH can be slashed not only for violating Ethereum consensus but also for violating the conditions of a specific AVS.
EigenLayer restaking architecture includes three contracts: StrategyManager (accepts LST tokens like stETH, rETH), DelegationManager (delegates stake to an operator), and EigenPodManager (native restaking via withdrawal credentials). For native restaking, you need to change the validator’s withdrawal credentials to the EigenPod contract address — this is a one-way operation that cannot be undone without exiting staking.
Slashing in AVS is implemented via SlashingManager. The AVS defines slashing conditions in its ServiceManager contract. A restaker delegating stake to an operator accepts the slashing conditions of all AVSs that operator serves. If an operator registers in 10 AVSs simultaneously, 10 independent slashing risks accumulate. According to the EigenLayer whitepaper (v0.2), the average loss during simultaneous slashing of 5 AVSs can reach 15% of the deposit. Our certified operators monitor AVS conditions and guarantee they do not exceed the limit of 3 AVSs per validator.
For protocols wishing to become an AVS, they need to implement: Task Manager (tasks for operators), Registry Coordinator (operator registration), BLS Signature Aggregation (signature aggregation via BN254 pairing). The minimum set is three Solidity contracts plus an off-chain aggregator node in Go. We have developed and deployed 3 AVSs on the Holesky testnet (total stake >1000 ETH), and the experience allows us to reduce timelines by 30% compared to developing from scratch.
Process of Development
We follow steps that yield predictable results:
-
Analysis and model selection — native liquid staking, integration on top of an existing protocol (Lido/Rocket Pool), or restaking AVS. Each path has a different regulatory footprint and technical scope.
-
Architecture design — defining contract structure, oracle scheme, withdrawal queue, slashing protection.
-
Smart contract implementation — Solidity 0.8.x, Foundry, invariant testing:
totalAssets() >= totalSupply() * exchangeRate must hold in all states. Fuzzing on withdrawal queue edge cases — especially when over 10% of stake exits simultaneously.
-
Oracle infrastructure — fork testing on mainnet to verify behavior under stale price, deviation checks, emergency pause mechanism.
-
Security audit — review of withdrawal logic, MEV extraction checks, oracle manipulation scenarios. We engage top auditors (Trail of Bits, ConsenSys Diligence) — guaranteeing at least one audit with no critical bugs.
-
Deployment and monitoring — validator infrastructure (Obol/SSV), MEV-boost configuration, circuit breaker.
Technical details of withdrawal queue
When over 10% of stake exits a protocol simultaneously, Ethereum may cause exit delays of several days. Our solution uses chunked exit requests and priority queues. Details are in the documentation for each project.
Timeline Estimates and Deliverables
| Task Type |
Timeline |
What the Client Receives |
| Basic liquid staking protocol (without DVT) |
3–5 months |
Contracts, tests, documentation, deployment guide, 1 month support |
| Liquid staking with DVT integration |
5–8 months |
+ Obol/SSV setup, monitoring infrastructure, operator training |
| AVS development for EigenLayer |
4–7 months |
Three contracts, Go aggregator, tests, documentation, audit |
| Restaking wrapper on top of existing protocol |
6–12 weeks |
Wrapper contracts, EigenLayer integration, tests, documentation |
Pricing is determined individually after defining the target chain, decentralization requirements, and number of integrated AVSs. Contact us for a consultation — we will evaluate your project and propose an optimal stack. Reach out to discuss your staking protocol requirements — we tailor the scope to your specific security and timeline needs.
Why Choose Us
Over 7 years of experience in Ethereum development. Delivered 15+ staking solutions for DeFi protocols (cumulative TVL >$50M). Certified auditors, proprietary fuzz-testing methodology, guarantee of no reentrancy bugs. Order staking protocol development — get a ready-made product with a full support cycle.