What happened to the original Ripple Project?

2

Today, Ripple is the third-largest cryptocurrency by market cap. It uses a consensus algorithm and its only clients seem to be large banks. They open sourced the code on github, but nodes have to be approved to join the network.

However, the original Ripple project was conceived by Ryan Fugger in 2004. It has to deal with IOUs between people, and that's why it was called ripple, as each transaction is implemented by shifting around IOUs in chains, like ripples in a pond.

I want to understand whether the original protocol had any serious flaws. unlike Bitcoin and other cryptocurrencies, it seems to NOT require a global ledger and global consensus to pay people. Instead it uses a "Network of Trust", similar to PGP vs DNS. Each person only deals with a few nodes. That makes it an extremely awesome fit for our own open source platform, which we built to allow any community to host their own social network the same way Wordpress hosts blogs. Basically, an African village, or a Cruise ship, or a Classroom in a university could have a social network for their community, possibly running on the local network without having to contact a remote server. Everyone has their own identities that persist as they join various communities.

Here are some videos on the original Ripple protocol, note they are all from 2010 and 2011:

We wanted to implement money inside these communities, and the idea of IOUs between people seems great. My questions are:

  • Was this abandoned, or is the current Ripple source code able to implement this on a local level?

  • Are there any serious downsides, like sybil attacks and ability to issue unlimited amounts of credit, that necessitated a shift to a global consensus protocol?

  • Why does the current Ripple protocol require a global consensus?

  • Can someone use the old Ripple design to make money between people actually work in a local community without a global singleton ledger?

Gregory Magarshak

Posted 2017-07-02T06:10:45.443

Reputation: 103

Nodes don't need to be approved to join the network! Start up a node and it will connect to the network, no approval needed.Nik Bougalis 2017-07-02T17:35:52.870

But if the network splits (let's say you are on a cruise ship) can you still make payments to one another during the sailing of the cruise ship? Or if you're in an African village etc.Gregory Magarshak 2017-07-02T18:55:04.853

Yes and no. No in the sense that you need to be able to send your transaction to the network and observe the results of the consensus to know if it went through or not. But you can work around that if you are using payment channels (XRP only) which don't require connectivity after their initial setup; you'd transact, as needed, and then simply settle all transactions, at once, when you got connectivity again.Nik Bougalis 2017-07-02T18:57:51.630

Wait a sec! WHY DOES RIPPLE EVEN NEED A GLOBAL LEDGER AND CONSENSUS? Each person extends a credit line to their friends, whom they trust. All you need is two sides to sign every transaction, and a routing algorithm. You don't need a global ledger to hold every transaction!Gregory Magarshak 2017-07-03T03:48:16.910

Ripple has a native cryptocurrency, XRP. Additionally, it supports advanced features like order books, payment pathfinding and a high-performance matching engine.Nik Bougalis 2017-07-03T03:55:10.040

But why does it require a global ledger for peer to peer payments?Gregory Magarshak 2017-07-04T23:06:30.820

Because it does more than peer to peer payments?Nik Bougalis 2017-07-10T01:47:25.530

But it doesn't really do peer to peer payments, only with banks. What about peer to peer payments and what happened to the original Ripple?Gregory Magarshak 2017-07-10T16:35:10.260

Is it here?

– None – 2018-09-15T07:33:26.013

Answers

2

  • Why does the current Ripple protocol require a global consensus?

  • Can someone use the old Ripple design to make money between people actually work in a local community without a global singleton ledger?

  • Wait a sec! WHY DOES RIPPLE EVEN NEED A GLOBAL LEDGER AND CONSENSUS? Each person extends a credit line to their friends, whom they trust. All you need is two sides to sign every transaction, and a routing algorithm. You don't need a global ledger to hold every transaction!

Short answer: That wouldn't be Ripple; it would be Open Transactions.

Longer answer: Imagine Alice wants to make a payment to Eve. She opens Ripple, and it finds a path from Alice -> Bob -> Charlie -> David -> Eve. She starts exchanging IOU's until her payment reaches Eve. However, David's node goes down partway through this, leaving Alice with an IOU from Charlie, which is worthless to her.

(There are ways of dealing with this without a consensus sytem by making transactions that are contingent upon knowing a preimage that only Alice knows, but there's not enough space in this answer to elaborate on that. Alternately, you can send the payment through in tiny chunks, so that only a small amount of money is trapped if the payment fails.)

In contrast, if you have a global consensus system, you can make this entire process atomic and uninterruptable.

Was this abandoned, or is the current Ripple source code able to implement this on a local level?

Don't know; haven't been following Ripple lately.

which we built to allow any community to host their own social network the same way Wordpress hosts blogs

It doesn't sound like you need global consensus. That's a good thing, because implementing something like that is almost always a huge pain in the ass.

Nick ODell

Posted 2017-07-02T06:10:45.443

Reputation: 26 536