IP Library Granted Patent US 9,292,674
Granted Patent B2
US 9,292,674 · App. 13/896,633 · Granted Mar 22, 2016

Password encryption key

Inventor: Daniil Utin (Needham, MA)
Assignee: Cambridge Interactive Development Corp.
G06F21/31G06F21/62G06F21/6245H04L9/0863H04L9/0894H04L9/3226H04L2209/56
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 9,292,674
App. No.
13/896,633
Granted
Mar 22, 2016
Kind
B2
Abstract

A password-encrypted key (PEK) is generated from a user-supplied password or other identifying data and then used to encrypt the user's password. The encrypted password is stored in a user record on a server. At login a would-be user's password is again used to make a key, which is then used to decrypt and compare the stored encrypted password with the would-be user's password to complete the login. The successful PEK is stored in a temporary session record and can be used to decrypt other sensitive user information previously encrypted and stored in the user record as well as to encrypt new information for storage in the user record. A public/private key system can also be used to maintain limited access for the host to certain information in the user record.

Claims (31)

1. A computer-implemented method, comprising:

upon receiving, at a server, data from a computing device that represents a user login password, generating a key from the would-be user's password by calculating a checksum;

retrieving a corresponding user record;

decrypting an encrypted password in the user record using the key, the encrypted password being encrypted by using an unencrypted password previously provided by the user and a previously generated key, wherein the previously generated key is generated from the previously provided unencrypted password;

comparing the decrypted password and the user login password to determine if they match; and

if the decrypted password and user login password match, creating a temporary session record and storing the key in the session record, otherwise aborting the user login, the stored key being usable to decrypt other encrypted information stored in the user record during a session.

2. The computer-implemented method of claim 1 , further comprising:

generating a public/private key pair,

storing the public key on an application server and the mating private key only on another server,

encrypting the previously provided unencrypted password with the public key and storing the public-key encrypted password on the application server, and

fetching the private key from the other server and using it to decrypt selected information on the application server.

3. The computer-implemented method of claim 2 , wherein the other server is a secure offsite server.

4. A computer-executable program residing on a server, the execution of the program causing the server to:

upon receiving, at the server, data from a computing device that represents a user login password, generating a key from the would-be user's password by calculating a checksum;

retrieving a corresponding user record;

decrypting an encrypted password in the user record using the key, the encrypted password being encrypted by using an unencrypted password previously provided by the user and a previously generated key, wherein the previously generated key is generated from the previously provided unencrypted password;

comparing the decrypted password with the user login password to determine if they match; and

if the decrypted password and user login password match, creating a temporary session record and storing the key in the session record, otherwise aborting the user login, the stored key being usable to decrypt other encrypted information stored in the user record during a session.

5. A computing device comprising:

a memory configured to store instructions; and

a processor configured to execute instructions to perform operations comprising:

upon receiving data from a computing device that represents a user login password, generating a key from the would-be user's password by calculating a checksum;

retrieving a corresponding user record;

decrypting an encrypted password in the user record using the key, the encrypted password being encrypted by using an unencrypted password previously provided by the user and a previously generated key, wherein the previously generated key is generated from the previously-supplied unencrypted password;

comparing the decrypted password with the user login password to see if they match; and

if the decrypted password and user login password match, creating a temporary session record and storing the key in the session record, otherwise aborting the user login, the stored key being usable to decrypt other encrypted information stored in the user record during a session.

6. The computing device of claim 5 , wherein the processor is configured to execute instructions to perform operations comprising:

encrypting sensitive user data using the previously generated key;

storing the encrypted sensitive user data in the user record;

using the key to decrypt the stored encrypted sensitive user data; and

storing the decrypted sensitive user data in the temporary user session record.

Assignments (3)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 24, 2016
From: CAMBRIDGE INTERACTIVE DEVELOPMENT CORP.
To: MANGAS GAMING MALTA LIMITED
Reel/Frame 037812/0308 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 17, 2013
From: UTIN, DANIIL
To: GRAND VIRTUAL, INC.
Reel/Frame 030814/0560 →
CHANGE OF NAME Recorded Jul 17, 2013
From: GRAND VIRTUAL, INC.
To: CAMBRIDGE INTERACTIVE DEVELOPMENT CORP.
Reel/Frame 030816/0175 →
Continuity (3)
Continuation 10532541
Provisional Application 60421284 · Oct 25, 2002
Related Publication 20130326228A1 · Dec 5, 2013