Boot Loader File Verification via Hash Comparison
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
During the boot process of a computing system, malicious files or modules can be loaded before the operating system is fully initialized, leading to potential malware infections, system failures, and security breaches, as existing verification methods are ineffective in detecting corrupted files prior to full system loading.
Innovation Solution
A loader is implemented to identify and verify files during the boot process by calculating hashes and comparing them with fingerprints stored in a library, ensuring that only verified files are loaded, thereby preventing malware and ensuring system integrity.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If verification is performed during the boot process, then system security is improved, but boot time increases
Solution Approach 1:
The patent performs file verification during the boot process itself, specifically when the loader is loading operating system files. The verification includes checking digital signatures and comparing file hashes against known good values before the files are fully loaded into memory, rather than verifying after boot completion. This preliminary verification approach catches malicious files early while minimizing impact on overall boot time.
Solution Approach 2:
The patent introduces a verification mechanism that acts as an intermediary between the loader and the operating system files. The loader identifies files to be loaded, retrieves their expected hash values from a database, calculates actual hashes, and compares them. This intermediary verification layer ensures security without requiring complete boot process interruption or additional post-boot verification steps.
2Measurement precision
If comprehensive file verification is performed, then detection precision is improved, but device complexity increases
Solution Approach 1:
The patent segments the file verification process into distinct modular steps: (1) The loader identifies files to be loaded during boot, (2) For each file, the loader retrieves the expected hash value from a database, (3) The loader calculates the actual hash of the file, (4) The loader compares the calculated hash with the expected hash, and (5) The loader either loads or rejects the file based on verification results. This segmentation makes the complex verification process manageable and implementable within the existing loader architecture.
Solution Approach 2:
The patent uses hash values as simplified copies or representations of the actual files for verification purposes. Instead of performing complex analysis of entire operating system files, the system calculates and compares hash values (digital fingerprints) that uniquely represent each file. This copying approach maintains high detection precision while significantly reducing the computational complexity and resource requirements of the verification mechanism.
Data Source
AI summary
An example device includes one or more memories; and one or more processors, communicatively coupled to the one or more memories, to, during a loading process of a boot process of an operating system, identify a file to be loaded for the operating system, where the operating system is being loaded during the boot process; identify a manifest of the file; verify the manifest of the file based on a supplied signature of the manifest; identify a fingerprint, associated with the file, in a fingerprint library; calculate a hash of the file; compare the hash of the file and the fingerprint; and verify the file based on the hash of the file matching the fingerprint associated with the file.


