Techniques for Detecting Program Modifications
First Claim
1. A method comprising:
- at a computing apparatus configured to execute a software program comprising a plurality of instructions, assigning at least a first check point having a first check value and a second check point having a second check value within the instructions;
identifying at least first and second portions of the instructions such that the first portion of the instructions comprises one or more check points other than the first check point and such that the second portion of the instructions comprises one or more check points other than the second check point;
performing a first hashing operation over the first portion resulting in a first equation and performing a second hashing operation over the second portion resulting in a second equation; and
computing the first check value and the second check value based on the first equation and the second equation.
1 Assignment
0 Petitions
Accused Products
Abstract
Techniques are provided for detecting modifications to software instructions. At a computing apparatus configured to execute a software program comprising a plurality of instructions, at least a first check point having a first check value and a second check point having a second check value are assigned within the instructions. At least first and second portions of the instructions are identified. The first portion of the instructions comprises one or more check points other than the first check point. The second portion of the instructions comprises one or more check points other than the second check point. A first hashing operation is performed over the first portion resulting in a first equation and a second hashing operation is performed over the second portion resulting in a second equation. The first check value and the second check value are computed based on the first equation and the second equation.
-
Citations
23 Claims
-
1. A method comprising:
-
at a computing apparatus configured to execute a software program comprising a plurality of instructions, assigning at least a first check point having a first check value and a second check point having a second check value within the instructions; identifying at least first and second portions of the instructions such that the first portion of the instructions comprises one or more check points other than the first check point and such that the second portion of the instructions comprises one or more check points other than the second check point; performing a first hashing operation over the first portion resulting in a first equation and performing a second hashing operation over the second portion resulting in a second equation; and computing the first check value and the second check value based on the first equation and the second equation. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. One or more computer readable storage media encoded with software comprising computer executable instructions and when the software is executed operable to:
-
assign at least a first check point having a first check value and a second check point having a second check value within a plurality of instructions of a computing apparatus configured to execute a software program; identify at least first and second portions of the instructions such that the first portion of the instructions comprises one or more check points other than the first check point and such that the second portion of the instructions comprises one or more check points other than the second check point; perform a first hashing operation over the first portion resulting in a first equation and perform a second hashing operation over the second portion resulting in a second equation; and compute the first check value and the second check value based on the first equation and the second equation. - View Dependent Claims (11, 12, 13, 14, 15, 16, 17, 18)
-
-
19. An apparatus comprising:
-
a network interface unit; a memory; and a processor coupled to the network interface unit and the memory and configured to; assign at least a first check point having a first check value and a second check point having a second check value within a plurality of instructions of a software program; identify at least first and second portions of the instructions such that the first portion of the instructions comprises one or more check points other than the first check point and such that the second portion of the instructions comprises one or more check points other than the second check point; perform a first hashing operation over the first portion resulting in a first equation and perform a second hashing operation over the second portion resulting in a second equation; and compute the first check value and the second check value based on the first equation and the second equation. - View Dependent Claims (20, 21, 22, 23)
-
Specification