IP Library Granted Patent US 10,187,368
Granted Patent B2
US 10,187,368 · App. 15/227,437 · Granted Jan 22, 2019

Resource transfer setup and verification

Inventor: Robert Way (Spring, TX)
Assignee: Ripple Luxembourg S.A.
H04L63/08G06F9/546G06Q40/04H04L67/02
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,187,368
App. No.
15/227,437
Granted
Jan 22, 2019
Kind
B2
Abstract

Systems and techniques are provided for a resource transfer setup and verification. A request for transfer conditions for a transfer of resources may be received from a first computing device. A set of transfer conditions may be generated in response to the request for transfer conditions and sent to the first computing device. The set of transfer conditions and an indication of an acceptance of the set of transfer conditions by a second computing device may be received from the first computing device. A transfer identifier for the set of transfer conditions may be generated from data from the set of transfer conditions which may specify a first sub-transfer. Transfer instructions may be sent to a third computing device, including instructions for a sub-transfer specified in the set of transfer conditions. The set of transfer conditions may be stored with the transfer identifier as a transfer record in non-volatile storage.

Claims (49)

1. A computer-implemented method performed on a data processing apparatus comprising:

receiving, by a connector computing device, from a first computing device, a request for transfer conditions for a transfer of resources from a sending party to a receiving party;

generating, by the connector computing device, a set of transfer conditions in response to the request for transfer conditions;

sending, by the connector computing device, the set of transfer conditions to the first computing device;

receiving, by the connector computing device, from the first computing device, the set of transfer conditions and an indication of an acceptance of the set of transfer conditions by a second computing device;

generating, by the connector computing device, a transfer identifier for the set of transfer conditions from data from the set of transfer conditions, the data comprising at least data specifying a first sub-transfer;

sending, by the connector computing device, transfer instructions to a third computing device, the transfer instructions comprising instructions for the first sub-transfer specified in the set of transfer conditions, wherein the first sub-transfer of the transfer instructions comprises an indication of a first resource pool on the third computing device, a second resource pool on the third computing device, a resource type, and a resource amount;

storing, by the connector computing device, the set of transfer conditions with the transfer identifier as a transfer record in non-volatile storage;

receiving, by the connector computing device, a request to verify the transfer record, the request comprising the transfer identifier;

generating, by the connector computing device, a new transfer identifier from the data from the set of transfer conditions stored in the transfer record with the transfer identifier;

comparing, by the connector computing device, the new transfer identifier to the transfer identifier stored with the set of transfer conditions in the transfer record; and

if the new transfer identifier matches the transfer identifier, sending, by the connector computing device, an indication that the transfer record is verified, or if the new transfer identifier does not match the transfer identifier, sending, by the connector computing device, an indication that the transfer record is not verified.

2. The method of claim 1 , wherein generating a transfer identifier for the set of transfer conditions from data from the set of transfer conditions comprises:

representing the data from the set of transfer conditions as a string;

hashing the string to generate a hash value; and

representing the hash value as a hexadecimal string.

3. The method of claim 1 , wherein the first resource pool and the second resource pool are indicated by a uniform resource identifier (URI).

4. The method of claim 1 , wherein generating the set of transfer conditions further comprises:

generating a message authentication code based on a portion of data from the set of transfer conditions; and

storing the message authentication code in the set of transfer conditions.

5. The method of claim 4 , further comprising, after receiving, from the first computing device, the set of transfer conditions and an indication of an acceptance of the set of transfer conditions by a second computing device:

generating a new message authentication code from the portion of data from the set of transfer conditions; and

comparing the new message authentication code to the message authentication code stored in the set of transfer conditions to verify the set of transfer conditions before generating the transfer identifier.

6. The method of claim 1 , wherein the set of transfer conditions is stored as a data object.

7. The method of claim 6 , wherein the data object is sent and received using HTTP.

8. A computer-implemented method performed on a data processing apparatus comprising:

