Cross-Shard Private Atomic Commit Protocol

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Blockchain sharding introduces complexity in processing transactions while requiring preservation of transaction integrity and privacy, especially in cross-shard transactions where non-participating shards need to maintain confidentiality and data consistency.

Innovation Solution

A cross-shard private atomic commit system divides blockchain transactions into requests with a shared transaction identifier, processes them across multiple shards, and uses secret symmetric keys to ensure confidentiality, with a two-phase commit protocol to maintain atomicity and consistency.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If blockchain transactions are divided into multiple shards to improve scalability, then processing capacity increases, but transaction privacy and data consistency become harder to preserve

Engineering Contradiction:
Improvetransaction processing capacityVSAvoidtransaction integrity and privacy
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The blockchain network is divided into multiple independent shards that can process transactions in parallel. Each shard maintains its own state and processing logic, enabling simultaneous transaction handling across multiple partitions while preserving overall system consistency through the atomic commit protocol.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

A coordinator shard acts as an intermediary to manage cross-shard transactions. It collects transaction requests, distributes them to relevant shards, aggregates responses, and commits the transaction atomically across all participating shards, ensuring privacy and consistency without requiring all shards to see all transaction data.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Adaptability or versatility

If cross-shard transactions are processed to improve versatility, then system functionality increases, but complexity of maintaining confidentiality and consistency increases

Engineering Contradiction:
Improvecross-shard transaction capabilityVSAvoidprotocol complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The complex logic for maintaining confidentiality and consistency is extracted from individual shard processing and centralized in the coordinator shard. This separation allows participating shards to focus on their core transaction processing functions while the coordinator handles the intricate coordination, privacy preservation, and atomic commit logic.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The coordinator shard performs preliminary actions by pre-coordinating transaction details with participating shards before actual execution. This includes validating transaction requests, identifying relevant shards, and preparing the commit protocol in advance, which simplifies the actual transaction processing and reduces runtime complexity.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS11741083B2Cross-shard private atomic commit
Publication Date: 2023.08.29 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • US11741083B2 patent drawing
  • US11741083B2 patent drawing
  • US11741083B2 patent drawing

AI summary

A computer-implemented system and method process a private transaction for dividing a blockchain transaction into a plurality of requests. Each of the requests have transaction data and a same transaction identifier. Each request is sent to a respective participating shard of a set of participating shards in the blockchain transaction of the blockchain. A response to the request is received from each participating shard, and each of the responses is sent to at least the participating shards except the shard the response was received from. In an atomic commit operation, a prepare transaction is created comprising information from the responses and the transaction identifier. The prepare transaction is submitted to the blockchain, and validity answers are received from the shards.