Secret Key Synchronization Through Sequential Log Replay

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Data synchronization failures between server instances lead to disruptions and reduced availability and performance in software applications, particularly in scenarios where database resources are consumed for operations like read, write, and edit, and encryption keys are locally managed for secure data access.

Innovation Solution

A method for synchronizing database keys between server instances involves persisting encryption and decryption keys in a log file on a primary server, replaying this log file at a secondary server to replicate transactions and key management operations, ensuring data and key replication is maintained through point-in-time recovery and sequential logging.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If encryption keys are locally managed at each server instance, then data security is improved, but key synchronization between servers becomes complex and error-prone

Engineering Contradiction:
Improvedata securityVSAvoidkey synchronization complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

A key store component is introduced as an intermediary between database operations and encryption keys. The key store persists keys in the database and manages key lifecycle operations, serving as a centralized mediator that eliminates the need for complex distributed key management while maintaining security. The key store receives key management operations (create, activate, delete) and handles key persistence and retrieval automatically.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The patent merges key management functionality directly into the database system by persisting keys within the database infrastructure and integrating key operations with database transactions. This consolidation eliminates separate key management systems and their associated synchronization complexity, while the log replay mechanism ensures consistency across server instances.

Inventive Principle:
Principle #5Merging (Combining)

2Reliability

If data is synchronized between primary and secondary servers, then high availability is improved, but data consistency during key management operations becomes difficult to maintain

Engineering Contradiction:
Improvehigh availabilityVSAvoiddata consistency
Core Design Contradiction:
ReliabilityVSStability of the object's composition

Solution Approach 1:

The system performs preliminary key management operations by persisting keys in the key store before they are needed for database operations. The key store pre-processes key creation, activation, and deletion operations and logs them sequentially. This preliminary action ensures that when log replay occurs during failover, keys are already prepared and consistency is maintained without requiring complex synchronization during critical operations.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The log replay mechanism ensures continuous replication of key management operations from primary to secondary servers. By replaying sequential log entries, the system maintains uninterrupted key consistency across server instances, ensuring that the secondary server always has the correct keys available for data access even during failover scenarios.

Inventive Principle:
Principle #20Continuity of useful action

3Reliability

If log replay is performed to replicate key management operations, then key synchronization is improved, but the time required for failover increases

Engineering Contradiction:
Improvekey synchronizationVSAvoidfailover time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The log replay mechanism is designed to be self-service and automatic, triggering seamlessly when failover is detected. The secondary server autonomously replays logs to synchronize keys without requiring manual intervention or complex coordination. This automation reduces failover time by eliminating human factors and streamlining the synchronization process.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

Logs are continuously maintained and ready for replay, with key management operations recorded in sequential order as they occur. This preliminary preparation of log data ensures that when failover is needed, the secondary server can immediately begin replaying from the current log position without delay, minimizing failover time while ensuring complete key synchronization.

Inventive Principle:
Principle #10Preliminary action

4Stability of the object's composition

If sequential log entries are replayed to replicate transactions and key operations, then data integrity is improved, but the complexity of the replication process increases

Engineering Contradiction:
Improvedata integrityVSAvoidreplication process complexity
Core Design Contradiction:
Stability of the object's compositionVSDevice complexity

Solution Approach 1:

The replication process is segmented into distinct components: transaction log replay for data replication and key management operation replay for key synchronization. The key store separates key lifecycle operations (create, activate, delete) into discrete, manageable units. This segmentation allows each component to be implemented and maintained independently, reducing overall system complexity while ensuring data integrity through systematic replication.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS20250226981A1Synchronization of secret keys between multiple server instances
Publication Date: 2025.07.10 SAP SE
  • US20250226981A1 patent drawing
  • US20250226981A1 patent drawing
  • US20250226981A1 patent drawing

AI summary

The present disclosure relates to computer-implemented methods, software, and systems for the replication of secret keys between server nodes. Keys for encryption and decryption are persisted in a log file on a first database hosted on a primary server. The log file comprises data for executed database transactions at the first database and key management operations at a first key store. In response to triggering a synchronization between the primary server and a secondary server, a set of sequential entries of the log file are replayed at the secondary server from the first database. An execution of a transaction is replicated at a secondary database at the secondary server based on data for an entry at the log file and a key management operation associated with a key at the first key store that is persisted in another entry of the log file is replicated.