Patent ID: 8762736

Claim:
A computer-implemented method in which a computer system performs operations comprising: identifying a program to be converted to a new program having a predetermined lifetime; and compiling, by said computer system in communication with a secure hardware device wherein said secure hardware device comprises a One-Time Memory (OTM), said OTM initialized with two keys k 0 and k 1 and a tamper proof bit set to a value of zero, wherein said OTM receives an input bit b, verifies said tamper proof bit is zero, sets said tamper proof bit to a 1, and outputs a key k b based on said two keys and said input bit, said program to produce said new program having a predetermined lifetime and wherein said new program having a predetermined lifetime is guaranteed to only have the predetermined lifetime and wherein said predetermined lifetime comprises a predetermined number of uses and wherein said program is executed at most k times, wherein k is equal to or greater than one, wherein said secure hardware device stores security data and wherein execution of said program having a predetermined lifetime requires use of at least a portion of said security data.