welcome to the 2nd interledger workshop - ilp...interledger workshop welcome to the 2nd july 6, 2016...

136
Interledger Workshop Welcome to the 2nd July 6, 2016 @ Level39

Upload: ngolien

Post on 26-Mar-2018

214 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Welcome to the 2nd Interledger Workshop - ILP...Interledger Workshop Welcome to the 2nd July 6, 2016 @ Level39 Interledger Adrian Hope-Bailie Intro to the Project Live Stream: IRC:

Interledger WorkshopWelcome to the 2nd

July 6, 2016 @ Level39

Page 2: Welcome to the 2nd Interledger Workshop - ILP...Interledger Workshop Welcome to the 2nd July 6, 2016 @ Level39 Interledger Adrian Hope-Bailie Intro to the Project Live Stream: IRC:

Interledger

Adrian Hope-Bailie

Intro to the Project

Page 3: Welcome to the 2nd Interledger Workshop - ILP...Interledger Workshop Welcome to the 2nd July 6, 2016 @ Level39 Interledger Adrian Hope-Bailie Intro to the Project Live Stream: IRC:

Live Stream: https://bluejeans.com/795795755

IRC: irc.w3.org #interledger(to get on the queue to ask a question type q+)

Wifi: L39-Visitor

Tweet @interledger or use the hashtag #interledger

Page 4: Welcome to the 2nd Interledger Workshop - ILP...Interledger Workshop Welcome to the 2nd July 6, 2016 @ Level39 Interledger Adrian Hope-Bailie Intro to the Project Live Stream: IRC:

09:15 - 09:30 Intro to the Interledger project

09:30 - 10:00 An Interledger Overview

10:00 - 10:45 ILP Packet, Addressing and Routing

10:45 - 11:00 Coffee/Tea break

11:00 - 11:45 Building with ILP: The Stack, Ledger Plug-Ins and “Trustlines”

11:45 - 12:00 Application/Setup Protocols and the W3C Web Payments activity

12:00 - 13:00 Lunch

13:00 - 13:30 Weaving the ILP fabric into BigchainDB

13:30 - 14:00 Demonstrating Real-Money Payments using ILP

14:00 - 17:30 Interledger Hackathon (Coffee/Tea/Snacks available throughout)

Agenda For Today

Page 5: Welcome to the 2nd Interledger Workshop - ILP...Interledger Workshop Welcome to the 2nd July 6, 2016 @ Level39 Interledger Adrian Hope-Bailie Intro to the Project Live Stream: IRC:

Interledger Project (interledger.org)

● Community-developed protocol(s) for connecting payment networks

● A vision for the Internet of Value

W3C Community Group (w3.org/community/interledger)

● Co-chaired by:

○ Adrian Hope-Bailie (Ripple) and

○ Dimitri De Jonghe (Ascribe/BigChainDB)

● Mailing list, IRC, Blog, Member Management

What Is the Interledger project?

Page 6: Welcome to the 2nd Interledger Workshop - ILP...Interledger Workshop Welcome to the 2nd July 6, 2016 @ Level39 Interledger Adrian Hope-Bailie Intro to the Project Live Stream: IRC:

October 2015 Published the Interledger White Paper

November 2015 Launched Interledger Community Group at W3C (190+ participants)

February 2016 First workshop in San Francisco (50+ attendees)

February 2016 First draft of Crypto-conditions RFC

March 2016 First draft of Architecture Overview (ILP - RFC 1)

June 2016 Re-launch of interledger.org website

July 2016 Second workshop in London (150+ attendees)

July 2016 IETF Berlin - BoF session - Thursday 21 July at 16:20

A Little History

Page 7: Welcome to the 2nd Interledger Workshop - ILP...Interledger Workshop Welcome to the 2nd July 6, 2016 @ Level39 Interledger Adrian Hope-Bailie Intro to the Project Live Stream: IRC:

Interledger

Stefan Thomas

An Overview

Page 8: Welcome to the 2nd Interledger Workshop - ILP...Interledger Workshop Welcome to the 2nd July 6, 2016 @ Level39 Interledger Adrian Hope-Bailie Intro to the Project Live Stream: IRC:

The State of Payments Is Sad.

Page 9: Welcome to the 2nd Interledger Workshop - ILP...Interledger Workshop Welcome to the 2nd July 6, 2016 @ Level39 Interledger Adrian Hope-Bailie Intro to the Project Live Stream: IRC:

Today’s Infrastructure

Low-Volume High-Value Slow Batch Payments

9

Designed for High Value or Batch Payments

Page 10: Welcome to the 2nd Interledger Workshop - ILP...Interledger Workshop Welcome to the 2nd July 6, 2016 @ Level39 Interledger Adrian Hope-Bailie Intro to the Project Live Stream: IRC:

A System From a Different Time

Photo by NASA

Page 11: Welcome to the 2nd Interledger Workshop - ILP...Interledger Workshop Welcome to the 2nd July 6, 2016 @ Level39 Interledger Adrian Hope-Bailie Intro to the Project Live Stream: IRC:

Where Is The Competition?

Photo: CountryStyle Photography

Page 12: Welcome to the 2nd Interledger Workshop - ILP...Interledger Workshop Welcome to the 2nd July 6, 2016 @ Level39 Interledger Adrian Hope-Bailie Intro to the Project Live Stream: IRC:

12

Accepted Payment MethodsPrineta.com

Plenty of Innovation

Page 13: Welcome to the 2nd Interledger Workshop - ILP...Interledger Workshop Welcome to the 2nd July 6, 2016 @ Level39 Interledger Adrian Hope-Bailie Intro to the Project Live Stream: IRC:

But: Global Reach Is Prohibitively Expensive

13

Nostro account costs: liquidity, regulations, operations, risk and compliance

