Facilitating encrypted persistent storage in browsers
Assigneesalesforce.com, inc.
InventorsKevin Venkiteswaran, Sergey Gorbaty, Bob Yao, Trevor James Bliss
Life of this patent
Estimating the term…
Abstract
Disclosed are some implementations of systems, apparatus, methods and computer program products for encrypting and securely storing session data during a browser session using a session-based cryptographic key. The session data may be decrypted during the browser session or other browser sessions using the session-based cryptographic key or other backwards compatible session-based cryptographic keys. In addition, session-based cryptographic keys may be shared among browser sessions to enable encrypted session data to be decrypted across page refreshes and browser tabs.
Claims20
A computing device comprising:
- a memory;
- and
- a processor capable of:
- during a first browser session of a web browser situated at the computing device, obtaining a first cryptographic key, the first browser session being associated with a session identifier (ID);
- during the first browser session of the web browser, obtaining session data;
- applying the first cryptographic key to the session data to generate encrypted session data;
- storing the encrypted session data in the memory;
- during a second browser session of the web browser, transmitting a cryptographic key request to a server, the second browser session being associated with the session ID;
- responsive to the cryptographic key request, receiving a second cryptographic key from the server;
- retrieving the encrypted session data from the memory;
- and
- decrypting the encrypted session data using the second cryptographic key.
A computer program product comprising computer-readable program code capable of being executed by one or more processors when retrieved from a non-transitory computer-readable medium, the program code comprising instructions configurable to cause:
- during a first browser session of a web browser situated at a computing device, obtaining a first cryptographic key, the first browser session being associated with a session identifier (ID);
- during the first browser session of the web browser, obtaining session data;
- applying the first cryptographic key to the session data to generate encrypted session data;
- storing the encrypted session data in a memory of the computing device;
- during a second browser session of the web browser, transmitting a cryptographic key request to a server, the second browser session being associated with the session ID;
- responsive to the cryptographic key request, receiving a second cryptographic key from the server;
- retrieving the encrypted session data from the memory;
- and
- decrypting the encrypted session data using the second cryptographic key.
A method, comprising:
- during a first browser session of a web browser situated at a computing device, obtaining a first cryptographic key, the first browser session being associated with a session identifier (ID);
- during the first browser session of the web browser, obtaining session data;
- applying the first cryptographic key to the session data to generate encrypted session data;
- storing the encrypted session data in a memory of the computing device;
- during a second browser session of the web browser, transmitting a cryptographic key request to a server, the second browser session being associated with the session ID;
- responsive to the cryptographic key request, receiving a second cryptographic key from the server;
- retrieving the encrypted session data from the memory;
- and
- decrypting the encrypted session data using the second cryptographic key.
Dependencies are inferred from the claim text.