Consistent Ciphertext Generation via Nonce Key
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
The Advanced Encryption Standard with Galois/Counter Mode (AES-GCM) generates different ciphertext values even when encrypting the same plaintext with the same data encryption key (DEK), which complicates operations like database joins and increases resource usage and decryption requirements.
Innovation Solution
A method is introduced where a nonce key different from the DEK is used to generate a nonce based on the plaintext, allowing for consistent ciphertext creation across multiple encryptions without compromising security, by linking the DEK and nonce to the encrypted object and using AES-CMAC for nonce generation.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If AES-GCM encryption is used with a unique nonce for each encryption operation, then security is improved, but ciphertext consistency deteriorates (different ciphertext values are generated even when encrypting the same plaintext with the same DEK)
Solution Approach 1:
The patent applies preliminary action by pre-computing and storing the nonce value in the metadata of the encrypted object during the initial encryption operation. This allows the same nonce to be reused in subsequent encryption operations with the same plaintext and DEK, producing consistent ciphertext values while maintaining security through the authenticated encryption properties of AES-GCM.
2Reliability
If different nonces are used for each encryption operation, then authentication security is improved, but operational complexity increases (requiring decryption to perform joins and increasing resource usage)
Solution Approach 1:
The patent introduces metadata as an intermediary component that stores the nonce value and other encryption parameters. This metadata acts as a mediator between the encryption process and subsequent operations, allowing the system to retrieve and reuse the same nonce without decryption, thereby reducing operational complexity while maintaining authentication security.
3Reliability
If decryption is required to perform join operations on encrypted data, then data security is maintained, but productivity deteriorates (increased resource usage and decryption requirements)
Solution Approach 1:
The patent enables encrypted data to serve itself by incorporating all necessary decryption parameters (nonce, DEK identifier, authentication tag) within the encrypted object's metadata. This self-contained structure allows join operations to be performed on encrypted data directly without external decryption services, improving productivity while maintaining data security through authenticated encryption verification.
Data Source
AI summary
Aspects of the invention include receiving, by a processor, an unencrypted object that includes plaintext and metadata that describes the plaintext. A data encryption key (DEK) and a nonce key for the unencrypted object are obtained by the processor. The nonce key is different than the DEK. The unencrypted object is encrypted by the processor. The encrypting includes generating a nonce based at least in part of the plaintext and the nonce key. The encrypting also includes generating ciphertext and a metadata authentication tag that includes a signature of the metadata. The generating is based at least in part on the plaintext, the metadata, the DEK, and the nonce. An encrypted object that includes the ciphertext, the metadata, and the metadata authentication tag is created.


