Patent ID: 8490191

Claim:
Method for protecting computer software by detecting an attack of an intruding program interfering with the execution of said protected software on a computer system with a processor and at least a processor memory, the processor executing the protected software, wherein the protected software comprises a code section containing executable code of an application program and a security section containing a security engine, the protected software further including in the code section or security section bait code that is executed only in case of an intruding program uses a monitoring component to gain unauthorized access to the protected software, wherein the protected software communicates with a license container containing a license for using and executing the protected computer software and containing at least one cryptographic key for decrypting the protected software, wherein the license container provides at least one license and the at least one cryptographic key for use by the protected software to protect its usage and its integrity, the at least one license comprising one or more license parameters selected from a group consisting of number of licensed uses, condition of use, time period of use, and number of users for the protected software, and wherein at least a portion of the protected computer software is encrypted and the security engine uses the at least one cryptographic key to decrypt the at least one portion of the protected software for executing, the method comprising: during execution of the protected software, searching for patterns of an intrusion into the protected software; detecting with the security engine an intrusion by an intruding program into the protected software during the execution of the protected software, wherein the intruding program uses a monitoring component for gaining unauthorized access and detecting with the security engine comprises detecting execution of the bait code; and creating a signal on detection of an attack.