Blockchain Transaction Verification With Parallel UTXO Validation Flow
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
The existing blockchain validation process is slow and resource-intensive, leading to inefficiencies in block propagation and wasted mining efforts due to the time-consuming validation of transactions and blocks.
Innovation Solution
Implementing a method and device that parallelize transaction-level validation operations while ensuring uniqueness of unspent transaction outputs (UTXOs) is verified serially, followed by allocating transactions to multiple processors for parallel verification, and forwarding valid blocks to peer nodes.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If serial validation of all transactions is performed, then validation completeness is ensured, but validation time increases significantly
Solution Approach 1:
The validation process is segmented into three distinct phases: (1) serial validation of block-level criteria and UTXO uniqueness, (2) parallel validation of individual transactions, and (3) serial verification of parallel results. This segmentation allows the most time-consuming transaction-level validation to be performed in parallel while maintaining completeness through the serial verification of results.
Solution Approach 2:
Block-level validation criteria and UTXO uniqueness are validated serially before parallel transaction validation begins. This preliminary action filters out obviously invalid blocks early, preventing wasted parallel processing resources on invalid blocks while ensuring completeness for blocks that pass the preliminary checks.
2Productivity
If parallel processing is implemented, then validation speed improves, but system complexity increases
Solution Approach 1:
The validation system is segmented into distinct serial and parallel phases, with clear boundaries between them. The transaction allocation unit divides transactions among parallel processors, and the result verification unit consolidates results. This structured segmentation manages complexity by organizing parallel operations within a framework of serial coordination.
Solution Approach 2:
The result verification unit acts as an intermediary between parallel transaction validation and final block validation. It collects and verifies results from parallel processors, managing the complexity of parallel operations through a dedicated coordination layer that maintains overall system simplicity.
3Loss of time
If UTXO uniqueness is verified in parallel, then validation time decreases, but synchronization overhead increases
Solution Approach 1:
UTXO uniqueness verification is performed serially as a preliminary action before parallel transaction validation. This ensures that all UTXO references are validated in a consistent order without requiring complex synchronization mechanisms during the parallel phase, eliminating synchronization overhead while maintaining verification completeness.
4Manufacturing precision
If validation criteria are applied strictly, then transaction accuracy is maintained, but processing efficiency decreases
Solution Approach 1:
Validation criteria are segmented into different levels with different strictness requirements. Block-level criteria and UTXO uniqueness are validated serially with full strictness to ensure accuracy. Transaction-level criteria are validated in parallel with optimized checking, and the result verification unit ensures accuracy is maintained. This segmentation allows efficiency improvements without sacrificing required accuracy.
Data Source
AI summary
A computer-implemented method to validate a block at a node within a network of nodes implementing a blockchain conforming to a blockchain protocol. This may be the Bitcoin protocol or an alternative. The method includes determining, serially, that each unspent transaction output referenced as an input in each of the plurality of transactions is unique and, based on that determination allocating each transaction in the plurality of transactions to one of two or more parallel processors, and verifying, in parallel, by the two or more parallel processors, that the transactions in the plurality of transactions comply with transaction-level validation criteria. The node also determines that the block meets block-level validation criteria. If the transactions comply with transaction-level validation criteria and the block complies with block-level validation criteria, the block is deemed valid and the node forwards the block to one or more peer nodes in the network.


