Database Transaction Log Integrity Using TEE Secure Counters

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In-memory databases face data loss during system reboot and transaction logs are vulnerable to integrity breaches, with Merkle trees causing contention and bottlenecks in high-concurrency workloads.

Innovation Solution

A database system utilizing a trusted execution environment with secure counters to track and verify transaction log entries, ensuring integrity and preventing unauthorized alterations, while using secure counters to manage and restore the database.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If Merkle trees are used to verify transaction log integrity, then log integrity can be ensured, but system performance deteriorates due to contention and bottlenecks in high-concurrency workloads

Engineering Contradiction:
Improvetransaction log integrityVSAvoidsystem performance
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent divides the transaction log into multiple segments or partitions, each with its own integrity verification mechanism. Instead of using a single global Merkle tree that all threads must contend with, the system creates multiple smaller Merkle trees or hash structures that can be maintained independently, reducing lock contention and improving parallel processing capability.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces an intermediary layer between the transaction log and the integrity verification mechanism. This intermediary maintains simplified checksums or hash values that can be updated without requiring full Merkle tree reconstruction, acting as a buffer that reduces the computational overhead and lock contention associated with traditional Merkle tree approaches.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Adaptability or versatility

If transaction logs are stored outside the trusted execution environment, then database recovery can be enabled, but security deteriorates as the log becomes vulnerable to unauthorized alterations

Engineering Contradiction:
Improvedatabase recovery capabilityVSAvoidlog security
Core Design Contradiction:
Adaptability or versatilityVSReliability

Solution Approach 1:

The patent applies preliminary cryptographic hashing and signing operations to transaction log entries before they are written to the external log file. Each log entry is hashed and signed with a cryptographic key stored in the TEE, creating a chain of trust that prevents unauthorized alterations. This preliminary security measure allows the log to be stored externally while maintaining integrity verification capability.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent creates cryptographic copies or hashes of the transaction log data and stores these immutable representations both inside the TEE and externally. These cryptographic copies serve as verification tokens that can be used to detect any tampering with the external log without requiring the original sensitive data to remain in the TEE throughout the log's lifetime.

Inventive Principle:
Principle #26Copying

Data Source

PatentUS12530343B2Database transaction log writing and integrity checking
Publication Date: 2026.01.20 MICROSOFT TECHNOLOGY LICENSING LLC
  • US12530343B2 patent drawing
  • US12530343B2 patent drawing
  • US12530343B2 patent drawing

AI summary

In various examples, there is provided a computer-implemented method for writing transaction log entries to a transaction log for a database system. At least part of the database system is configured to be executed within a trusted execution environment. The transaction log is stored outside of the trusted execution environment. The method maintains a first secure count representing a number of transaction log entries which have been written to the transaction log for transactions which have been committed to the database and writes a transaction log entry to the transaction log. In other examples, there is also provided is a computer-implemented method for restoring a database system using transaction log entries received from the transaction log and a current value of the first secure count.