IP Library Granted Patent US 10,007,826
Granted Patent B2
US 10,007,826 · App. 15/208,580 · Granted Jun 26, 2018

Transferring data files using a series of visual codes

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,007,826
App. No.
15/208,580
Granted
Jun 26, 2018
Kind
B2
Abstract

Software on an image-capturing device iteratively captures a visual code in a series of visual codes displayed in a repeating progression on a screen of a mobile device. The visual code was generated from a display block that resulted from a partition of an original data file into a series of display blocks of at least a specified size. The software converts the visual code back into a display block and reads a header for the display block, discarding the display block if it has already been captured, as determined by the ordered identifying block number in a header. The software stops the iterative capturing when all of the display blocks in the series have been captured, as determined by the count in the header and coalesces the captured display blocks into the original data file, using an order determined by the ordered identifying block numbers.

Claims (45)

1. A method, comprising operations of:

iteratively capturing visual codes in a series of visual codes displayed in a repeating progression on a screen of a mobile device, wherein a corresponding captured visual code was generated from a display block that resulted from a partition of an original data file and a copy of a certification of the original data file created by a certifying entity into a series of display blocks of at least a specified size and wherein each display block is converted to a corresponding string and corresponding header that includes an ordered identifying block number and a count of the display blocks in the series, wherein each corresponding string is converted to a corresponding visual code;

converting the corresponding captured visual code into a corresponding string and reading a header for the corresponding string;

discarding the corresponding string if it has already been captured, as determined by the ordered identifying block number in the header;

removing the header of the corresponding string and recording the ordered identifying block number and converting the corresponding string to a corresponding display block, if the corresponding string has not been discarded;

stopping the iterative capturing when all of the display blocks in the series have been captured, as determined by the count in the header;

coalescing the captured display blocks into the original data file and the copy of the certification, using an order determined by the ordered identifying block numbers;

verifying the integrity of the original data file using a seal that is accessed from a block chain database storing the seal, the seal generated based on the contents of the original data file; and

verifying the validity of the original data file using a retrieved certification accessed from the block chain database storing the certification, a rehash of the original data file and seal, the copy of the certification, and the public key of the certifying entity,

wherein the certification stored in the block chain database is generated based on the contents of the original data file and the seal and comprising a signed hash of the original data file and seal, wherein the signed hash is generated using a private key of the certifying entity, wherein each of the operations is performed by an image-capturing device.

2. The method of claim 1 , wherein the visual code is a 2D barcode.

3. The method of claim 1 , wherein the visual code is a QR code.

4. The method of claim 1 , wherein the original data file contains information about a user of the mobile device or a document held by a user of the mobile device.

5. The method of claim 1 , wherein the image-capturing device is a mobile device or a hand-held device that scans QR-Codes.

6. The method of claim 1 , wherein the image-capturing device is a kiosk.

7. The method of claim 1 , wherein the original data file is an image file.

8. The method of claim 1 , wherein the original data file contains biometric data.

9. The method of claim 1 , wherein the specified size is determined by a standard for the visual code.

10. A method, comprising operations of:

partitioning an original data file and a copy of a certification of the original data file created by a certifying entity into a series of display blocks of at least a specified size;

converting each display block into a corresponding string;

adding a corresponding header to each string of a corresponding display block in the series, wherein the corresponding header includes an ordered identifying block number and a count of the display blocks in the series;

generating a corresponding visual code for each string;

iteratively presenting each of the visual codes in the series in a repeating progression displayed on a screen of a mobile device for capture by an image-capturing device which converts each visual code that is captured to a corresponding string and back into a corresponding display block and coalesces the captured display blocks into the original data file and the copy of the certification, using an order determined by the ordered identifying block numbers, wherein each of the operations is performed by the mobile device;

wherein the image-capturing device is further configured to verify the integrity of the original data file using a seal that is accessed from a block chain database storing the seal, the seal generated based on the contents of the original data file, and

wherein the image-capturing device is further configured to verify the validity of the original data file using a retrieved certification accessed from the block chain database storing the certification, a rehash of the original data file and seal, the copy of the certification, and the public key of the certifying entity,

wherein the certification stored in the block chain database is generated based on the contents of the original data file and the seal and comprising a signed hash of the original data file and seal, wherein the signed hash is generated using a private key of the certifying entity.

11. The method of claim 10 , wherein the image-capturing device compares the original data file with a copy of the original data file obtained from another source.

12. The method of claim 10 , wherein the visual code is a 2D barcode.

13. The method of claim 10 , wherein the visual code is a QR code.

14. The method of claim 10 , wherein the image-capturing device is a mobile device.

15. The method of claim 10 , wherein the image-capturing device is provided in association with an airline.

16. The method of claim 10 , wherein the original data file is an image file.

17. The method of claim 10 , wherein the original data file contains biometric data.

18. The method of claim 10 , wherein the specified size is determined by a standard for the visual code.

19. The method of claim 18 , wherein the specified size is determined by a standard for QR codes.

20. A method, comprising operations of:

iteratively capturing QR codes in a series of codes displayed in a repeating progression on a screen of a device, wherein a corresponding captured QR code was generated from a display block that resulted from a partition of an original data file and a copy of a certification of the original data file created by a certifying entity which had been digitally signed with a private key into a series of display blocks and wherein each display block is converted to a corresponding string and corresponding header that includes an ordered identifying block number and a count of the display blocks in the series, wherein each corresponding string is converted to a corresponding visual code;

converting the corresponding captured QR code into a corresponding string;

removing the header of the corresponding string and recording the ordered identifying block number and converting the corresponding string to a corresponding display block;

coalescing the captured display blocks into the original data file and the copy of the certification, using an order determined by the ordered identifying block numbers;

verifying the integrity of the original data file using a seal that is accessed from a block chain database storing the seal, the seal generated based on the contents of the original data file, the verifying including hashing a copy of the original data file and using the hashed copy and a public key matching the private key to verify the original data file that had been digitally signed and the digital signing, wherein each of the operations is performed by an image-capturing device; and

verifying the validity of the original data file using a retrieved certification accessed from the block chain database storing the certification, a rehash of the original data file and seal, the copy of the certification, and the public key of the certifying entity,

wherein the certification is generated based on the contents of the original data file and the seal and comprising a signed hash of the original data file and seal, wherein the signed hash is generated using a private key of the certifying entity.

21. The method of claim 20 , wherein the original data file is an image file.

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 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 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 14, 2016
From: EBRAHIMI, ARMIN; KHOT, GAURAV
To: SHOCARD, INC.
Reel/Frame 039159/0900 →
Cited By (4)
US 12,229,520 US 12,443,602 US 12,518,278 US 12,664,590