Seismic is an EVM blockchain with native on-chain privacy. Write Solidity. Deploy with Foundry. Interact with Viem. The only difference: your users' data stays private.
One letter changes everything
The difference between a public ERC20 and a private SRC20 is one letter:
// Standard ERC20 — balances visible to everyone
mapping(address => uint256) public balanceOf;
function transfer(address to, uint256 amount) public {
balanceOf[msg.sender] -= amount;
balanceOf[to] += amount;
}
// Seismic SRC20 — balances shielded by default
mapping(address => suint256) balanceOf; // uint256 → suint256
function transfer(address to, suint256 amount) public { // uint256 → suint256
balanceOf[msg.sender] -= amount;
balanceOf[to] += amount;
}
The s prefix tells the Seismic compiler to shield the underlying value. Observers see 0x00...0 instead of actual balances and amounts. Everything else — the Solidity syntax, the EVM execution model, the deployment flow — stays exactly the same.
What you can build
Shielded tokens — ERC20s where balances and transfer amounts are hidden from observers
Confidential DeFi — AMMs and lending protocols where positions, prices, and liquidation thresholds are shielded
Compliant finance — Privacy with built-in access control so regulators can verify without exposing user data
3-minute quickstart
Already have Rust and the ?
You just ran shielded contract tests locally. See the for next steps.
Find what you need
I want to...
Go to
Pre-requisite knowledge
Our documentation assumes some familiarity with blockchain app development. Before getting started, it'll help if you're comfortable with:
If you're new to blockchain app development or need a refresher, we recommend starting out with the tutorial.
Work with us
If you might benefit from direct support from the team, please don't hesitate to reach out to [email protected]. We pride ourselves in fast response time.
You can also check out our for the latest updates, or join our community.
Private voting — On-chain governance where votes are secret until tallied
Build a complete app step by step
Build a shielded ERC20 token
Learn about shielded types
Integrate a frontend
Deploy to testnet
Understand the transaction lifecycle
Run a node
git clone "https://github.com/SeismicSystems/seismic-starter.git"
cd seismic-starter/packages/contracts
sforge test -vv