Page 14: Welcome to the 2nd Interledger Workshop - ILP...Interledger Workshop Welcome to the 2nd July 6, 2016 @ Level39 Interledger Adrian Hope-Bailie Intro to the Project Live Stream: IRC:

BACK TOBASICS

Page 15: Welcome to the 2nd Interledger Workshop - ILP...Interledger Workshop Welcome to the 2nd July 6, 2016 @ Level39 Interledger Adrian Hope-Bailie Intro to the Project Live Stream: IRC:
Page 16: Welcome to the 2nd Interledger Workshop - ILP...Interledger Workshop Welcome to the 2nd July 6, 2016 @ Level39 Interledger Adrian Hope-Bailie Intro to the Project Live Stream: IRC:

Ledgers Track Accounts and Balances

Sender RecipientLedger

16

Page 17: Welcome to the 2nd Interledger Workshop - ILP...Interledger Workshop Welcome to the 2nd July 6, 2016 @ Level39 Interledger Adrian Hope-Bailie Intro to the Project Live Stream: IRC:

Central Ledger Model

Page 18: Welcome to the 2nd Interledger Workshop - ILP...Interledger Workshop Welcome to the 2nd July 6, 2016 @ Level39 Interledger Adrian Hope-Bailie Intro to the Project Live Stream: IRC:

Distributed Ledger Model

Page 19: Welcome to the 2nd Interledger Workshop - ILP...Interledger Workshop Welcome to the 2nd July 6, 2016 @ Level39 Interledger Adrian Hope-Bailie Intro to the Project Live Stream: IRC:

The World Will Never AgreeOn One Ledger

Page 20: Welcome to the 2nd Interledger Workshop - ILP...Interledger Workshop Welcome to the 2nd July 6, 2016 @ Level39 Interledger Adrian Hope-Bailie Intro to the Project Live Stream: IRC:

Diversity Is A Good Thing

20

BlockchainACH Mobile Money Card Networks

Page 21: Welcome to the 2nd Interledger Workshop - ILP...Interledger Workshop Welcome to the 2nd July 6, 2016 @ Level39 Interledger Adrian Hope-Bailie Intro to the Project Live Stream: IRC:

But Why Is Everything Disconnected?

21

BlockchainACH Mobile Money Card Networks

Page 22: Welcome to the 2nd Interledger Workshop - ILP...Interledger Workshop Welcome to the 2nd July 6, 2016 @ Level39 Interledger Adrian Hope-Bailie Intro to the Project Live Stream: IRC:

How Is Money Transferred Across Ledgers?

22

Page 23: Welcome to the 2nd Interledger Workshop - ILP...Interledger Workshop Welcome to the 2nd July 6, 2016 @ Level39 Interledger Adrian Hope-Bailie Intro to the Project Live Stream: IRC:

We Know That There Must Be Local Transfers

23

Alice 100

??? 0

??? 110

Bob 0100 110

Page 24: Welcome to the 2nd Interledger Workshop - ILP...Interledger Workshop Welcome to the 2nd July 6, 2016 @ Level39 Interledger Adrian Hope-Bailie Intro to the Project Live Stream: IRC:

Connectors Link Two Ledgers

Connector

Alice 100

Chloe 0

Chloe 100

Bob 0100 100

24

Page 25: Welcome to the 2nd Interledger Workshop - ILP...Interledger Workshop Welcome to the 2nd July 6, 2016 @ Level39 Interledger Adrian Hope-Bailie Intro to the Project Live Stream: IRC:

Bilateral Connections Don't Scale

25

Page 26: Welcome to the 2nd Interledger Workshop - ILP...Interledger Workshop Welcome to the 2nd July 6, 2016 @ Level39 Interledger Adrian Hope-Bailie Intro to the Project Live Stream: IRC:

Bilateral Connections Don't Scale

26

O(n2)

Page 27: Welcome to the 2nd Interledger Workshop - ILP...Interledger Workshop Welcome to the 2nd July 6, 2016 @ Level39 Interledger Adrian Hope-Bailie Intro to the Project Live Stream: IRC:

Bilateral Connections Don't Scale

27

O(n2)

Page 28: Welcome to the 2nd Interledger Workshop - ILP...Interledger Workshop Welcome to the 2nd July 6, 2016 @ Level39 Interledger Adrian Hope-Bailie Intro to the Project Live Stream: IRC:

Networks Do Scale

28

O(n)

Page 29: Welcome to the 2nd Interledger Workshop - ILP...Interledger Workshop Welcome to the 2nd July 6, 2016 @ Level39 Interledger Adrian Hope-Bailie Intro to the Project Live Stream: IRC:

Networks Do Scale

29

O(n)

Page 30: Welcome to the 2nd Interledger Workshop - ILP...Interledger Workshop Welcome to the 2nd July 6, 2016 @ Level39 Interledger Adrian Hope-Bailie Intro to the Project Live Stream: IRC:

Sending With No Direct Connection

30

O(n)

Page 31: Welcome to the 2nd Interledger Workshop - ILP...Interledger Workshop Welcome to the 2nd July 6, 2016 @ Level39 Interledger Adrian Hope-Bailie Intro to the Project Live Stream: IRC:

We Need Multiple Hops

31

O(n)

Page 32: Welcome to the 2nd Interledger Workshop - ILP...Interledger Workshop Welcome to the 2nd July 6, 2016 @ Level39 Interledger Adrian Hope-Bailie Intro to the Project Live Stream: IRC:

BUT HOW?

Page 33: Welcome to the 2nd Interledger Workshop - ILP...Interledger Workshop Welcome to the 2nd July 6, 2016 @ Level39 Interledger Adrian Hope-Bailie Intro to the Project Live Stream: IRC:

