LZO Decompression with External Storage for RAM Shortages
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Firmware upgrades in embedded systems are slow due to limited processing and storage resources, and there is a need to redirect input and output to arbitrary storage when RAM is insufficient, while also performing decryption, decompression, and reencryption in parallel to mitigate security risks.
Innovation Solution
A method and system that utilize a microprocessor core to redirect input and output to nonvolatile storage, including RAM, ROM, EEPROM, Flash, and serial devices, and perform decryption and decompression in parallel to address storage shortages and security risks.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If firmware images are stored temporarily in external storage and processed sequentially, then security through encryption is maintained, but processing time and system complexity increase
Solution Approach 1:
The patent segments the processing operations into distinct parallel streams: one for decryption, one for decompression, and one for re-encryption. Each operation works on different portions of the firmware image simultaneously, reducing total processing time while maintaining security through the sequential encryption/decompression/re-encryption pipeline.
Solution Approach 2:
The patent transitions from sequential processing (one operation after another) to parallel processing (multiple operations simultaneously). By adding the time dimension and allowing operations to overlap, the system reduces processing time without compromising the security protocol.
2Productivity
If decryption, decompression, and reencryption are performed sequentially, then system complexity is reduced, but processing speed decreases
Solution Approach 1:
The patent divides the processing system into separate functional units (decryptor, decompressor, re-encryptor) that can operate independently and in parallel. This segmentation enables simultaneous execution of multiple operations, increasing processing speed while managing complexity through modular architecture.
Solution Approach 2:
The patent performs preliminary actions by preparing the firmware image for parallel processing - setting up the decryption queue, decompression buffers, and re-encryption parameters before the actual parallel processing begins. This preparation enables efficient parallel execution without increasing runtime complexity.
3Ease of manufacture
If the image is compressed and stored in plaintext temporarily, then decompression is simplified, but security is compromised during the temporary storage period
Solution Approach 1:
The patent performs preliminary encryption of the compressed firmware image before storage. The image is encrypted, then decompressed in parallel, and re-encrypted before final storage. This preliminary encryption action ensures that even if the temporary storage is accessed, the data remains secure, eliminating the security risk while maintaining decompression simplicity.
Solution Approach 2:
The patent rushes through the vulnerable plaintext state by immediately re-encrypting the decompressed image as soon as possible. The parallel processing architecture allows the re-encryption to overlap with the decompression, minimizing the time the image spends in a vulnerable state and effectively skipping the security risk period.
4Productivity
If additional storage space is allocated for input and output buffers, then processing capability is improved, but available storage space decreases
Solution Approach 1:
The patent performs preliminary allocation of storage buffers for the parallel processing operations. By pre-allocating the necessary space for decryption buffers, decompression queues, and re-encryption temporary storage, the system ensures sufficient processing capability is available without requiring additional storage space to be allocated dynamically during operation.
Data Source
AI summary
A method includes inputting a compressed image in a computing device. The method also includes identifying a shortage of random access memory during a decompression process. The method also includes performing calls to a system of memory caches to read and write input and output including the inputted compressed image by a processor. The method also includes identifying arbitrary storage to read and write the input and output by the processor. The method also includes redirecting the input and output by the processor to the identified arbitrary storage.


