Patent ID: 7549174

Claim:
A system comprising: a processor, wherein the processor is configured to execute an application arranged to request a key, wherein the application is one of a plurality of applications; a storage device; and a keystore stored on the storage device and configured to provide the key, wherein the keystore comprises: a non-application specific directory configured to store non-application keys and non-application certificates, wherein each of the non-application keys and each of the non-application certificates are associated with at least two applications of the plurality of applications; and an application-specific subdirectory configured to store application keys and application certificates, wherein the application-specific subdirectory is a subdirectory of the non-application specific directory, and wherein each of the application keys and each of the application certificates are specific to the application, wherein the non-application specific directory comprises a secure key area and a non-secure key area, wherein the application-specific subdirectory comprises a secure key area and a non-secure key area, and wherein the keystore is configured to query the secure area of the application-specific subdirectory for the key and then query the non-secure area of the application-specific subdirectory for the key, if the key is not found in the secure area of the application-specific subdirectory.