TO THEWORKSHOP!

TO THEWORKSHOP!

Page 34: Welcome to the 2nd Interledger Workshop - ILP...Interledger Workshop Welcome to the 2nd July 6, 2016 @ Level39 Interledger Adrian Hope-Bailie Intro to the Project Live Stream: IRC:

Learning From History

Page 35: Welcome to the 2nd Interledger Workshop - ILP...Interledger Workshop Welcome to the 2nd July 6, 2016 @ Level39 Interledger Adrian Hope-Bailie Intro to the Project Live Stream: IRC:

Internet: Network of Networks

Page 36: Welcome to the 2nd Interledger Workshop - ILP...Interledger Workshop Welcome to the 2nd July 6, 2016 @ Level39 Interledger Adrian Hope-Bailie Intro to the Project Live Stream: IRC:

The internet protocol implements two basic functions:addressing and fragmentation.

— RFC 791

Page 37: Welcome to the 2nd Interledger Workshop - ILP...Interledger Workshop Welcome to the 2nd July 6, 2016 @ Level39 Interledger Adrian Hope-Bailie Intro to the Project Live Stream: IRC:

Internet: Network of Networks

204.28.124.148IP Address

Page 38: Welcome to the 2nd Interledger Workshop - ILP...Interledger Workshop Welcome to the 2nd July 6, 2016 @ Level39 Interledger Adrian Hope-Bailie Intro to the Project Live Stream: IRC:

Internet Architecture

IP

WIFI BLUETOOTH ETHERNET

Internetwork

Network

Transport TCP UDP

Application HTTP SMTP NNTP NTP RTP

Page 39: Welcome to the 2nd Interledger Workshop - ILP...Interledger Workshop Welcome to the 2nd July 6, 2016 @ Level39 Interledger Adrian Hope-Bailie Intro to the Project Live Stream: IRC:

InterledgerThe protocol for connecting ledgers.

Page 40: Welcome to the 2nd Interledger Workshop - ILP...Interledger Workshop Welcome to the 2nd July 6, 2016 @ Level39 Interledger Adrian Hope-Bailie Intro to the Project Live Stream: IRC:

Interledger Architecture

ILP

ISO 20022BITCOIN ETHEREUM

Interledger

Network

Application SPSP PPSP ...

Page 41: Welcome to the 2nd Interledger Workshop - ILP...Interledger Workshop Welcome to the 2nd July 6, 2016 @ Level39 Interledger Adrian Hope-Bailie Intro to the Project Live Stream: IRC:

Where?How much?

Interledger In One Slide (Really)

Page 42: Welcome to the 2nd Interledger Workshop - ILP...Interledger Workshop Welcome to the 2nd July 6, 2016 @ Level39 Interledger Adrian Hope-Bailie Intro to the Project Live Stream: IRC:

address: "us.wf.bob"How much?

Interledger In One Slide (Really)

Page 43: Welcome to the 2nd Interledger Workshop - ILP...Interledger Workshop Welcome to the 2nd July 6, 2016 @ Level39 Interledger Adrian Hope-Bailie Intro to the Project Live Stream: IRC:

address: "us.wf.bob"amount: "1023.20"

Interledger In One Slide (Really)

Page 44: Welcome to the 2nd Interledger Workshop - ILP...Interledger Workshop Welcome to the 2nd July 6, 2016 @ Level39 Interledger Adrian Hope-Bailie Intro to the Project Live Stream: IRC:

address: "us.wf.bob"amount: "1023.20"When?Why?

Interledger In One Slide (Really)

Page 45: Welcome to the 2nd Interledger Workshop - ILP...Interledger Workshop Welcome to the 2nd July 6, 2016 @ Level39 Interledger Adrian Hope-Bailie Intro to the Project Live Stream: IRC:

address: "us.wf.bob"amount: "1023.20"expiry: "2016-07-06T09:00:10Z"Why?

Interledger In One Slide (Really)

Page 46: Welcome to the 2nd Interledger Workshop - ILP...Interledger Workshop Welcome to the 2nd July 6, 2016 @ Level39 Interledger Adrian Hope-Bailie Intro to the Project Live Stream: IRC:

address: "us.wf.bob"amount: "1023.20"expiry: "2016-07-06T09:00:10Z"condition: "cc:0:3:4a7DEpj8f9..."

Interledger In One Slide (Really)

Page 47: Welcome to the 2nd Interledger Workshop - ILP...Interledger Workshop Welcome to the 2nd July 6, 2016 @ Level39 Interledger Adrian Hope-Bailie Intro to the Project Live Stream: IRC:

Now We Can Support Longer Chains

47

Page 48: Welcome to the 2nd Interledger Workshop - ILP...Interledger Workshop Welcome to the 2nd July 6, 2016 @ Level39 Interledger Adrian Hope-Bailie Intro to the Project Live Stream: IRC:

The Interledger

Page 49: Welcome to the 2nd Interledger Workshop - ILP...Interledger Workshop Welcome to the 2nd July 6, 2016 @ Level39 Interledger Adrian Hope-Bailie Intro to the Project Live Stream: IRC:

BlockchainACH Mobile Money Card Networks

49

A Standard for Real-Time Payments Across Networks

Page 50: Welcome to the 2nd Interledger Workshop - ILP...Interledger Workshop Welcome to the 2nd July 6, 2016 @ Level39 Interledger Adrian Hope-Bailie Intro to the Project Live Stream: IRC:

Show us!

Page 51: Welcome to the 2nd Interledger Workshop - ILP...Interledger Workshop Welcome to the 2nd July 6, 2016 @ Level39 Interledger Adrian Hope-Bailie Intro to the Project Live Stream: IRC:

How It Works

Evan Schwartz & Stefan Thomas

