Browser session storage as storage for private key in public-key encryption schema
First Claim
1. A non-transitory computer-readable memory adapted for use by a client browser to browse an encrypted web content hosted on a server;
- the computer-readable memory used to direct a computer to perform the steps of;
prompting a user of a client browser to provide a private key upon initiating a browser session;
receiving the private key in a program language data encryption library in response to a user providing the private key and storing the private key in a local storage;
after the user initiates the browser session, receiving an encrypted symmetric key from the server hosting the encrypted web content;
decrypting the encrypted symmetric key in the program language data encryption library using the private key;
receiving the encrypted web content from the server;
decrypting the encrypted web content by the program language data encryption library using the decrypted symmetric key and storing the decrypted web content to the local storage of the client browser;
presenting the decrypted web content in the client browser; and
deleting the local storage upon closing of the browser session.
2 Assignments
0 Petitions
Accused Products
Abstract
An encryption system, method, and computer software program product provides encrypted transmission of data between a server and a web browser application on a client computing device. The system includes an Internet browser; a JavaScript data encryption library; a public key encryption algorithm; a server; and a public private key pair of the user. The JavaScript library loads in user'"'"'s browser and configured with symmetric and asymmetric encryption libraries and codes. Server sends an encrypted key data to the browser/JavaScript application. The user may then provide their private key and the JavaScript library decrypts the encrypted key data and obtains a symmetric key used to encrypt the data the server transmits to the browser during a session. With the server transmitting data in encrypted form, the browser is configured to decrypt the received data using the JavaScript data encryption library and the private key of the user.
15 Citations
10 Claims
-
1. A non-transitory computer-readable memory adapted for use by a client browser to browse an encrypted web content hosted on a server;
- the computer-readable memory used to direct a computer to perform the steps of;
prompting a user of a client browser to provide a private key upon initiating a browser session; receiving the private key in a program language data encryption library in response to a user providing the private key and storing the private key in a local storage; after the user initiates the browser session, receiving an encrypted symmetric key from the server hosting the encrypted web content; decrypting the encrypted symmetric key in the program language data encryption library using the private key; receiving the encrypted web content from the server; decrypting the encrypted web content by the program language data encryption library using the decrypted symmetric key and storing the decrypted web content to the local storage of the client browser; presenting the decrypted web content in the client browser; and deleting the local storage upon closing of the browser session. - View Dependent Claims (2, 3, 4, 5)
- the computer-readable memory used to direct a computer to perform the steps of;
-
6. A computerized system to browse encrypted web content hosted on a server, the system comprising:
-
a computer having a user interface and an internet browser; and a program product comprising machine-readable program code for causing, when executed, the computer to perform the following process steps; prompting a user of a client browser to provide a private key upon initiating a browser session; receiving the private key in a program language data encryption library in response to a user providing the private key and storing the private key in a local storage; after the user initiates the browser session, receiving an encrypted symmetric key from the server hosting the encrypted web content; decrypting the encrypted symmetric key in the program language data encryption library using the private key; receiving the encrypted web content from the server; decrypting the encrypted web content by the program language data encryption library using the decrypted symmetric key and storing the decrypted web content to the local storage of the client browser; presenting the decrypted web content in the client browser; and automatically deleting the local storage upon closing of the browser session. - View Dependent Claims (7, 8, 9, 10)
-
Specification