Patent ID: 6963978

Claim:
A method for detecting viruses in software, comprising: (a) comparing subject data with a plurality of virus definitions in a first database; (b) executing a security event if the subject data is successfully compared with at least one of the virus definitions; (c) comparing the subject data with fingerprints of innocent data in a second database; (d) allowing access to the subject data if the subject data is successfully compared to the fingerprints of innocent data; (e) transmitting information to a server for analysis purposes if the subject data is unsuccessfully compared to the virus definitions and the fingerprints of innocent data, wherein the information transmitted to the server includes a fingerprint associated with the subject data; (f) comparing the fingerprint associated with the subject data and fingerprints associated with innocent data in a third database at the server; (g) comparing the fingerprint associated with the subject data and fingerprints associated with virus definitions in a fourth database at the server; and (h) transmitting the subject data to the server utilizing a network upon an unsuccessful comparison of the fingerprint associated with the subject data and fingerprints associated with the innocent data in the third database and the virus definitions in the fourth database at the server; wherein the analysis utilizes a virus detection algorithm to detect whether the subject data is malicious or innocent.