
How can RISC Zero Steel accelerate ZK adoption on Ethereum?
TechFlow Selected TechFlow Selected

How can RISC Zero Steel accelerate ZK adoption on Ethereum?
Steel connects RISC Zero and Ethereum, embracing ZK to enable developers to bypass Ethereum's gas fees and limitations.
Translated by: Alex Liu, Foresight News
Ethereum's success has brought forth a thriving ecosystem of decentralized applications, but its scalability challenges have become increasingly severe. Developers face a difficult choice: limit the functionality and data richness of their applications, or endure high gas fees and gas limits. What if developers had a way to bypass these constraints?
Steel: Connecting RISC Zero and Ethereum
RISC Zero is one of the leading zkVM developers. If you've often heard of zkEVM but aren't clear on what the similar-sounding zkVM is, refer to this article. RISC Zero has recently launched Steel, a view call proof library built on Alloy that brings transformative changes to how developers interact with Ethereum L1 or other EVM chains. By leveraging zero-knowledge proofs and the RISC Zero zkVM, Steel enables developers to execute view calls and provably read and compute Ethereum's state in a scalable, secure, and cost-effective manner.
The Convenience of Solidity, the Power of ZK
Steel bridges the gap between Ethereum application development and zero-knowledge technologies, making it easier for developers to harness the power of ZK within their smart contracts. Combined with the capabilities of the RISC Zero zkVM, Steel empowers developers to build more secure, scalable, and efficient applications on Ethereum L1 or any EVM-equivalent chain.
With Steel, developers can:
-
Execute Solidity smart contracts directly within the zkVM, compatible with more complex on-chain logic
-
Access historical Ethereum state within the zkVM
-
Perform computations using continuations, unbounded by block or transaction size limits
-
Ensure off-chain computations are as secure and reliable as on-chain execution
-
Leverage the first production-ready zkVM, rigorously tested and used by multiple partners
-
Perform private computations on Ethereum state
-
Maintain flexibility through open-source libraries, free from vendor lock-in
Seamless Integration and Cost Savings
With Steel, executing view calls is as simple as specifying the desired Solidity method. Whether retrieving an ERC-20 token balance (example) or accessing various aspects of Ethereum state, Steel streamlines the process through seamless integration with the RISC Zero zkVM, while ensuring security and efficiency. Testing shows Steel can handle over 100K SLOAD operations in a single view call, saving thousands of dollars in gas fees on mainnet. We can prove it with Bonsai in about 15 minutes—requiring at least 210M gas, seven times beyond the block limit.
Example: ERC20 balanceOf
The code snippet below demonstrates the process of proving the balance of a specific address for an ERC-20 contract deployed on Ethereum using Steel. This example illustrates how developers can use Steel to interact with on-chain Ethereum data within the zkVM. Full code is available here.
Define the View Function Signature
First, use the sol! macro to define the function signature of the ERC-20 balanceOf method. This parses Solidity syntax to generate the corresponding Rust struct, which implements the SolCall trait and can be used to invoke the balanceOf method—accepting an account address and returning the associated ERC-20 token balance.

Prepare the Call
Next, set up the call by instantiating the balanceOfCall struct with the target account address. Also, define constants for the contract address to query and the caller’s address.

Execute the Call in Main
The main function executes inside the zkVM, generating a zero-knowledge proof. It first reads the input environment, then constructs a ViewCallEnv object, ensuring the current state matches the expected state root. After committing the relevant block hash and number, it performs the view call and prints the balance.

How It Works
Steel simplifies the process of proving Solidity code in the RISC Zero zkVM through three steps:
-
Pre-flight phase: Initiate a view call to an Ethereum RPC node to start pre-flight, caching necessary storage slots and populating the EVM database only with required data. All storage slots are automatically discovered and fetched based on the view call execution.
-
Storage verification: Perform integrity checks to ensure data in the EVM database aligns with the blockchain's state root, confirming its validity.
-
Solidity execution: Run the given Solidity function on the EVM inside the RISC Zero zkVM.
How Is This Different from Storage Proofs?
With traditional storage proofs, developers must manually select the storage slots used by their smart contracts and reimplement contract logic. With Steel, all storage slots are automatically discovered and retrieved based on the view call execution. This saves developers significant time, reduces the risk of implementation errors, and thereby minimizes opportunities for security vulnerabilities.
Obtaining Verified Block Hashes
When using the blockhash opcode in Ethereum smart contracts for verification, the verified commitment must reference a block hash no older than 256 blocks. Given the average block time of 12 seconds, this creates a narrow window of approximately 50 minutes to complete proof generation and ensure the validation transaction is included in a block.
When a verified block hash older than 256 blocks is needed on-chain, one of the following strategies can be used:
-
If the required block hash is known in advance (e.g., when submitting a governance proposal), it can be stored in the contract state.
-
Alternatively, RISC Zero can be used to prove a hash chain from the queried block to a block within the most recent 256 blocks.
The Future of On-Chain Applications
Imagine a future where off-chain computation seamlessly integrates with on-chain verification. Steel enables developers to reliably access and compute Ethereum’s full history within the zkVM, paving the way for next-generation, data-rich, and more powerful on-chain applications—making significant strides toward realizing this vision.
Join TechFlow official community to stay tuned
Telegram:https://t.me/TechFlowDaily
X (Twitter):https://x.com/TechFlowPost
X (Twitter) EN:https://x.com/BlockFlow_News