ILP Packet, Addressing, Routing

Page 52: Welcome to the 2nd Interledger Workshop - ILP...Interledger Workshop Welcome to the 2nd July 6, 2016 @ Level39 Interledger Adrian Hope-Bailie Intro to the Project Live Stream: IRC:

Ledgers Track Accounts and Balances

Sender RecipientLedger

52

Page 53: Welcome to the 2nd Interledger Workshop - ILP...Interledger Workshop Welcome to the 2nd July 6, 2016 @ Level39 Interledger Adrian Hope-Bailie Intro to the Project Live Stream: IRC:

But Not Everyone Is on the Same Ledger

53

Page 54: Welcome to the 2nd Interledger Workshop - ILP...Interledger Workshop Welcome to the 2nd July 6, 2016 @ Level39 Interledger Adrian Hope-Bailie Intro to the Project Live Stream: IRC:

Connectors Relay Money

Connector

Alice 100

Chloe 0

Chloe 110

Bob 0100 110

54

Page 55: Welcome to the 2nd Interledger Workshop - ILP...Interledger Workshop Welcome to the 2nd July 6, 2016 @ Level39 Interledger Adrian Hope-Bailie Intro to the Project Live Stream: IRC:

Connectors Convert Currencies

Connector

Alice 100

Chloe 0

Chloe 110

Bob 0100 110

55

Page 56: Welcome to the 2nd Interledger Workshop - ILP...Interledger Workshop Welcome to the 2nd July 6, 2016 @ Level39 Interledger Adrian Hope-Bailie Intro to the Project Live Stream: IRC:

How do we ask a connectorto pass on a payment?

Page 57: Welcome to the 2nd Interledger Workshop - ILP...Interledger Workshop Welcome to the 2nd July 6, 2016 @ Level39 Interledger Adrian Hope-Bailie Intro to the Project Live Stream: IRC:

We Need a Way to Send Instructions to Connectors

Alice 100

Chloe 0

Chloe 110

Bob 0

57

Um, excuse me? ...hello there…? ZZZZZZ

Page 58: Welcome to the 2nd Interledger Workshop - ILP...Interledger Workshop Welcome to the 2nd July 6, 2016 @ Level39 Interledger Adrian Hope-Bailie Intro to the Project Live Stream: IRC:

address: "us.wf.bob"

Interledger In One Slide

Hierarchical identifier

Decimal amountamount: "1023.20"

Page 59: Welcome to the 2nd Interledger Workshop - ILP...Interledger Workshop Welcome to the 2nd July 6, 2016 @ Level39 Interledger Adrian Hope-Bailie Intro to the Project Live Stream: IRC:

us.wf.bob1023.20

Page 60: Welcome to the 2nd Interledger Workshop - ILP...Interledger Workshop Welcome to the 2nd July 6, 2016 @ Level39 Interledger Adrian Hope-Bailie Intro to the Project Live Stream: IRC:

Sender Attaches Packet to Local Transfer

Alice 100

Chloe 0

Chloe 110

Bob 0100

60

us.wf.bob1023.20

Page 61: Welcome to the 2nd Interledger Workshop - ILP...Interledger Workshop Welcome to the 2nd July 6, 2016 @ Level39 Interledger Adrian Hope-Bailie Intro to the Project Live Stream: IRC:

Connector Forwards the Packet via Another Transfer

Alice 0

Chloe 100

Chloe 110

Bob 0

61

us.wf.bob1023.20

110

Page 62: Welcome to the 2nd Interledger Workshop - ILP...Interledger Workshop Welcome to the 2nd July 6, 2016 @ Level39 Interledger Adrian Hope-Bailie Intro to the Project Live Stream: IRC:

Paths Can Be Short

62

Page 63: Welcome to the 2nd Interledger Workshop - ILP...Interledger Workshop Welcome to the 2nd July 6, 2016 @ Level39 Interledger Adrian Hope-Bailie Intro to the Project Live Stream: IRC:

Or Long

63

Page 64: Welcome to the 2nd Interledger Workshop - ILP...Interledger Workshop Welcome to the 2nd July 6, 2016 @ Level39 Interledger Adrian Hope-Bailie Intro to the Project Live Stream: IRC:

Uh oh...

64

Page 65: Welcome to the 2nd Interledger Workshop - ILP...Interledger Workshop Welcome to the 2nd July 6, 2016 @ Level39 Interledger Adrian Hope-Bailie Intro to the Project Live Stream: IRC:

Can we trust connectors?

Page 66: Welcome to the 2nd Interledger Workshop - ILP...Interledger Workshop Welcome to the 2nd July 6, 2016 @ Level39 Interledger Adrian Hope-Bailie Intro to the Project Live Stream: IRC:

If Connectors Fail, Would We Lose Money?

Alice 100

Chloe 0

Chloe 110

Bob 0

?

100

66

Page 67: Welcome to the 2nd Interledger Workshop - ILP...Interledger Workshop Welcome to the 2nd July 6, 2016 @ Level39 Interledger Adrian Hope-Bailie Intro to the Project Live Stream: IRC:

Holds Provide Security

Page 68: Welcome to the 2nd Interledger Workshop - ILP...Interledger Workshop Welcome to the 2nd July 6, 2016 @ Level39 Interledger Adrian Hope-Bailie Intro to the Project Live Stream: IRC:

Ledgers Provide Hold Functionality

Alice 100

On Hold 0

Chloe 0

Chloe 110

On Hold 0

Bob 0

68

Page 69: Welcome to the 2nd Interledger Workshop - ILP...Interledger Workshop Welcome to the 2nd July 6, 2016 @ Level39 Interledger Adrian Hope-Bailie Intro to the Project Live Stream: IRC:

