Patent ID: 9385996
Filing Date: 2016-07-05
CPC Classification: G06F,H04L

Claim Text:
1. A method of operating a computing device, the method comprising: storing data on the computing device in an encrypted form using a control application running on the computing device; receiving a request to access the data using a data access application running on the computing device; determining on the computing device that the data access application does not have available any shared key that is privately shared between the data access application and the control application; responsive the determination that the data access application does not have available any shared key that is privately shared between the data access application and the control application, the data access application negotiating a shared key with the control application by the data access application sending a first message to the control application, the control application sending a second message to the data access application, and the data access application and control application each deriving the shared key based at least in part on the first message and the second message, respectively, using the shared key to encrypt the request for access to the data and sending the encrypted request from the data access application to the control application; and the control application receiving the encrypted request, decrypting the encrypted request using the shared key, and making the data stored on the computing device in encrypted form available to the data access application in response to the decrypted request, wherein negotiating the shared key with the control application comprises the control application providing a first public key of a first public/private key pair to the data access application and the data access application providing a second public key of a second public/private key pair to the control application, and wherein the control application and the data access application use their respective private keys to digitally sign messages sent to each other.