摘要 |
A computer program 30 is protected by providing an executable computer structure that comprises a copy of the computer program along with a sensing module 50 and a correction module 52. The sensing module is operable to analyse at least part of the program structure to determine whether or not any change has been made thereto. In the event that a change is not detected, the computer program is executed. Otherwise, the correction module retrieves a further copy 52 of the computer program and causes the further copy of the computer program to be executed instead. This provides protection against changes made to the program by viruses, hackers or malicious activity. The sensing module may analyse parameters such as size data, locations of data or entry points of the program or checksums such as cyclic redundancy check (CRC) values. The sensing module and/or correction module may be wholly or partly contained at empty locations 32 within the computer program. In summary this arrangement provides a self-verifying and self-repairing computer program with protection against virus infection.
|