42
Interledger Update Stefan Thomas Web Payments IG // TPAC 2016

Web Payments IG // TPAC 2016

Embed Size (px)

Citation preview

Interledger Update

Stefan Thomas

Web Payments IG // TPAC 2016

Payment Networks Are Disconnected

2

BlockchainACH Mobile Money Card Networks

BlockchainACH Mobile Money Card Networks

3

Internetworking For Payment Networks

How Does It Work?

Transferring Funds Across Networks

5

Sender RecipientLedger Ledger

Connectors Link Two Ledgers

Connector

Alice 100

Chloe 0

Chloe 110

Bob 0100 110

6

EUR USD

Bilateral Connections Don't Scale

7

Bilateral Connections Don't Scale

8

O(n2)

Networks Do Scale

9

O(n)

But There Isn't Always A Direct Connection

10

O(n)

We Need Multiple Hops

11

O(n)

TO:

us.wf.bob

First Step: Interledger Address

Sender Attaches Packet to Local Transfer

Alice 100

Chloe 0

Chloe 110

Bob 0100

13

us.wf.bob

1023.20

Connector Forwards the Packet via Another Transfer

Alice 0

Chloe 100

Chloe 110

Bob 0

14

110

us.wf.bob

1023.20

If Connectors Fail, Would We Lose Money?

Alice 100

Chloe 0

Chloe 110

Bob 0

?

100

15

Ledgers Provide Hold Functionality

Alice 100

On Hold 0

Chloe 0

Chloe 110

On Hold 0

Bob 0

16

Holds Are Dependent on Conditions + Expiries

17

EXECUTEROLLBACK

Condition Fulfillment Executes Transfer

18

EXECUTEROLLBACK

Timeouts Cause Funds to Be Returned

19

EXECUTEROLLBACK

Sender Commits FundsTo Initiate Payment

Funds Are Committed From Left to Right

21

Alice 100

On Hold 0

Chloe 0

Chloe 110

On Hold 0

Bob 0

COMMITMENT

Sender Puts Funds On Hold

Alice 100

On Hold 0

Chloe 0

Chloe 110

On Hold 0

Bob 0

100

22

us.wf.bob

1023.20

Connector Gets Notification of Funds on Hold

Alice 0

On Hold 100

Chloe 0

Chloe 110

On Hold 0

Bob 0

23

?

us.wf.bob

1023.20

Connector Puts Funds on Hold

Alice 0

On Hold 100

Chloe 0

Chloe 110

On Hold 0

Bob 0

24

110?

us.wf.bob

1023.20

Recipient Gets Notification of Funds on Hold

Alice 0

On Hold 100

Chloe 0

Chloe 0

On Hold 110

Bob 0

25

? ?

us.wf.bob

1023.20

Recipient Triggers ExecutionBy Fulfilling the Condition

Transfers Are Executed Right to Left

27

Alice 0

On Hold 100

Chloe 0

Chloe 0

On Hold 110

Bob 0

EXECUTION

? ?

Recipient Signs Receipt

Alice 0

On Hold 100

Chloe 0

Chloe 0

On Hold 110

Bob 0

28

? ?

Signature Fulfills Condition, Ledger Releases Held Funds

Alice 0

On Hold 100

Chloe 0

Chloe 0

On Hold 110

Bob 0110

29

?

How Does the Connector Get Reimbursed?

Alice 0

On Hold 100

Chloe 0

Chloe 0

On Hold 0

Bob 110

30

?

?

Connector is Notified That Funds Have Been Released

Alice 0

On Hold 100

Chloe 0

Chloe 0

On Hold 0

Bob 110

31

?

Connector Passes on the Recipient’s Signature

Alice 0

On Hold 100

Chloe 0

Chloe 0

On Hold 0

Bob 110

32

?

Receipt Releases Funds from Hold

Alice 0

On Hold 100

Chloe 0

Chloe 0

On Hold 0

Bob 110

33

100

Sender Gets Non-Repudiable Proof of Payment

Alice 0

On Hold 0

Chloe 100

Chloe 0

On Hold 0

Bob 110

34

35

COMMITMENT

Transfers Are Committed L2R, Executed R2L

EXECUTION

Making Something UsefulFor Developers; Today

ILP-EnablementAlso Known As The Right Way

Adoption To-DateStatus: Not Great

Protocols Have Humble BeginningsGotta Start Somewhere

Participants Create A "Virtual" Ledger

40

And Settle Via An Underlying Settlement Ledger

41

ACH, SEPA, PayPal, ...

And Settle Via An Underlying Settlement Ledger

42