IP Library Granted Patent US 10,657,532
Granted Patent B2
US 10,657,532 · App. 15/640,795 · Granted May 19, 2020

Identity management service using a blockchain providing certifying transactions between devices

Inventor: Armin Ebrahimi (Palo Alto, CA)
Assignee: Ping Indentity Corporation
G06Q20/4014G06F21/31G06F21/34G06F21/64G06F21/645G06K19/06028G06K19/06037G06Q20/02G06Q20/3276G06Q20/3825G06Q20/3827H04L9/0637H04L9/0643H04L9/14H04L9/30H04L9/302H04L9/3066H04L9/3236H04L9/3239H04L9/3247H04L9/3249H04L9/3252H04L9/3268H04W12/04H04W12/06G06Q2220/00H04L2209/38H04W12/00522
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 10,657,532
App. No.
15/640,795
Granted
May 19, 2020
Kind
B2
Abstract

Logic on a first remote device receives a first transaction number and personal data transmitted from a second remote device. The first transaction number was received from a distributed public database in response to a transmission, from the second remote device, of a signed hash value and a first public key associated with a first private key on the second remote device. The signed hash value was created by signing a hash value with the first private key and the hash value was generated by hashing the personal data with a hashing algorithm on the second remote device. The logic uses the first transaction number to retrieve the signed hash value and the first public key from the distributed public database. The logic hashes the personal data using the hashing algorithm to create a generated hash value and verifies the signed hash value against the generated hash value.

Claims (51)

1. A method, comprising operations of:

obtaining, by a certifying device, a first transaction number and personal data from a user device, wherein the first transaction number was previously received from a block chain in response to a transmission from the user device of a signed hash value and a public key of a user of the user device during an initial identification of the user and association with the personal data, wherein the signed hash value was generated by signing a hash value with a private key that corresponds to the public key of the user, and wherein the hash value was generated by hashing the personal data with a hashing algorithm, wherein the user device encrypts the first transaction number and the personal data using a public key of a key pair of the certifying device into an encryption package, wherein the encryption package is delivered to the certifying device, wherein the certifying device obtains the first transaction number and personal data by decrypting the encryption package using a private key of the key pair of the certifying device;

using, by the certifying device, the first transaction number to retrieve the signed hash value and the first public key from the block chain;

hashing, by the certifying device, the personal data using the hashing algorithm to create a generated hash value;

verifying, by the certifying device, that the hash value in the retrieved signed hash value is the same as the generated hash value;

verifying, by the certifying device, that the retrieved signed hash value was signed with the first private key; and

creating, by the certifying device, a certification that certifies the personal data of the user.

2. The method of claim 1 , further comprising:

signing, by the certifying device, the certification with a private key of the certifying device to create a signed certification record; and

transmitting, by the certifying device, the signed certification record over a network to the block chain for storage.

3. The method of claim 2 , wherein the certifying device transmits the signed certification record to the block chain with assistance of an identity management server.

4. The method of claim 1 ,

wherein the first transaction number was previously received with assistance of an identity management server, and

wherein the certifying device retrieves the signed hash value and the first public key from the block chain with assistance of the identity management server.

5. The method of claim 1 , further comprising:

receiving from the block chain at the certifying device a second transaction number in response to the transmission of the signed certification record to the block chain.

6. The method of claim 1 , wherein the obtaining of the personal data is performed by one or more of a digital camera, a scanner, a portable device, a keyboard, a touchscreen, voice recognition, and handwriting recognition.

7. The method of claim 6 , wherein at least a part of the personal data is captured using a barcode or QR code that includes the encryption package.

8. The method of claim 1 , wherein the user device comprises one of a smartphone, tablet, and an electronic device.

9. The method of claim 1 , wherein the certifying device comprises one of an electronic device, a computer, a portable device, or a kiosk, and is operated by a vendor or entity desiring to verify the identity of the user, wherein the vendor or entity is one of a government agency, a department of motor vehicles, an immigration agency, a financial institution, an airline, a transportation service, or a private commercial entity.

10. The method of claim 1 , wherein the block chain receives data for storage form a plurality of entities, the data received for storage is configured to be processed to generate a corresponding transaction record that is dependent on previous data stored to the block chain, wherein the corresponding transaction record being dependent on previous data stored to the block chain ensures that data stored to the block chin is not modifiable, as later data stored to the block chain continues to be dependent on previous data stored to the block chain.

11. A computer system comprising:

a processor; and

memory coupled to the processor and having stored therein instructions that, if executed by the computer system, cause the computer system to execute a method comprising:

obtaining, by a certifying device, a first transaction number and personal data from a user device, wherein the first transaction number was previously received from a block chain in response to a transmission from the user device of a signed hash value and a public key of a user of the user device during an initial identification of the user and association with the personal data, wherein the signed hash value was generated by signing a hash value with a private key that corresponds to the public key of the user, and wherein the hash value was generated by hashing the personal data with a hashing algorithm, wherein the user device encrypts the first transaction number and the personal data using a public key of a key pair of the certifying device into an encryption package, wherein the encryption package is delivered to the certifying device, wherein the certifying device obtains the first transaction number and personal data by decrypting the encryption package using a private key of the key pair of the certifying device;

using, by the certifying device, the first transaction number to retrieve the signed hash value and the first public key from the block chain;

hashing, by the certifying device, the personal data using the hashing algorithm to create a generated hash value;

verifying, by the certifying device, that the hash value in the retrieved signed hash value is the same as the generated hash value;

verifying, by the certifying device, that the retrieved signed hash value was signed with the first private key; and

