Software self-checking systems and methods
AssigneeIntertrust Technologies Corporation
InventorsWilliam G. Horne, Lesley R. Matheson, Casey Sheehan, Robert E. Tarjan
Life of this patent
Estimating the term…
Abstract
Software self-checking mechanisms are described for improving software tamper resistance and/or reliability. Redundant tests are performed to detect modifications to a program while it is running. Modifications are recorded or reported. Embodiments of the software self-checking mechanisms can be implemented such that they are relatively stealthy and robust, and so that it they are compatible with copy-specific static watermarking and other tamper-resistance techniques.
Claims14
A method of creating a tamper-resistant software program on a non-transitory computer-readable medium, the method comprising:
- including a plurality of self-checking code sequences in the source code of the program, each self-checking code sequence being configured to calculate a function of a portion of the program;
- including in the program one or more code sequences configured to trigger a tamper response mechanism when an improper modification of the program is detected by at least one of the plurality of self-checking code sequences;
- and
- writing the program onto a non-transitory computer readable medium.
A self-checking program stored on a non-transitory computer-readable medium, the self-checking program comprising:
- a plurality of self-checking code sequences, each self-checking code sequence being configured to calculate a function of a portion of the program;
- and
- one or more code sequences configured to trigger a tamper response mechanism when an improper modification of the program is detected by at least one of the plurality of self-checking code sequences.
Dependencies are inferred from the claim text.