Authenticated Encryption Using Single Key and Hash Engine
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing methods for encrypting and authenticating messages require separate processes, which are time-consuming and inefficient, and often rely on multiple encryption keys, checksum generation, and additional data manipulation, such as those described in U.S. Pat. Nos. 6,963,976, 7,046,802, 7,200,227, and NIST Special Publication 800-38C, and other prior art.
Innovation Solution
A device and method that combines encryption and authentication using a single cryptographic key, employing a series of block ciphers and a hash engine to encrypt and authenticate messages efficiently, without generating random numbers, pseudo-random numbers, or checksums, and using an exclusive-or function for combining encrypted data, ensuring message integrity.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If separate encryption and authentication methods are used, then message security is ensured, but processing time increases and efficiency decreases
Solution Approach 1:
The patent combines encryption and authentication into a single integrated process. The encryption algorithm simultaneously generates both the encrypted message and the authentication code, eliminating the need for separate processing steps. This merging of functions directly resolves the contradiction by maintaining security while reducing processing time.
Solution Approach 2:
The encryption algorithm is designed to perform multiple functions simultaneously: it encrypts the message and generates the authentication code in one operation. This multi-functionality allows the system to achieve both security and efficiency without requiring separate dedicated processes for each function.
2Reliability
If multiple encryption keys and checksum generation are used, then authentication strength is improved, but device complexity increases
Solution Approach 1:
The patent merges key management and checksum generation into the encryption process itself. Instead of requiring separate keys for encryption and authentication, or separate checksum generation steps, the system uses a unified approach where the encryption algorithm produces both the ciphertext and authentication code, simplifying the overall device architecture.
Solution Approach 2:
The encryption algorithm serves multiple purposes: it acts as both the encryption function and the authentication function. This universality eliminates the need for separate dedicated components for key management and checksum generation, thereby reducing device complexity while maintaining authentication strength.
3Measurement precision
If additional data manipulation steps are performed, then authentication accuracy is improved, but computational overhead increases
Solution Approach 1:
The patent combines data manipulation steps within the encryption process itself. The authentication code is generated as an integral part of the encryption operation, eliminating the need for separate manipulation steps after encryption. This integration maintains authentication accuracy while reducing computational overhead.
Solution Approach 2:
The system performs necessary data manipulation and authentication code generation during the encryption process itself, rather than as separate subsequent steps. This preliminary action ensures authentication accuracy is achieved without incurring additional computational overhead later in the process.
Data Source
AI summary
A device for and method of authenticated encryption by concatenating a first user-datum with a second datum, concatenating the first datum with a third datum, encrypting the results, concatenating the encrypted results, concatenating the result with a message and a fifth user-definable datum, hashing the result, concatenating the result with the message, dividing the result into blocks, concatenating the first datum with a sixth datum, generating key-stream blocks from the result using a block cipher in counter mode, combining the blocks and key-stream blocks, concatenating the result with the first datum and the fifth datum, and transmitting the result to a recipient. The recipient extracts the hash value from the received ciphertext, generates a hash value from the first through fifth datums and plaintext derived from the ciphertext, and compares the two. If they match then the plaintext and fifth datum are as the sender intended.


