Computer program protection
OwnerJohn Aram Safainventor
Life of this patent
Estimating the term…
Abstract
Executable software 30B is protected by inserting an additional block of code 50, immediately after the header 30A. The block 50 is executable to analyse all or part of the structure 30 to determine whether or not any change has been made to the structure after the creation of the structure. For example, a CRC value may be checked. When the software 30B is to be executed, the security block 50 executes first, to check if any changes have been made, such as by the effect of a virus. If this is detected, a compressed copy 52 is used to replace at least the program region 30B, prior to execution being handed to the block 30B.
Claims60
A computer program structure including a program module which is executable, and protection means including a sensing module operable to analyse at least part of the program structure to determine whether or not any change has been made thereto, and a correction module operable to retrieve a further copy of the program module in the event that a change is detected, and to cause the further copy to be executed instead of the first module.
A method of executing a computer program, in which at least part of the copy of the program available for execution is analysed to determine whether or not any change has been made thereto, and in the event that a change is detected, a further copy of the program is retrieved and caused to be executed instead of the first copy.
Apparatus operable to create a computer program structure, the apparatus being operable to provide an executable program module and protection means which includes a sensing module operable to analyse at least part of the program structure to determine whether or not any change has been made thereto, and a correction module operable to retrieve a further copy of the program module in the event that a change is detected, and to cause the further copy to be executed instead of the first module.
A method of creating a computer program structure, in which an executable program module is provided and is associated with protection means which includes a sensing module operable to analyse at least part of the program module to determine whether or not any change has been made thereto, and a correction module operable to retrieve a further copy of the program module in the event that a change is detected, and to cause the further copy to be executed instead of the first module.
Dependencies are inferred from the claim text.