Nested Encryption for Secure Database Storage
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current methods for storing sensitive data in databases are inadequate in preventing malicious access, as demonstrated by numerous instances of compromised databases where sensitive customer information has been leaked online.
Innovation Solution
A method and system that involves a transaction manager application server, a record key management server administered by the customer, and a database key management server, where transaction data is encrypted with a transaction key, which is then encrypted with a master key, and stored alongside the encrypted transaction data in the database, ensuring secure storage and retrieval using different encryption keys.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If transaction data is stored in a database with conventional security measures, then data storage functionality is achieved, but the database remains vulnerable to malicious access and data breaches
Solution Approach 1:
The encryption system is segmented into multiple independent components: transaction key generation, record key management, database key management, and layered encryption processes. Each component operates independently with its own key management, so that compromise of one component does not endanger the entire system. The data is divided into encrypted portions stored separately in the database.
Solution Approach 2:
The patent implements nested encryption where transaction data is encrypted with a transaction key, which itself is encrypted with a record key stored in the database. Additionally, the database employs its own encryption keys for data at rest. This creates multiple nested layers of encryption (transaction key → record key → database key), where each layer protects the previous one, similar to nested dolls.
2Reliability
If a single encryption key is used for all transaction data, then encryption simplicity is maintained, but security is reduced as a single key compromise exposes all data
Solution Approach 1:
Instead of using a single encryption key, the system segments key management into multiple independent keys: transaction-specific keys for each transaction, record keys stored in the database, and database-level encryption keys. Each key protects a specific portion of data, so compromise of one key does not expose other data.
Solution Approach 2:
Different encryption keys are applied to different portions of data based on their security requirements and access patterns. Transaction keys are used for specific transaction data, record keys for stored records, and database keys for data at rest. This local differentiation of encryption keys ensures that each data portion has appropriate security without requiring all data to use the same key management approach.
3Reliability
If transaction keys are retained for future decryption, then data retrieval flexibility is improved, but security is compromised as retained keys provide access to encrypted data
Solution Approach 1:
The transaction keys used to encrypt transaction data are extracted and discarded from the system after encryption. Only the encrypted transaction data and encrypted record keys are retained in the database. This extraction of the decryption capability ensures that even if the database is compromised, the keys needed to decrypt the data are not available to attackers.
Solution Approach 2:
The system discards transaction keys after use, eliminating them from active memory and storage. When data retrieval is needed, new decryption keys are generated or recovered through secure key management processes rather than retaining original keys. This discarding approach prioritizes security over operational convenience, ensuring that retained keys cannot compromise data security.
Data Source
AI summary
Disclosed are methods, systems and one or more computer readable mediums for storing data securely in a database. In one aspect, transaction data received from a user completing a form is encrypted using a transaction key provided by a record key management server which is administered by a customer of a form hosting entity. An encrypted transaction key is also generated by the record key management server, wherein a record indicative of the encrypted transaction data and the encrypted transaction key is stored in a database administered by the form hosting entity. Data at rest stored in the database, including the record, is encrypted by a database key management server using a database key.