creating, by the certifying device, a certification that certifies the personal data of the user.

12. The computer system of claim 11 , wherein the method further comprises:

signing, by the certifying device, the certification with a private key of the certifying device to create a signed certification record; and

transmitting, by the certifying device, the signed certification record over a network to the block chain for storage.

13. The computer system of claim 12 , wherein in the method the certifying device transmits the signed certification record to the block chain with assistance of an identity management server.

14. The computer system of claim 1 ,

wherein in the method the first transaction number was previously received with assistance of an identity management server, and

wherein in the method the certifying device retrieves the signed hash value and the first public key from the block chain with assistance of the identity management server.

15. The computer system of claim 11 , wherein the method further comprises:

receiving from the block chain at the certifying device a second transaction number in response to the transmission of the signed certification record to the block chain.

16. The computer system of claim 11 , wherein the obtaining of the personal data in the method is performed by one or more of a digital camera, a scanner, a portable device, a keyboard, a touchscreen, voice recognition, and handwriting recognition.

17. The computer system of claim 16 , wherein in the method at least a part of the personal data is captured using a barcode or QR code that includes the encryption package.

18. The computer system of claim 11 , wherein in the method the user device comprises one of a smartphone, tablet, and an electronic device.

19. The computer system of claim 11 , wherein in the method the certifying device comprises one of an electronic device, a computer, a portable device, or a kiosk, and is operated by a vendor or entity desiring to verify the identity of the user, wherein the vendor or entity is one of a government agency, a department of motor vehicles, an immigration agency, a financial institution, an airline, a transportation service, or a private commercial entity.

20. The computer system of claim 11 , wherein in the method the block chain receives data for storage form a plurality of entities, the data received for storage is configured to be processed to generate a corresponding transaction record that is dependent on previous data stored to the block chain, wherein the corresponding transaction record being dependent on previous data stored to the block chain ensures that data stored to the block chin is not modifiable, as later data stored to the block chain continues to be dependent on previous data stored to the block chain.

21. A non-transitory computer-readable medium storing a computer program for implementing a method, the computer-readable medium comprising:

program instructions for obtaining, by a certifying device, a first transaction number and personal data from a user device, wherein the first transaction number was previously received from a block chain in response to a transmission from the user device of a signed hash value and a public key of a user of the user device during an initial identification of the user and association with the personal data, wherein the signed hash value was generated by signing a hash value with a private key that corresponds to the public key of the user, and wherein the hash value was generated by hashing the personal data with a hashing algorithm, wherein the user device encrypts the first transaction number and the personal data using a public key of a key pair of the certifying device into an encryption package, wherein the encryption package is delivered to the certifying device, wherein the certifying device obtains the first transaction number and personal data by decrypting the encryption package using a private key of the key pair of the certifying device;

program instructions for using, by the certifying device, the first transaction number to retrieve the signed hash value and the first public key from the block chain;

program instructions for hashing, by the certifying device, the personal data using the hashing algorithm to create a generated hash value;

program instructions for verifying, by the certifying device, that the hash value in the retrieved signed hash value is the same as the generated hash value;

program instructions for verifying, by the certifying device, that the retrieved signed hash value was signed with the first private key; and

program instructions for creating, by the certifying device, a certification that certifies the personal data of the user.

Assignments (10)
RELEASE OF SECURITY INTEREST AT R/F 61703/0988 Recorded Nov 14, 2025
From: BLUE OWL CAPITAL CORPORATION
To: PING IDENTITY CORPORATION
Reel/Frame 073570/0777 →
SECURITY INTEREST Recorded Nov 13, 2025
From: PING IDENTITY CORPORATION; PING IDENTITY INTERNATIONAL, INC.
To: JPMORGAN CHASE BANK, N.A.
Reel/Frame 073557/0093 →
RELEASE OF SECURITY INTEREST Recorded Oct 19, 2022
From: BANK OF AMERICA, N.A.
To: PING IDENTITY CORPORATION
Reel/Frame 061709/0527 →
GRANT OF SECURITY INTEREST IN PATENT RIGHTS Recorded Oct 18, 2022
From: PING IDENTITY CORPORATION
To: OWL ROCK CAPITAL CORPORATION, AS COLLATERAL AGENT
Reel/Frame 061703/0988 →
SECURITY INTEREST Recorded Nov 23, 2021
From: PING IDENTITY CORPORATION
To: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
Reel/Frame 058944/0687 →
RELEASE OF SECURITY INTEREST Recorded Nov 23, 2021
From: BANK OF AMERICA, N.A., AS ADMINISTRATIVE AGENT
To: SHOCARD, LLC
Reel/Frame 058195/0683 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 23, 2020
From: EBRAHIMI, ARMIN
To: SHOCARD, INC.
Reel/Frame 053010/0375 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 10, 2020
From: SHOCARD, LLC
To: PING IDENTITY CORPORATION
Reel/Frame 052889/0793 →
CHANGE OF NAME Recorded Apr 17, 2020
From: SHOCARD, INC.
To: SHOCARD, LLC
Reel/Frame 052435/0009 →
PATENT SECURITY AGREEMENT Recorded Apr 1, 2020
From: SHOCARD, LLC
To: BANK OF AMERICA, N.A., AS ADMINISTRATIVE AGENT
Reel/Frame 052291/0082 →
Continuity (4)
Continuation 15146881 · May 4, 2016
Provisional Application 62157256 · May 5, 2015
Provisional Application 62304934 · Mar 7, 2016
Related Publication 20170302450A1 · Oct 19, 2017
Cited By (1)
US 12,518,278