Docs
/

Transaction

Celestia is a novel blockchain platform that employs a unique approach to scalability and data availability, heavily leveraging the Cosmos SDK to structure its transaction system. Transactions are entities created by end-users to initiate changes within the application's state.

The Lifecycle of a Transaction

The process begins when users create transactions to trigger specific state changes, such as transferring tokens or submitting data. Each transaction comprises one or more sdk.Msgs that need to be signed by the user's private key before being broadcast to the network. Upon successful validation and inclusion in a block, these transactions contribute to the network's consensus and the ongoing evolution of the blockchain's state. To see all the messages included in a transaction (tx), visit its page and explore them under the Messages tab.

PayForBlobs: Key to Data Availability

At the heart of Celestia's approach to data management is the PayForBlobs transaction, denoted by the MsgPayForBlobs. This mechanism allows users to pay for the inclusion of data blobs within the blockchain, a critical feature for Celestia's data availability model. A PayForBlobs transaction specifies the data's size, associated namespaces for categorization, and commitments to ensure data integrity. This system not only facilitates efficient data storage and retrieval but also underpins Celestia's scalable and decentralized architecture.

Understanding MsgPayForBlobs

The MsgPayForBlobs message is at the heart of PayForBlobs transactions, facilitating the payment and inclusion of data blobs within the blockchain. These transactions, often abbreviated as "PFBs," represent a critical mechanism for users wishing to submit data to the Celestia network. Below is an overview of the key components of the MsgPayForBlobs:

  • Signer: This field contains the Bech32 encoded address of the transaction signer, ensuring accountability and security for the transaction initiation.
  • Namespaces: A critical feature of Celestia, namespaces allow for the organization of blobs within specific categories. Each namespace in the list is associated with a blob, comprising a byte slice where the first byte indicates the version and the subsequent 28 bytes represent the namespace ID.
  • Blob Sizes: This list details the sizes of the blobs being submitted, with each size expressed in bytes. It's essential for calculating the gas and fees associated with the transaction.
  • Share Commitments: Each blob has a corresponding share commitment, listed here to ensure the integrity and verifiability of the data once included in the blockchain.
  • Share Versions: The versions of the share format specified here must align with those used to generate the share commitments. This alignment is crucial for the accurate inclusion and retrieval of blobs within blocks.

Transactions on Celenium

On Celenium, users have several intuitive options for exploring transactions, providing both a broad and detailed insight into the network's activity. Here’s a streamlined guide to navigating transactions on the platform:

  • Homepage Overview: For a snapshot of current transaction activity, the homepage displays the latest transactions, allowing users to quickly catch up on the most recent network actions. This immediate view is perfect for those looking to stay informed about real-time activity.
  • Transactions Page: Dive into a comprehensive list of all transactions on the Transactions page, where sorting by time, filtering by status, and identifying specific message types are all possible. This view offers a wide-angle lens on the network’s operations.
  • Transaction Details: For granular insights into a particular transaction, its dedicated page reveals all messages involved, events emitted during processing, and essential details such as memo, signer, fee, and included blobs if present.
  • Transactions by Block: Interested in the contents of a specific block? Celenium provides a detailed listing of all transactions included in any chosen block, facilitating historical research and block-by-block analysis.
  • Namespace-Specific Transactions: To examine PayForBlobs transactions within a particular namespace, the dedicated namespace page is your go-to. This option is especially valuable for users monitoring data distribution and availability in the network.
  • Account-Specific Transactions: For a personalized transaction history, users can review all activities associated with their account on its page. This focused approach helps users track their individual interactions with the blockchain.

From a real-time overview on the homepage to deep dives into specific transactions, blocks, namespaces, and accounts, Celenium’s array of viewing options ensures users can navigate the platform’s transactional data with ease, promoting transparency and user engagement.

Links

Claim your ideas or suggestions: Issue Tracker