1. A method of protecting a computer program against pointer corruption attacks, the method comprising the steps of: encrypting a value of a pointer each time the value of the pointer is modified; and decrypting the encrypted value of the pointer before use each time the pointer is read.