Segmented File Authentication for Parallel Processing
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
The authentication of large software files, such as image files for electronic gaming machines, is time-consuming and processor-intensive due to the serial nature of hashing algorithms used, which delays the boot-up process.
Innovation Solution
Divide the image file into multiple segments, allowing for parallel authentication using multiple CPU cores, and differentiate between repetitive and non-repetitive segments to reduce processing intensity, with repetitive segments using byte-by-byte comparison instead of hashing.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If the entire image file is hashed using a serial hashing algorithm, then authentication accuracy is ensured, but authentication time and processor intensity increase significantly
Solution Approach 1:
The image file is divided into multiple segments (e.g., 16 segments) that can be processed in parallel. Each segment is hashed separately using multiple CPU cores, and the segment hashes are then combined through a reduction operation to produce the final authentication result. This segmentation enables parallel processing while maintaining authentication accuracy.
Solution Approach 2:
The hashes of individual segments are merged through a reduction operation (combining multiple hash values) to produce a single final hash value for authentication. This merging process ensures that the parallel processing of segments still results in a reliable authentication outcome equivalent to hashing the entire file serially.
2Reliability
If the entire image file is hashed using a serial hashing algorithm, then authentication completeness is ensured, but CPU cycle consumption increases
Solution Approach 1:
The image file is divided into multiple segments that can be processed simultaneously by multiple CPU cores. Each core computes the hash of its assigned segment independently, significantly reducing total CPU cycle consumption compared to serial processing while ensuring complete authentication through the combination of all segment hashes.
Solution Approach 2:
Instead of hashing the entire file through a single serial process, the system performs partial hashing on segments in parallel. The reduction operation then combines these partial results to achieve complete authentication, effectively distributing the computational load across multiple cores.
3Reliability
If all image file segments are processed using hashing, then authentication thoroughness is maintained, but processing intensity remains high
Solution Approach 1:
The image file is segmented into multiple parts that can be processed in parallel. This segmentation reduces the processing intensity on any single core while maintaining thorough authentication through the combination of all segment hashes via the reduction operation.
Solution Approach 2:
The authentication process transitions from a single-dimensional serial processing model to a multi-dimensional parallel processing model. Multiple CPU cores operate simultaneously on different segments, changing the computational dimension from sequential to parallel execution, thereby reducing overall processing intensity.
Data Source
AI summary
Provided are servers and methods for authenticating software files. A server includes a processor circuit and a memory coupled to the processor circuit. The memory includes computer program instructions that, when executed by the processor circuit, cause the authentication server to perform operations including verifying, using a public key, signature data corresponding to a single certificate file for authenticating a software installation package file that was signed using a private source key. Operations may include, responsive to verifying that the signature data matches an originally signed single certificate file, reading an image file segment table from the software installation package file. The image file segment table includes multiple records that correspond to ones of multiple image file segments of the software installation package file.


