Byzantine Fault-Tolerant Replication Using Trusted Computing Entity

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current Byzantine fault-tolerant protocols face challenges in scalability and resource consumption, particularly due to intensive network communication and the need for a large number of servers, which limits their deployment in distributed consensus systems, and existing solutions like TPM-based Unique Sequential Identifier Generators suffer from poor performance and rate limiting.

Innovation Solution

A method for Byzantine fault-tolerant replication on n servers with a primary node and replica nodes, utilizing a trusted computing entity to compute and aggregate unique identifiers for request and commit messages, reducing the number of required servers and communication rounds, and enhancing performance by leveraging CPU-based trusted computing entities.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If traditional Byzantine fault tolerant protocols are used to provide strong consistency guarantees, then reliability is improved, but device complexity increases due to intensive network communication involving O(n^2) messages and requirement of n≥3f+1 servers

Engineering Contradiction:
Improveconsistency guaranteeVSAvoidnetwork communication complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The protocol segments the consensus process into distinct phases (request, prepare, commit, reply) with clearly defined message types and validation steps. Each phase handles specific aspects of consensus, breaking down the complex O(n^2) communication into structured, manageable interactions that reduce overall system complexity while maintaining reliability

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system performs preliminary validation of message signatures and unique identifiers before processing consensus operations. The trusted computing entity pre-computes and validates unique monotonic sequential counters before they are used in consensus messages, preventing invalid operations and reducing the need for complex post-hoc verification

Inventive Principle:
Principle #10Preliminary action

2Reliability

If TPM-based Unique Sequential Identifier Generators are used to ensure security, then reliability is improved, but productivity decreases due to poor performance and rate limiting

Engineering Contradiction:
Improvesecurity guaranteeVSAvoidcounter generation speed
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent introduces a software-based unique monotonic sequential counter generator as an intermediary between the trusted computing entity and the consensus protocol. This intermediary layer uses the TCE to establish initial security credentials, then generates counters software-based to avoid TPM rate limiting, thus maintaining security while improving performance

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The system changes the operational parameters of counter generation by switching from hardware-TPM-based generation (slow, rate-limited) to software-based generation with TCE-validated seeds (fast, flexible). The TCE provides the initial secure entropy, but subsequent counter generation occurs in software without TPM intervention, fundamentally changing the performance characteristics while maintaining security

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS10664353B2Method and system for byzantine fault-tolerance replicating of data on a plurality of servers
Publication Date: 2020.05.26 NEC CORP
  • US10664353B2 patent drawing
  • US10664353B2 patent drawing
  • US10664353B2 patent drawing

AI summary

A method for byzantine fault-tolerant replication of data on a plurality of n servers includes performing, by a primary node (PN), a prepare procedure that includes computing a prepare message including a unique identifier and multicasting the prepare message to the REPN. The method further includes performing, by the PN, a commit procedure that includes receiving, from each of a portion of the REPN, a prepare message reply signature part and aggregating each of the prepare message reply signature parts to generate a prepare message reply aggregated signature, checking the validity of the prepare message reply aggregated signature, and upon determining that the prepare message reply aggregated signature is valid, computing a commit message including the prepare message reply aggregated signature and multicasting the commit message to the REPN. The method further includes transmitting, to the client, the commit message reply aggregated signature.