Patent ID: 8468365

Claim:
A method comprising: dividing, by a processor, a memory separate from the processor into a plurality of logical partitions, each for storing one of a plurality of blocks of data associated with an application; allocating a plurality of counters in the processor, each for one of the logical partitions, wherein each of the counters stores a timestamp value associated with its allocated one of the logical partitions, the timestamp value being incremented autonomously in the processor whenever data is written into or read from its allocated logical partition; encrypting, by the processor, a first block of data associated with the application and to be stored in a first logical partition of the logical partitions, the first block of data being encrypted using a tweak that includes a cache line identifier of the memory, a position in the identified cache line of the first block of data to be encrypted, and the timestamp value of the allocated counter of the first logical partition; and storing the encrypted block of data in the first logical partition.