Encrypted Browser Session Storage via Indexed Database

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Web applications do not enable secure persistent storage of data at client devices, leading to inefficiencies as multiple data requests are needed across browser tabs and page refreshes, impacting both the client device and web server performance.

Innovation Solution

Implementing a system that uses an indexed database for structured persistent storage and web cryptography to encrypt and decrypt session data, generating cryptographic keys based on session identifiers, and storing them in ephemeral memory for secure access across browser sessions.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If customer data is stored in a data center for security, then data security is improved, but data access efficiency deteriorates due to multiple requests needed across browser tabs and page refreshes

Engineering Contradiction:
Improvedata securityVSAvoiddata access efficiency
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent segments data storage into two parts: sensitive customer data remains encrypted in the data center, while non-sensitive session data is cached locally in the browser. This segmentation allows frequent access to session data without compromising security, as the local cache contains only encrypted copies that cannot be decrypted without the private key remaining secure in the data center.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system performs preliminary action by encrypting and caching session data in the browser before it is needed for subsequent operations. The data is prepared in advance and stored locally, so when page refreshes or tab changes occur, the data is already available without requiring new requests to the data center.

Inventive Principle:
Principle #10Preliminary action

2Productivity

If data is cached locally in the browser, then data access efficiency is improved, but data security deteriorates due to potential unauthorized access at client devices

Engineering Contradiction:
Improvedata access efficiencyVSAvoiddata security
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The patent applies local quality by encrypting data with different keys for different locations. Session data cached in the browser is encrypted with a public key, making it unreadable without the corresponding private key that remains secure in the data center. This allows the data to have different security properties in different locations - accessible in the browser but secure against unauthorized access.

Inventive Principle:
Principle #3Local quality

Solution Approach 2:

Instead of storing the actual sensitive data locally, the system creates an encrypted copy using the public key. This copy can be stored and accessed freely in the browser, but it is useless without the private key for decryption. The original sensitive data remains only in the secure data center environment.

Inventive Principle:
Principle #26Copying

3Reliability

If cryptographic keys are stored in ephemeral memory for secure access, then security is improved, but key management complexity increases across browser sessions

Engineering Contradiction:
ImprovesecurityVSAvoidkey management complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The system implements dynamic key management where cryptographic keys are created temporarily in ephemeral memory for each browser session, used to encrypt/decrypt data, and then automatically discarded when the session ends. This dynamic approach ensures that no persistent keys are stored on disk, reducing security risks while managing complexity through automated session-based lifecycle management.

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS11038863B2Facilitating encrypted persistent storage in browsers
Publication Date: 2021.06.15 SALESFORCE INC
  • US11038863B2 patent drawing
  • US11038863B2 patent drawing
  • US11038863B2 patent drawing

AI summary

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.