OpenViSTAI · Agents · Blockchain · Crypto
Menu
OPENVIST JOURNAL

The Hidden Work of Blockchain Infrastructure: What Builders Must Operate and Verify

Infrastructure choices are less about labels like Layer 1, Layer 2 or SDK than about who runs each component, what evidence it produces, and which dependencies remain trusted. A practical framework for comparing those responsibilities.

7 min readAll articles →
The Hidden Work of Blockchain Infrastructure: What Builders Must Operate and Verify — editorial illustration about Blockchain Infrastructure

Two blockchain projects can both promise an application a way to read state or submit transactions while placing very different duties on its builders. One may require operating a node and related services; another may offer a client library that still depends on an external RPC endpoint. The useful comparison is not simply which layer a tool occupies. It is what must be operated, what can be independently checked, and where trust remains.

Start by tracing a request from the application to the chain and back. At each boundary, ask who supplies the data, who performs the computation, what a component can prove about its output, and what happens when that component is unavailable. This turns infrastructure selection into an operational and verification decision rather than a category-matching exercise.

Separate the interface from the service behind it

An SDK is a way for software to call functionality; it does not, by itself, supply the network or guarantee the correctness of the response. A client library may encode transactions, serialize values, or make RPC requests, but those calls still reach an endpoint operated by someone. Builders should identify the endpoint separately from the code that makes the request.

For example, Sava is a Java SDK for Solana that documents cryptography and serialization utilities alongside HTTP and WebSocket RPC clients. That describes useful application-side components, not a Solana node or a guarantee that an RPC response is correct. A team choosing it still needs to decide which RPC endpoint to use, how to handle timeouts and inconsistent responses, and whether its application needs additional checks.

This distinction also clarifies responsibility during an outage. If a request fails, the cause may be the application’s serialization, its network path, the RPC endpoint, or the chain itself. Keeping those layers explicit makes logs and recovery procedures more useful than treating “the blockchain connection” as a single dependency.

Ask what operating a network component actually entails

Infrastructure repositories may contain multiple services that participate in one protocol, but their presence does not mean every deployment needs to operate all of them in the same way. Identify each component’s function before estimating the operational burden: does it execute or relay transactions, build proofs, coordinate work, persist data, observe events, or manage assets across networks?

Scroll provides an example of a Layer 2 infrastructure repository with L1 and L2 contracts, a rollup node, prover clients, a prover coordinator, database components, and a bridge-history service. Those are distinct jobs, not interchangeable boxes. A team considering self-hosted protocol infrastructure must understand which components its intended deployment uses and how they depend on one another.

The bridge-history service illustrates why naming a component’s job matters. It collects L1 and L2 deposit and withdrawal events and generates withdrawal proofs. That is narrower and more informative than saying it “handles the bridge”: it gives a builder a concrete data flow to assess, while leaving questions about deployment topology and production operations to the system design.

Documented component lists are not equivalent to a complete deployment runbook. The available description identifies Docker-based setup prerequisites for Scroll components but does not establish a full production procedure. Treat self-hosting as an operational commitment that requires deployment, monitoring, upgrades, backup, and incident planning—not as a consequence of cloning a repository.

Distinguish data availability from data correctness

Applications often need chain data in a convenient form: a transaction receipt, account state, event history, or a balance. An RPC server can provide those responses, but availability and correctness are separate questions. A responsive endpoint may still be a trusted source unless the application verifies the response or obtains it through an independently controlled path.

Write down the exact claim each response supports. “The endpoint returned this transaction receipt” is not the same as “the transaction is finalized,” and neither statement automatically proves that an application-specific condition has been met. The appropriate checks depend on the protocol, the data type, and the consequence of acting on it.

For a low-impact display, an application may accept a single RPC source and show a clear failure state when it is unavailable. A service that triggers a consequential action may need stronger controls, such as checking confirmation status or comparing results from separately operated sources. These approaches have costs: extra requests increase complexity, while multiple endpoints can still share underlying dependencies. Choose verification in proportion to the damage a bad or stale answer could cause.

Choose test networks by the work they are meant to test

A test network is not a generic sandbox. Network parameters and intended use determine whether it is a suitable target for a particular test. Developers should distinguish experiments with consensus participation or infrastructure from routine application testing, and configure clients with explicit network identity rather than relying on an ambiguous label.