Holds Are Dependent on Conditions + Expiries

69

EXECUTEROLLBACK

Page 70: Welcome to the 2nd Interledger Workshop - ILP...Interledger Workshop Welcome to the 2nd July 6, 2016 @ Level39 Interledger Adrian Hope-Bailie Intro to the Project Live Stream: IRC:

Condition Fulfillment Executes Transfer

70

EXECUTEROLLBACK

Page 71: Welcome to the 2nd Interledger Workshop - ILP...Interledger Workshop Welcome to the 2nd July 6, 2016 @ Level39 Interledger Adrian Hope-Bailie Intro to the Project Live Stream: IRC:

Timeouts Cause Funds to Be Returned

71

EXECUTEROLLBACK

Page 72: Welcome to the 2nd Interledger Workshop - ILP...Interledger Workshop Welcome to the 2nd July 6, 2016 @ Level39 Interledger Adrian Hope-Bailie Intro to the Project Live Stream: IRC:

address: "us.wf.bob"amount: "1023.20"expiry: "2016-07-06T09:00:10Z"condition: "cc:0:3:4a7DEpj8f9..."

Interledger In One Slide (Really)

Timestamp (ISO 8601)

Crypto Condition

Page 73: Welcome to the 2nd Interledger Workshop - ILP...Interledger Workshop Welcome to the 2nd July 6, 2016 @ Level39 Interledger Adrian Hope-Bailie Intro to the Project Live Stream: IRC:

Funds Are Committed From Left to Right

73

Alice 100

On Hold 0

Chloe 0

Chloe 110

On Hold 0

Bob 0

COMMITMENT

Page 74: Welcome to the 2nd Interledger Workshop - ILP...Interledger Workshop Welcome to the 2nd July 6, 2016 @ Level39 Interledger Adrian Hope-Bailie Intro to the Project Live Stream: IRC:

Sender Puts Funds On Hold

Alice 100

On Hold 0

Chloe 0

Chloe 110

On Hold 0

Bob 0

100

74

us.wf.bob1023.20cc:0:3:4a...2016-07...

Page 75: Welcome to the 2nd Interledger Workshop - ILP...Interledger Workshop Welcome to the 2nd July 6, 2016 @ Level39 Interledger Adrian Hope-Bailie Intro to the Project Live Stream: IRC:

Connector Gets Notification of Funds on Hold

Alice 0

On Hold 100

Chloe 0

Chloe 110

On Hold 0

Bob 0

75

us.wf.bob1023.20cc:0:3:4a...2016-07...

?

Page 76: Welcome to the 2nd Interledger Workshop - ILP...Interledger Workshop Welcome to the 2nd July 6, 2016 @ Level39 Interledger Adrian Hope-Bailie Intro to the Project Live Stream: IRC:

Connector Puts Funds on Hold

Alice 0

On Hold 100

Chloe 0

Chloe 110

On Hold 0

Bob 0

76

us.wf.bob1023.20cc:0:3:4a...2016-07...

110?

Page 77: Welcome to the 2nd Interledger Workshop - ILP...Interledger Workshop Welcome to the 2nd July 6, 2016 @ Level39 Interledger Adrian Hope-Bailie Intro to the Project Live Stream: IRC:

Recipient Gets Notification of Funds on Hold

Alice 0

On Hold 100

Chloe 0

Chloe 0

On Hold 110

Bob 0

77

us.wf.bob1023.20cc:0:3:4a...2016-07...

? ?

Page 78: Welcome to the 2nd Interledger Workshop - ILP...Interledger Workshop Welcome to the 2nd July 6, 2016 @ Level39 Interledger Adrian Hope-Bailie Intro to the Project Live Stream: IRC:

Recipient Triggers Payment by Fulfilling the Condition

Page 79: Welcome to the 2nd Interledger Workshop - ILP...Interledger Workshop Welcome to the 2nd July 6, 2016 @ Level39 Interledger Adrian Hope-Bailie Intro to the Project Live Stream: IRC:

Transfers Are Executed Right to Left

79

Alice 0

On Hold 100

Chloe 0

Chloe 0

On Hold 110

Bob 0

EXECUTION

? ?

Page 80: Welcome to the 2nd Interledger Workshop - ILP...Interledger Workshop Welcome to the 2nd July 6, 2016 @ Level39 Interledger Adrian Hope-Bailie Intro to the Project Live Stream: IRC:

Recipient Signs Receipt

Alice 0

On Hold 100

Chloe 0

Chloe 0

On Hold 110

Bob 0

80

? ?

Page 81: Welcome to the 2nd Interledger Workshop - ILP...Interledger Workshop Welcome to the 2nd July 6, 2016 @ Level39 Interledger Adrian Hope-Bailie Intro to the Project Live Stream: IRC:

Signature Fulfills Condition, Ledger Releases Held Funds

Alice 0

On Hold 100

Chloe 0

Chloe 0

On Hold 110

Bob 0110

81

?

Page 82: Welcome to the 2nd Interledger Workshop - ILP...Interledger Workshop Welcome to the 2nd July 6, 2016 @ Level39 Interledger Adrian Hope-Bailie Intro to the Project Live Stream: IRC:

How Does the Connector Get Reimbursed?

Alice 0

On Hold 100

Chloe 0

Chloe 0

On Hold 0

Bob 110

82

?

?

Page 83: Welcome to the 2nd Interledger Workshop - ILP...Interledger Workshop Welcome to the 2nd July 6, 2016 @ Level39 Interledger Adrian Hope-Bailie Intro to the Project Live Stream: IRC:

Connector is Notified That Funds Have Been Released

Alice 0

On Hold 100

Chloe 0

Chloe 0

On Hold 0

Bob 110

83

?

