Database Transaction Log Integrity Using TEE Secure Counters
Find Innovative SolutionsGenerate 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
Engineering 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
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.
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.
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
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.
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.
Data Source
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.


