Consortium Blockchain TEE Code Integrity

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current blockchain systems lack efficient mechanisms for verifying and ensuring the integrity and confidentiality of blockchain protocol and consensus code within a network, particularly in consortium blockchain settings, which can lead to security vulnerabilities and inefficiencies in transaction processing.

Innovation Solution

Storing pre-determined blockchain and consensus codes in a Trusted Execution Environment (TEE) and using TEE attestation to verify their authenticity, allowing for secure establishment and operation of consortium blockchain networks, where validation nodes endorse and execute agreed-upon protocols, and generate a blockchain master key for secure transaction processing.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If blockchain protocol code and consensus code are stored and executed in a conventional manner without TEE, then the system is simpler and easier to implement, but the security and integrity of the code cannot be guaranteed

Engineering Contradiction:
Improvecode integrityVSAvoidsystem complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

A Trusted Execution Environment (TEE) is introduced as an intermediary layer between the blockchain nodes and the underlying hardware. The TEE provides a secure enclave that isolates and protects the execution of blockchain protocol code and consensus code, ensuring code integrity through hardware-based attestation mechanisms while maintaining a relatively simple blockchain layer architecture.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If TEE attestation is implemented to verify blockchain and consensus code, then code authenticity and security are improved, but the transaction processing time and system overhead increase

Engineering Contradiction:
Improvecode authenticityVSAvoidtransaction processing time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

TEE attestation is performed in advance during node initialization and code loading, rather than during each individual transaction processing. The blockchain nodes establish their trustworthiness beforehand through TEE attestation, and this trust status is cached and reused for subsequent transactions, significantly reducing the time overhead compared to performing attestation for every transaction.

Inventive Principle:
Principle #10Preliminary action

3Reliability

If all blockchain nodes verify TEE attestation for every transaction, then security is enhanced, but the network throughput and processing speed decrease

Engineering Contradiction:
Improvenetwork securityVSAvoidnetwork throughput
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The system implements a feedback mechanism where TEE attestation results are cached and reused. Once a node's TEE attestation is verified, this verification status is fed back into the system and used to exempt the node from repeated attestation checks during normal transaction processing, allowing the network to operate at high throughput while maintaining security through periodic re-attestation.

Inventive Principle:
Principle #23Feedback

Data Source

PatentEP3580905B1Consortium blockchain network with verified blockchain and consensus protocols
Publication Date: 2022.02.16 MICROSOFT TECHNOLOGY LICENSING LLC
  • EP3580905B1 patent drawingFigure 1
  • EP3580905B1 patent drawingFigure 2
  • EP3580905B1 patent drawingFigure 3

AI summary

The disclosed technology is generally directed to blockchain and other authentication technology. In one example of the technology, a pre-determined type of blockchain or other authentication protocol code and a pre-determined type of consensus code are stored in a trusted execution environment (TEE) of a processor. In some examples, TEE attestation is used to verify that the blockchain or other authentication protocol code stored in the TEE is the pre-determined type of blockchain or other authentication protocol code, and to verify that the consensus code stored in the TEE is the pre-determined type of consensus code. A request to alter the pre-determined type of blockchain or other authentication protocol code may be received. A determination may be made as to whether to change the pre-determined type of blockchain or other authentication protocol code based on the pre-determined consensus code.