CPU Exception Vector Table Code Authentication
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Digital content providers face security concerns as hackers attempt to modify or introduce unauthorized software on trusted client devices, compromising encryption keys and security measures in digital content delivery systems.
Innovation Solution
A method and system that protect client devices by implementing a code authentication process, which generates and compares hash values of executable code to ensure authenticity, and initializes the CPU exception vector table to execute the code authentication process before handling exceptions, thereby preventing unauthorized code execution.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If a trusted client is used to access digital content, then security is improved, but the client can still be modified by hackers to compromise security measures
Solution Approach 1:
The system performs code authentication in advance by initializing the CPU exception vector table with pointers to authentication routines before the system operates. This preliminary configuration ensures that authentication checks are automatically performed before any code execution, preventing unauthorized code from running while maintaining security.
Solution Approach 2:
The exception vector table acts as an intermediary mechanism between the CPU and executable code. By inserting authentication routines into this vector table, the system creates an intermediate verification layer that all code must pass through, ensuring that only authenticated code can execute while blocking unauthorized modifications.
2Reliability
If code authentication is performed continuously, then security against unauthorized code is improved, but system complexity increases
Solution Approach 1:
The system makes the authentication mechanism self-servicing by configuring the exception vector table to automatically redirect exception handling to authentication routines. Once initialized, the system autonomously performs authentication checks without requiring external intervention or complex control logic, reducing overall system complexity while maintaining continuous security verification.
Data Source
AI summary
In accordance with an embodiment of the present invention, a client device is protected against the execution of unauthorized software. The client includes a code authentication process that verifies the integrity of executable code, by generating and comparing a first hash value of the executable code with a known hash value of the original code. Furthermore, during boot-up, the client initializes a CPU exception vector table with one or more vector table entries. One or more, or all, of the vector table entries direct the CPU to execute the code authentication process prior to executing an event handler when an exception event occurs. Consequently, the code authentication process is virtually guaranteed to execute, thereby protecting against the execution of unauthorized code.


