Key Prefix Encryption for Distributed Database Security

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing database systems face challenges in ensuring concurrent and secure execution of transactions in distributed environments, particularly in maintaining data integrity and consistency across multiple users and locations, while also providing efficient encryption solutions for hybrid tables.

Innovation Solution

The implementation of a concurrency control mechanism combining multi-version concurrency control (MVCC) and locking for write operations, along with targeted isolation levels, and the use of a 'KeyPrefix' or 'tenant' based encryption domain for per-tenant encryption in distributed databases, ensuring data security and integrity.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If per-tenant encryption is implemented in distributed databases, then data security and integrity are improved, but device complexity and operational difficulty increase

Engineering Contradiction:
Improvedata securityVSAvoidencryption system complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent divides the encryption system into per-tenant encryption domains, where each tenant has their own encryption key and data is encrypted separately. This segmentation isolates security risks to individual tenants while maintaining overall system security, and simplifies key management by associating keys with specific tenants rather than requiring a single master key for all data.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces an encryption server as an intermediary component that handles all encryption and decryption operations. This mediator abstracts the complexity of key management and encryption operations from the database system, allowing the database to focus on data storage while the encryption server manages security operations centrally.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If concurrency control mechanisms (MVCC and locking) are implemented, then transaction reliability and data integrity are improved, but device complexity and processing overhead increase

Engineering Contradiction:
Improvedata integrityVSAvoidconcurrency control complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent combines multi-version concurrency control (MVCC) and locking mechanisms into a unified concurrency control system. This merging allows the system to leverage the benefits of both approaches: MVCC for read operations and locking for write operations, while managing complexity through integrated implementation rather than separate systems.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The patent applies different concurrency control strategies to different operations: MVCC is used for read operations to allow concurrent reads without blocking, while locking is applied to write operations to ensure exclusive access. This local differentiation optimizes performance for each operation type while maintaining overall data integrity.

Inventive Principle:
Principle #3Local quality

3Reliability

If targeted isolation levels are implemented, then transaction processing reliability is improved, but processing speed and system throughput may decrease

Engineering Contradiction:
Improvetransaction isolationVSAvoidtransaction processing speed
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent implements targeted isolation levels that apply different isolation strengths to different transactions and operations. Rather than applying a uniform isolation level to all transactions, the system adjusts isolation levels based on specific transaction requirements, allowing higher isolation for critical transactions and lower isolation for less critical ones, thus optimizing both reliability and throughput.

Inventive Principle:
Principle #3Local quality

Data Source

PatentUS11940995B1Key prefix driven data encryption in tree structures
Publication Date: 2024.03.26 SNOWFLAKE INC
  • US11940995B1 patent drawing
  • US11940995B1 patent drawing
  • US11940995B1 patent drawing

AI summary

The subject technology determines a derived encryption key using a cryptographic hash function applied to a hybrid tenant master encryption key and a local random generated identifier. The subject technology encrypts a record value and a key value associated with a transaction using the derived encryption key. The subject technology determines a non-leaf node using a tenant prefix of a tenant. The subject technology inserts the encrypted record value at a leaf node below a non-leaf node of a tree structure associated with the tenant. The subject technology receives a second transaction for performing a read operation on a distributed database. The subject technology retrieves a set of encryption keys based at least in part on an account and the tenant. The subject technology decrypts, using the set of encryption keys, data from the distributed database. The subject technology provides the decrypted data as a result of the second transaction.