Page 84: Welcome to the 2nd Interledger Workshop - ILP...Interledger Workshop Welcome to the 2nd July 6, 2016 @ Level39 Interledger Adrian Hope-Bailie Intro to the Project Live Stream: IRC:

Connector Passes on the Recipient’s Signature

Alice 0

On Hold 100

Chloe 0

Chloe 0

On Hold 0

Bob 110

84

?

Page 85: Welcome to the 2nd Interledger Workshop - ILP...Interledger Workshop Welcome to the 2nd July 6, 2016 @ Level39 Interledger Adrian Hope-Bailie Intro to the Project Live Stream: IRC:

Receipt Releases Funds from Hold

Alice 0

On Hold 100

Chloe 0

Chloe 0

On Hold 0

Bob 110

85

100

Page 86: Welcome to the 2nd Interledger Workshop - ILP...Interledger Workshop Welcome to the 2nd July 6, 2016 @ Level39 Interledger Adrian Hope-Bailie Intro to the Project Live Stream: IRC:

Sender Gets Non-Repudiable Proof of Payment

Alice 0

On Hold 0

Chloe 100

Chloe 0

On Hold 0

Bob 110

86

Page 87: Welcome to the 2nd Interledger Workshop - ILP...Interledger Workshop Welcome to the 2nd July 6, 2016 @ Level39 Interledger Adrian Hope-Bailie Intro to the Project Live Stream: IRC:

87

COMMITMENT

Transfers Are Committed L2R, Executed R2L

EXECUTION

Page 88: Welcome to the 2nd Interledger Workshop - ILP...Interledger Workshop Welcome to the 2nd July 6, 2016 @ Level39 Interledger Adrian Hope-Bailie Intro to the Project Live Stream: IRC:

(Now) Paths Can Be Short

88

Page 89: Welcome to the 2nd Interledger Workshop - ILP...Interledger Workshop Welcome to the 2nd July 6, 2016 @ Level39 Interledger Adrian Hope-Bailie Intro to the Project Live Stream: IRC:

Or Long

89

Page 90: Welcome to the 2nd Interledger Workshop - ILP...Interledger Workshop Welcome to the 2nd July 6, 2016 @ Level39 Interledger Adrian Hope-Bailie Intro to the Project Live Stream: IRC:

Or Long (And Still Secure)

90

Page 91: Welcome to the 2nd Interledger Workshop - ILP...Interledger Workshop Welcome to the 2nd July 6, 2016 @ Level39 Interledger Adrian Hope-Bailie Intro to the Project Live Stream: IRC:

The Interledger

Page 92: Welcome to the 2nd Interledger Workshop - ILP...Interledger Workshop Welcome to the 2nd July 6, 2016 @ Level39 Interledger Adrian Hope-Bailie Intro to the Project Live Stream: IRC:

address: "us.wf.bob"amount: "1023.20"expiry: "2016-07-06T09:00:10Z"condition: "cc:0:3:4a7DEpj8f9..."

Enabled By a Simple Packet Format

Page 93: Welcome to the 2nd Interledger Workshop - ILP...Interledger Workshop Welcome to the 2nd July 6, 2016 @ Level39 Interledger Adrian Hope-Bailie Intro to the Project Live Stream: IRC:

How do those addresses work?

Page 94: Welcome to the 2nd Interledger Workshop - ILP...Interledger Workshop Welcome to the 2nd July 6, 2016 @ Level39 Interledger Adrian Hope-Bailie Intro to the Project Live Stream: IRC:

address: "us.wf.bob"ledger account

Interledger Addresses

Page 95: Welcome to the 2nd Interledger Workshop - ILP...Interledger Workshop Welcome to the 2nd July 6, 2016 @ Level39 Interledger Adrian Hope-Bailie Intro to the Project Live Stream: IRC:

address: "us.wf.bob.mary"ledger subledger

Interledger Addresses

account

Page 96: Welcome to the 2nd Interledger Workshop - ILP...Interledger Workshop Welcome to the 2nd July 6, 2016 @ Level39 Interledger Adrian Hope-Bailie Intro to the Project Live Stream: IRC:

Connectors Convert Currencies

Connector

Alice 100

Chloe 0

Chloe 110

Bob 0100 110

96

Page 97: Welcome to the 2nd Interledger Workshop - ILP...Interledger Workshop Welcome to the 2nd July 6, 2016 @ Level39 Interledger Adrian Hope-Bailie Intro to the Project Live Stream: IRC:

Where does this rate come from?

Page 98: Welcome to the 2nd Interledger Workshop - ILP...Interledger Workshop Welcome to the 2nd July 6, 2016 @ Level39 Interledger Adrian Hope-Bailie Intro to the Project Live Stream: IRC:

Liquidity Curves Determine Exchange Rates

98

Connie

Page 99: Welcome to the 2nd Interledger Workshop - ILP...Interledger Workshop Welcome to the 2nd July 6, 2016 @ Level39 Interledger Adrian Hope-Bailie Intro to the Project Live Stream: IRC:

Connectors Set Rates per Ledger Pair

99

Ledger A

Ledger B

Ledger C

Ledger DA ⇒ B

A ⇒ C

A ⇒ D

Page 100: Welcome to the 2nd Interledger Workshop - ILP...Interledger Workshop Welcome to the 2nd July 6, 2016 @ Level39 Interledger Adrian Hope-Bailie Intro to the Project Live Stream: IRC:

Connectors Advertise Their Routes

100

A ⇒ BLedger Z Carmine

Page 101: Welcome to the 2nd Interledger Workshop - ILP...Interledger Workshop Welcome to the 2nd July 6, 2016 @ Level39 Interledger Adrian Hope-Bailie Intro to the Project Live Stream: IRC:

Synthetic Routes Are Created

101

