Partial Block Encryption with Non-Zero Padding
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Conventional block encryption methods are weak in protecting low entropy plaintext, particularly when dealing with partial data blocks, as they fill the last block with zeros, making it vulnerable to attacks that can determine the plaintext byte by generating all possible ciphertext outputs.
Innovation Solution
Appending an intra-block length value and non-zero padding (NZP) to partial data blocks before encryption, ensuring the encryption of a full block rather than an incomplete block with zero padding, thereby reducing the effectiveness of attacks.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If conventional block encryption methods fill the last data block with zeros to complete the block, then the encryption process can handle partial blocks, but the security is weakened because the ciphertext becomes vulnerable to attacks that can determine the plaintext byte by generating all possible ciphertext outputs
Solution Approach 1:
The patent extracts the problematic zero-padding portion from the encryption process and replaces it with random padding bytes. By removing the deterministic zero-filling mechanism and substituting it with non-deterministic random data, the vulnerability to plaintext recovery attacks is eliminated while maintaining the block structure requirements of the encryption algorithm
Solution Approach 2:
The patent changes the parameter of the padding data from fixed zeros to random bytes. This parameter change transforms the padding from a predictable, deterministic value to an unpredictable, non-deterministic value, thereby preventing attackers from generating all possible ciphertext outputs to determine the plaintext
2Adaptability or versatility
If the last data block is partially filled with plaintext and completed with zeros, then the encryption can process variable-length plaintext, but the low entropy of the padded block makes it susceptible to cryptographic attacks
Solution Approach 1:
The patent applies preliminary action by generating random padding bytes before the encryption process. This pre-padding with high-entropy random data ensures that even if the plaintext block is partial, the resulting encrypted block has sufficient entropy to resist cryptographic attacks, while still allowing variable-length plaintext to be processed
Data Source
AI summary
Encrypting data blocks by receiving blocks of compressed data, determining a size, in bytes, of the compressed data, appending a trailer to the compressed data, the trailer associated with the size in bytes of the compressed data, encrypting the compressed data and trailer, yielding encrypted data, where a header of the encrypted data comprises a number of complete encrypted data blocks, and providing the encrypted data to a user.


