Multiband Encryption Engine Self-Testing Pipeline
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Conventional encryption self-testing in data storage systems is resource-intensive, causing unwanted delays and latency, especially in resource-constrained environments like ASICs and FPGAs, and does not achieve full bandwidth due to resource sharing and complexity.
Innovation Solution
A multiband encryption engine with a self-testing method that inserts test vectors into data streams, encrypts, decrypts, and compares them to ensure data integrity without requiring additional resources, using a pipeline architecture to maintain high clock rates and minimize latency.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If conventional encryption self-testing is performed, then data integrity is verified, but resource consumption increases and causes delays and latency
Solution Approach 1:
The patent inserts test vectors into the data stream before encryption occurs, allowing the encryption engine to process these known test patterns through the complete encryption and decryption cycle. This preliminary inclusion of test data enables verification without requiring separate testing operations that would add latency to actual data processing.
Solution Approach 2:
The encryption engine performs self-testing by processing test vectors that are interspersed with actual data blocks. The engine independently verifies its own operation by comparing decrypted test vectors against expected values, eliminating the need for external testing resources and reducing overhead.
2Speed
If multiple encryption and decryption hardware engines are used to reduce latency, then processing speed improves, but device complexity increases
Solution Approach 1:
The patent implements a pipeline architecture where multiple encryption and decryption operations occur simultaneously in different stages. While one block is being encrypted, another is being decrypted, and a third is being processed, maintaining continuous throughput without requiring multiple complete engine sets. This pipelining achieves high speed with a single multi-functional engine rather than multiple separate engines.
3Adaptability or versatility
If encryption/decryption is handled in software layers instead of hardware, then flexibility improves, but processing speed and bandwidth utilization deteriorate
Solution Approach 1:
The encryption engine is divided into distinct functional blocks or stages that can be independently configured and processed. Each stage handles a specific aspect of the encryption/decryption process, allowing the system to be implemented in hardware with high speed while maintaining the flexibility of modular design. This segmentation enables hardware acceleration without sacrificing adaptability.
Data Source
AI summary
In one embodiment, a system includes a processor and logic integrated with and/or executable by the processor, the logic being configured to cause the processor to receive a data stream including data for encryption, insert one or more test vectors between individual blocks of data of the data stream, encrypt the blocks of data including the one or more test vectors to produce an encrypted data stream including one or more encrypted test vectors, decrypt the encrypted data stream including the one or more encrypted test vectors, compare each decrypted test vector with a corresponding inserted test vector, and report results of the comparison. Other systems, methods, and computer program products for self testing an encryption/decryption cycle are described according to more embodiments.