A ⇒ BZ ⇒ A

Page 102: Welcome to the 2nd Interledger Workshop - ILP...Interledger Workshop Welcome to the 2nd July 6, 2016 @ Level39 Interledger Adrian Hope-Bailie Intro to the Project Live Stream: IRC:

Synthetic Routes Are Created

102

A ⇒ BZ ⇒ A

= Z ⇒ A ⇒ B

Page 103: Welcome to the 2nd Interledger Workshop - ILP...Interledger Workshop Welcome to the 2nd July 6, 2016 @ Level39 Interledger Adrian Hope-Bailie Intro to the Project Live Stream: IRC:

And Added to the Routing Table

103

Z ⇒ A ⇒ B

Connie

Z ⇒ A ⇒ C

Connie

Z ⇒ A ⇒ D

Connie

Page 104: Welcome to the 2nd Interledger Workshop - ILP...Interledger Workshop Welcome to the 2nd July 6, 2016 @ Level39 Interledger Adrian Hope-Bailie Intro to the Project Live Stream: IRC:

Routing Tables Grow Quickly

104

Z ⇒ A Local

Z ⇒ A ⇒ B

Connie

Z ⇒ A ⇒ C

Connie

Z ⇒ A ⇒ D

Connie

Z ⇒ C Local

Z ⇒ C ⇒ E Chao

Z ⇒ C ⇒ F Carl

Page 105: Welcome to the 2nd Interledger Workshop - ILP...Interledger Workshop Welcome to the 2nd July 6, 2016 @ Level39 Interledger Adrian Hope-Bailie Intro to the Project Live Stream: IRC:

Autonomous Systems

Page 106: Welcome to the 2nd Interledger Workshop - ILP...Interledger Workshop Welcome to the 2nd July 6, 2016 @ Level39 Interledger Adrian Hope-Bailie Intro to the Project Live Stream: IRC:

Core vs. Periphery

Page 107: Welcome to the 2nd Interledger Workshop - ILP...Interledger Workshop Welcome to the 2nd July 6, 2016 @ Level39 Interledger Adrian Hope-Bailie Intro to the Project Live Stream: IRC:

Routing a Payment

us.wf.bob.car1023.20

Page 108: Welcome to the 2nd Interledger Workshop - ILP...Interledger Workshop Welcome to the 2nd July 6, 2016 @ Level39 Interledger Adrian Hope-Bailie Intro to the Project Live Stream: IRC:

First We Route Up

us.wf.bob.car1023.20

Page 109: Welcome to the 2nd Interledger Workshop - ILP...Interledger Workshop Welcome to the 2nd July 6, 2016 @ Level39 Interledger Adrian Hope-Bailie Intro to the Project Live Stream: IRC:

Then Across

us.wf

us.wf.bob.car1023.20

Page 110: Welcome to the 2nd Interledger Workshop - ILP...Interledger Workshop Welcome to the 2nd July 6, 2016 @ Level39 Interledger Adrian Hope-Bailie Intro to the Project Live Stream: IRC:

Then Across

us.wf

us.wf.bob.car1023.20

Page 111: Welcome to the 2nd Interledger Workshop - ILP...Interledger Workshop Welcome to the 2nd July 6, 2016 @ Level39 Interledger Adrian Hope-Bailie Intro to the Project Live Stream: IRC:

And Finally Down

us.wf

us.wf.bob.car1023.20

us.wf.bob

Page 112: Welcome to the 2nd Interledger Workshop - ILP...Interledger Workshop Welcome to the 2nd July 6, 2016 @ Level39 Interledger Adrian Hope-Bailie Intro to the Project Live Stream: IRC:

And Finally Down

us.wf

us.wf.bob

us.wf.bob.carus.wf.bob.car1023.20

Page 113: Welcome to the 2nd Interledger Workshop - ILP...Interledger Workshop Welcome to the 2nd July 6, 2016 @ Level39 Interledger Adrian Hope-Bailie Intro to the Project Live Stream: IRC:

Some Ledgers Aren't Real Ledgers

us.wf

us.wf.bob

us.wf.bob.car

us.*

Page 114: Welcome to the 2nd Interledger Workshop - ILP...Interledger Workshop Welcome to the 2nd July 6, 2016 @ Level39 Interledger Adrian Hope-Bailie Intro to the Project Live Stream: IRC:

Questions?

Page 115: Welcome to the 2nd Interledger Workshop - ILP...Interledger Workshop Welcome to the 2nd July 6, 2016 @ Level39 Interledger Adrian Hope-Bailie Intro to the Project Live Stream: IRC:

Coffee Break!

Page 116: Welcome to the 2nd Interledger Workshop - ILP...Interledger Workshop Welcome to the 2nd July 6, 2016 @ Level39 Interledger Adrian Hope-Bailie Intro to the Project Live Stream: IRC:

Building with ILP

Evan Schwartz

Stack, Clients, Ledger Plugins

Page 117: Welcome to the 2nd Interledger Workshop - ILP...Interledger Workshop Welcome to the 2nd July 6, 2016 @ Level39 Interledger Adrian Hope-Bailie Intro to the Project Live Stream: IRC:
Page 118: Welcome to the 2nd Interledger Workshop - ILP...Interledger Workshop Welcome to the 2nd July 6, 2016 @ Level39 Interledger Adrian Hope-Bailie Intro to the Project Live Stream: IRC:
Page 119: Welcome to the 2nd Interledger Workshop - ILP...Interledger Workshop Welcome to the 2nd July 6, 2016 @ Level39 Interledger Adrian Hope-Bailie Intro to the Project Live Stream: IRC:
Page 120: Welcome to the 2nd Interledger Workshop - ILP...Interledger Workshop Welcome to the 2nd July 6, 2016 @ Level39 Interledger Adrian Hope-Bailie Intro to the Project Live Stream: IRC:

