Finality
Finality in blockchain systems refers to the point at which a transaction becomes irreversible and permanently included in the blockchain's ledger. Plume offers two levels of finality.
Soft Finality - 1 block (~250 ms)
Soft finality refers to the preliminary confirmation of transactions based on the Sequencer's real-time feed. It occurs as soon as the sequencer orders the transaction in its off-chain inbox, locally executes it using the Plume VM, and gives a transaction receipt back to the client. Key characteristics include:
Immediate Confirmation: Transactions are confirmed almost instantly as they are accepted and ordered by the Sequencer. This typically takes ~250 ms and doesn't require any other on-chain confirmations.
Provisional Assurance: The confirmations are provisional and rely on the Sequencer's integrity and availability. That is, a malicious or faulty Sequencer could deviate between what it promised in the transaction receipt and what is ultimately published in a batch.
High Performance: Enables applications to offer rapid responses and real-time interactions, enhancing user experience.
Hard Finality - 64 blocks after posting to Ethereum (~30 minutes)
Hard finality occurs when batched transactions get posted to Ethereum. These batches are typically posted every few minutes during normal traffic on Plume, after which the transaction inherits the full security of Ethereum. It's recommended to wait for two Ethereum epochs, or 64 blocks, to minimize the chances of any potential re-orgs happening on Ethereum. Key characteristics include:
Strong Security Guarantees: When included in blocks on Ethereum, transactions inherit Ethereum's security assurances.
Decentralized Assurance: Anyone, including yourself, can run a Plume validator node to confirm that the L1 batch is legitimate. Only a single well-behaved validator is needed to ensure that the transaction is finalized.
Data Availability: All transaction data is recorded on-chain, ensuring transparency and verifiability.
If any malicious validator tries to deviate from this finalized state, any honest validator can submit a fraud proof challenge within 7 days and win. Once the honest validator has succeeded in the challenge, the correct finalized state will be propagated to Ethereum. Even though the state is finalized within 30 minutes, in order to ensure that there is enough time for honest validators to challenge malicious actors, no messages will be propagated from the Ethereum outbox until after the 7 days is up. This means that withdrawals from Plume are subject to a 7-day delay.
Last updated