Build “Blob” Data Archive on Greenfield

Blog post image.

What Is Data Archive Layer?

Modular blockchains divide the core functions of a classic blockchain into distinct specialized layers. Data availability layer is the essential component that ensures that transaction data included in each produced block is accessible to every node in the network. 

This layer essentially maintains the integrity and trust of the blockchain, allowing everyone to independently verify the validity of transactions. The data availability layer guarantees access to newly created data, but it does not provide access to the entire historical data. For example, EIP4844 and Celestica will discard blob data older than 18 days. 

The data archive layer is an extension of the data availability layer, ensuring that all historical block data remains publicly accessible after being archived.

What is BNB Greenfield 

BNB Greenfield is a cutting-edge decentralized storage and blockchain storage network, designed to harness the power of decentralized technology in the field of data ownership and the data economy. Greenfield guarantees data availability, integrity, and accessibility through decentralized redundant storage and “Proof-of-Challenge“, this makes it an ideal solution for a data archive layer.

BNB Greenfield as Data Archive Layer

The Greenfield community has recently launched  “BlobHub,” a data archive layer designed for all layer 2 blockchains and Dapps which leverages EIP4844 blobs as data availability layer. All historical blobs can be persisted into Greenfield, and users can easily access these blobs whenever they want to query them. BlobHub not only serves Ethereum but also other blockchain that enable EIP4844. 

While each blob can be saved as an object in Greenfield, doing so individually would not be cost-effective. Thanks to the bundle service, which aggregates small files into one bundle for storage in Greenfield, this service can gather blobs from a wide range of blocks, validate their correctness, and upload them to Greenfield efficiently.

Note: Greenfield will charge a fee for both storing and reading objects from the bucket owner. If there is not enough balance in the bucket payment account, users will be unable to query data until the quota is refilled. 

Blob Hub on BNB Greenfield

How Does Blob Hub Work

The Blob Hub primarily consists of two components: the blob-syncer and the api-server. To sync blobs to Greenfield, the blob-syncer service continuously fetches blobs from Ethereum and other blockchains and persists them in Greenfield. The api-server handles historical blob query requests from users. The bundle-service can aggregate blobs together, validate their correctness, and upload them to Greenfield efficiently.

Blob Hub Solution

The syncing process ensures that no blob is missing and each blob synced to Greenfield is consistent. This is achieved by running a post-verification process that scans all uploaded blobs again, conducts integrity checks against data already stored in Greenfield, and detects any missing data. Duplicate uploads are prevented by key naming constraints in the Bundle service and Greenfield.

Who Needs to Access the Blob Hub?

Layer 2 Node

Layer 2 nodes that need to sync from the genesis block require access to historical block data via the Blob Hub. By leveraging Greenfield’s robust infrastructure, they can rest assured that the integrity and availability of the stored data remain intact.

Analytical Platform

For on-chain data analytical builders, the blob hub service offers an alternative to centralized RPC service providers. By relying on a decentralized source, these builders gain access to a wealth of historical blob data without being tethered to centralized entities.

Query Blobs from Blob Hub

Blob hub released its support to Ethereum now, it is going to support as many EVM chains as possible. The API is 100% compliant with the Beacon Chain API spec. Developers can get the supported network and endpoint in the doc.

Blob Sidecars API Spec

  • GET /eth/v1/beacon/blob_sidecars/{block_id}?indices={indices}
block_idstringBlock identifier. Can be one of: slot(beacon chain), <hex encoded blockRoot with 0x prefix>. note: “head” (canonical head in node’s view), “genesis”, “finalized” are not support
indicesarray of stringArray of indices for blob sidecars to request for in the specified block. Returns all blob sidecars in the block if not specified, like “indices=0,1

The codebase of Blob Hub is also open-source, allowing anyone to deploy their custom Blob Hub on Greenfield.

Direct Access to Blobs

In scenarios where the bundle service is inaccessible, direct access to blob data stored in Greenfield is necessary, this ensures that data is always accessible in any cases. Users can retrieve the bundle object and extract specific data from it using command line or SDK, check for more details.

Try It Out

By adopting this innovative solution, stakeholders can ensure the integrity, accessibility, and longevity of blockchain data, thereby supporting a more resilient and transparent digital ecosystem. Don’t miss the opportunity to revolutionize your data handling processes—join the Greenfield community today and set a new standard for blockchain data reliability and security.