The “Five Bells” Stack

f-b-wallet-client f-b-wallet-client

f-b-wallet f-b-wallet

f-b-ledger f-b-ledger

f-b-connector

Application

Ledger

Interledger

Page 121: Welcome to the 2nd Interledger Workshop - ILP...Interledger Workshop Welcome to the 2nd July 6, 2016 @ Level39 Interledger Adrian Hope-Bailie Intro to the Project Live Stream: IRC:

What about other ledgers?

Page 122: Welcome to the 2nd Interledger Workshop - ILP...Interledger Workshop Welcome to the 2nd July 6, 2016 @ Level39 Interledger Adrian Hope-Bailie Intro to the Project Live Stream: IRC:

Supporting Different Ledger Types

f-b-ledger

f-b-connector

Ledger

Interledger js-ilp

Page 123: Welcome to the 2nd Interledger Workshop - ILP...Interledger Workshop Welcome to the 2nd July 6, 2016 @ Level39 Interledger Adrian Hope-Bailie Intro to the Project Live Stream: IRC:

Plugins Provide Abstractions Over Different Ledgers

f-b-ledger

f-b-connector

Ledger

Interledger js-ilp

js-ilp-plugin-bells

js-ilp-plugin-bells

Page 124: Welcome to the 2nd Interledger Workshop - ILP...Interledger Workshop Welcome to the 2nd July 6, 2016 @ Level39 Interledger Adrian Hope-Bailie Intro to the Project Live Stream: IRC:

IL-RFC-4: Ledger Plugin InterfaceAn abstraction interface for Interledgerclients and connectors to communicate and route payments across different ledger protocols.

github.com/interledger/rfcs

Page 125: Welcome to the 2nd Interledger Workshop - ILP...Interledger Workshop Welcome to the 2nd July 6, 2016 @ Level39 Interledger Adrian Hope-Bailie Intro to the Project Live Stream: IRC:

github.com/interledger/rfcs

Page 126: Welcome to the 2nd Interledger Workshop - ILP...Interledger Workshop Welcome to the 2nd July 6, 2016 @ Level39 Interledger Adrian Hope-Bailie Intro to the Project Live Stream: IRC:

Plugins For Any Type of Ledger

???-ledger

f-b-connector

Ledger

Interledger js-ilp

js-ilp-plugin-???

js-ilp-plugin-???

Page 127: Welcome to the 2nd Interledger Workshop - ILP...Interledger Workshop Welcome to the 2nd July 6, 2016 @ Level39 Interledger Adrian Hope-Bailie Intro to the Project Live Stream: IRC:

What if there is no ledger?

Page 128: Welcome to the 2nd Interledger Workshop - ILP...Interledger Workshop Welcome to the 2nd July 6, 2016 @ Level39 Interledger Adrian Hope-Bailie Intro to the Project Live Stream: IRC:

ILP Trustlines

Ben Sharafian

“Dial-Up” ILP Using Credit

Page 129: Welcome to the 2nd Interledger Workshop - ILP...Interledger Workshop Welcome to the 2nd July 6, 2016 @ Level39 Interledger Adrian Hope-Bailie Intro to the Project Live Stream: IRC:

ILP-EnablementDoing It 'The Right Way'

Page 130: Welcome to the 2nd Interledger Workshop - ILP...Interledger Workshop Welcome to the 2nd July 6, 2016 @ Level39 Interledger Adrian Hope-Bailie Intro to the Project Live Stream: IRC:

ILP-EnabledLedger

LedgerPlugin

Alice 100

Connector 0

The Normal ILP Flow (No Trustlines)

Ledger PluginConnector

Page 131: Welcome to the 2nd Interledger Workshop - ILP...Interledger Workshop Welcome to the 2nd July 6, 2016 @ Level39 Interledger Adrian Hope-Bailie Intro to the Project Live Stream: IRC:

Adoption To-DateStatus: Not Great

Page 132: Welcome to the 2nd Interledger Workshop - ILP...Interledger Workshop Welcome to the 2nd July 6, 2016 @ Level39 Interledger Adrian Hope-Bailie Intro to the Project Live Stream: IRC:

???

An ILP Ledger Is Not Always Available

Connector(The Nerd)

Developer(The Noob)

Page 133: Welcome to the 2nd Interledger Workshop - ILP...Interledger Workshop Welcome to the 2nd July 6, 2016 @ Level39 Interledger Adrian Hope-Bailie Intro to the Project Live Stream: IRC:

Protocols Have Humble Beginnings

Page 134: Welcome to the 2nd Interledger Workshop - ILP...Interledger Workshop Welcome to the 2nd July 6, 2016 @ Level39 Interledger Adrian Hope-Bailie Intro to the Project Live Stream: IRC:

Connector(The Nerd)

ILP-PluginVirtual

Developer(The Noob)

ILP Flow With Trust-lines

Balance 15

Page 135: Welcome to the 2nd Interledger Workshop - ILP...Interledger Workshop Welcome to the 2nd July 6, 2016 @ Level39 Interledger Adrian Hope-Bailie Intro to the Project Live Stream: IRC:

Connector(The Nerd)

ILP-PluginVirtual

Developer(The Noob)

ILP Flow With Trust-lines

ACH, SEPA, PayPal, ...

Balance 15

Page 136: Welcome to the 2nd Interledger Workshop - ILP...Interledger Workshop Welcome to the 2nd July 6, 2016 @ Level39 Interledger Adrian Hope-Bailie Intro to the Project Live Stream: IRC:

Connector(The Nerd)

ILP-PluginVirtual

Developer(The Noob)

ILP Flow With Trust-lines

Cash

Balance 15