receiving, by a connector computing device, from a first computing device, a request for transfer conditions for a transfer of resources from a sending party to a receiving party;

sending, by the connector computing device, the request for transfer conditions to a second computing device;

receiving, by the connector computing device, from the second computing device, a set of transfer conditions;

sending, by the connector computing device, the set of transfer conditions to the first computing device;

receiving, by the connector computing device, from the first computing device, the set of transfer conditions and an indication of an acceptance of the set of transfer conditions by the first computing device;

sending, by the connector computing device, the set of transfer conditions and the indication of the acceptance by the first computing device to the second computing device;

receiving, by the connector computing device, from the second computing device, an indication of acceptance of the set of transfer conditions by the second computing device and a transfer identifier for the set of transfer conditions;

sending, by the connector computing device, first transfer instructions to a third computing device, the first transfer instructions comprising instructions for a first sub-transfer specified in the set of transfer conditions, wherein the first sub-transfer of the first transfer instructions comprises an indication of a first resource pool on the third computing device, a second resource pool on the third computing device, a first resource type, and a first resource amount;

sending, by the connector computing device, second transfer instructions and the transfer identifier to a fourth computing device, the second transfer instructions comprising instructions for a second sub-transfer specified in the set of transfer conditions, wherein the sub transfer of the second transfer instructions comprises an indication of a third resource pool on the fourth computing device, a fourth resource pool on the fourth computing device, a second resource type different from the resource type, a second resource amount;

storing, by the connector computing device, the set of transfer conditions with the transfer identifier as a transfer record in non-volatile storage;

receiving, by the connector computing device, a request to verify the transfer record, the request comprising the transfer identifier;

generating, by the connector computing device, a new transfer identifier from the data from the set of transfer conditions stored in the transfer record with the transfer identifier;

comparing, by the connector computing device, the new transfer identifier to the transfer identifier stored with the set of transfer conditions in the transfer record; and

if the new transfer identifier matches the transfer identifier, sending, by the connector computing device, an indication that the transfer record is verified, or if the new transfer identifier does not match the transfer identifier, sending, by the connector computing device, an indication that the transfer record is not verified.

9. The method of claim 8 , wherein the first resource pool, second resource pool, third resource pool, and fourth resource pool are indicated by a uniform resource identifier (URI).

10. The method of claim 8 , further comprising, before sending the request for transfer conditions to a second computing device:

generating a message authentication code based on a portion of data from the set of transfer conditions; and

storing the message authentication code in the set of transfer conditions.

11. The method of claim 10 , further comprising, receiving, from the first computing device, the set of transfer conditions and an indication of an acceptance of the set of transfer conditions by the first computing device:

generating a new message authentication code from the portion of data from the set of transfer conditions; and

comparing the new message authentication code to the message authentication code stored in the set of transfer conditions to verify the set of transfer conditions before sending the set of transfer conditions to the second computing device.

12. The method of claim 8 , wherein the set of transfer conditions is stored as a data object.

13. The method of claim 12 , wherein the data object is sent and received using HTTP.

Assignments (4)
CORRECTIVE ASSIGNMENT TO CORRECT THE ASSIGNEE NAME PREVIOUSLY RECORDED AT REEL: 68684 FRAME: 982. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT. Recorded Mar 19, 2025
From: RIPPLE LUXEMBOURG S.A.
To: INTERLEDGER FOUNDATION INC.
Reel/Frame 070660/0786 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 24, 2024
From: RIPPLE LUXEMBOURG S.A.
To: INTERLEDGER FOUNDATION
Reel/Frame 068684/0982 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 8, 2018
From: 402 TECHNOLOGIES S.A.
To: RIPPLE LUXEMBOURG S.A.
Reel/Frame 044564/0818 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 3, 2016
From: WAY, ROBERT
To: 402 TECHNOLOGIES S.A
Reel/Frame 039333/0473 →
Continuity (1)
Related Publication 20180041486A1 · Feb 8, 2018
Cited By (2)
US 12,254,435 US 12,481,979