Patent ID: 8630418

Claim:
A data processing system for managing keys securely stored in a data processing system memory, the data processing system comprising: a processor; and a memory storing program instructions which when executed by the processor execute the steps of: receiving by the processor a request to store a first key to a first key repository located in non-volatile memory, the first key repository including a first main key repository for securely storing keys; utilizing the processor for storing the first key to a second key repository located in volatile memory in response to the request, the second key repository including a second main key repository for storing keys and a second shadow key repository for storing incremental updates to the second main key repository, wherein the first key is stored to the second shadow key repository; and utilizing the processor for securely storing the first key from the second key repository to the first key repository within said data processing memory based on a predetermined periodicity; wherein the keys are used for cryptographic operations.