Patent ID: 7853803

Claim:
A method comprising: securing a program counter of a computer by performing the following for each process to be executed by said computer: producing a process address for a process located in a memory of said computer, said process, address being associated With an address of an instruction to be executed by said computer and designed to be loaded in a program counter of said computer; generating a nonce value, wherein said nonce value is a random nonzero value; encrypting said process address in conjunction with said nonce value before storing said process address in a call stack of said computer, thereby producing an encrypted address; storing said encrypted address in said call stack of said computer; retrieving said encrypted address from said call stack of said computer; decrypting said encrypted address to reproduce said process address and said nonce value; determining whether said nonce value is valid; and placing said process address in said program counter of said computer when said nonce value is valid.