Holešky is a public Ethereum proof-of-stake test network whose configuration repository identifies parameters including chain ID, fork versions, genesis data, and discovery information. Its described purpose includes staking, infrastructure, and protocol-developer testing; the repository directs dApp and smart-contract testing to Sepolia. That distinction helps avoid treating every Ethereum test network as interchangeable.

A practical client configuration should make the target network visible in logs and deployment settings. During testing, verify that the configured chain ID and endpoint match the intended environment before sending transactions. This simple boundary check prevents a test script from silently relying on a default or a developer’s local configuration.

Understand what a proof does—and where trust remains

Cryptographic proofs can let a verifier check a defined statement without repeating all of the prover’s work. That shifts some computation, but it does not remove the need to understand the statement, the circuit or constraints, the verifier implementation, and the surrounding system. A proof attests to what the verification relation encodes, not to every claim an application might attach to it.

In a rollup, proof generation and verification are parts of a broader lifecycle that also involves transaction sequencing, data handling, contracts, and user-facing services. A builder should map which component produces each artifact and which component checks it. If a system has a bridge-history service that derives withdrawal proofs from observed events, the proof’s role should be understood alongside the event sources and contracts involved—not as a blanket assurance about every bridge operation.

Experimental proof libraries require particular care. LatticeFold is a Rust proof-of-concept implementing lattice-based folding schemes, with R1CS and CCS circuit structures, Ajtai commitments, and transcript machinery. Its documented scope makes it useful for experimentation with proof constructions, but does not establish production readiness. A builder evaluating it should separate research prototypes and benchmarks from components on which a live system’s security depends.

Make trust boundaries and failure modes explicit

For each external or self-operated component, record three things: the input it receives, the output it supplies, and the assumption the next component makes about that output. This lightweight map often reveals hidden trust. An application might trust an RPC endpoint for state, a database for event history, a coordinator to schedule proof work, and a contract to enforce verification. Those assumptions are different and should not be collapsed into one security claim.

Then ask what failure looks like. Does the application stop safely, retry, switch providers, or proceed with stale information? Can it detect a malformed response? Does recovery risk duplicating a transaction or processing an event twice? These questions turn an architecture diagram into a useful operational plan. Where the evidence does not establish behavior, mark it as a design requirement rather than assuming it is handled.

Redundancy also needs precise meaning. Two endpoints can improve resilience against a single service outage, but they do not necessarily provide independent verification if they rely on the same upstream or implementation. Likewise, self-hosting can reduce reliance on a provider while increasing responsibility for maintenance and availability. Neither option is categorically safer; each changes who must be trusted and who must respond when the system fails.

Compare infrastructure with a responsibility matrix

Before adopting a component, evaluate it across a few operational questions. Who runs it? What data or computation does it own? What can the application verify independently? What breaks if it is unavailable or wrong? What ongoing work—upgrades, storage, monitoring, key management, or incident response—does the choice add?

Use the answers to compare options that are often presented as competitors but solve different problems. An SDK can simplify application calls without replacing an RPC provider. A hosted endpoint can reduce operational work while concentrating trust. Self-hosted protocol services can offer control while expanding the team’s maintenance burden. A proof system can verify a bounded computation while leaving data inputs and application policy outside that proof.

The best infrastructure fit is the one whose responsibilities match the team’s capacity and whose trust assumptions match the consequences of failure. Write those assumptions down before integration, test the relevant failure paths, and keep each component’s documented scope separate from the guarantees the application actually needs.

Reuse this article’s text

OpenViST’s original editorial text is available under CC BY 4.0, unless a specific notice states otherwise. You may share and adapt it, including commercially, with credit, a source link, a licence link and a description of changes. This covers only rights OpenViST can license. Images, third-party quotations, screenshots, logos and other excluded material require their own permission or applicable legal basis.

Attribution example for unchanged text:

“The Hidden Work of Blockchain Infrastructure: What Builders Must Operate and Verify” — OpenViST. Source: https://openvist.com/the-hidden-work-of-blockchain-infrastructure-what-builders-must-operate-and-verify/. Licensed under CC BY 4.0. Changes: none.

If you translate, shorten or adapt the text, replace “Changes: none” with what you changed and retain any separately required author attribution and notices. See the reuse guide and adaptation example.