1. A computer readable medium storing instructions: that, if executed, enable a computer to: at run-time verify the correctness of an entity that has an execution path leading through one or more software components that need to be protected; determine where the entity calls the next component in the path; read a memory address leading to the next software component; and examine the next software component and determine if the next software component is the expected and correct software component.