Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

Now it gets interesting. For a long time the lack of an open-source server and the associated centralization was a big point of criticism against Ripple.

Personally I don't think we'll see much grassroots adoption of any cryptocurrency technology that can be categorized as "pre-mined" or anything less than full decentralization, and that includes both Ripple and Mastercoin.

Now if they're able to get the existing banking system on board they could have some chance. It sounds like they're handing out large chunks of XRP (the Ripple cryptocurrency) to companies that implement Ripple integration as an incentive.



Ripple is still semi-centralized. If Alice and Bob trust different nodes they may end up with different ledgers and thus they may be unable to transact. The only way to keep Ripple unified is for everyone to trust the same nodes, which is the definition of centralization.


Yup. And this is why it won't gain the kind of adoption that Bitcoin is getting. I don't trust it any more than I trust a human.


This is incorrect. All Ripple servers go through a consensus process to validate transactions; after which the Last Closed Ledger (LCL) is generated and sent to every server.

Every server has a copy of the LCL, so there can't be a case of ledgers being different anyway.

Anyone on Ripple can send XRP to anyone else regardless of who they trust; in order for Alice and Bob to transact in a currency other than XRP, the Ripple network will find a path between them to allow the transaction.

There a video from Ripple Labs that explains how consensus works: http://ripplefederation.org/videos/how-ripple-works-gateways....


Nope, it's entirely correct. During the consensus process, each server only listens to servers that its operator has marked as trusted - there is no way for servers outside the trusted clique to affect in the consensus within the clique. This has a few consequences:

- Currently, there's a small clique of servers run by OpenCoin Inc and their partner businesses which only trust each other and which everyone uses. The ledger closure process and transaction acceptance are effectively centrally controlled by that group; if your server closes the ledger itself rather than waiting for the official ledger from on high, it will be permanently stuck on its own fork of the network.

- Because of the way the ledger closure process works, if you set up your server wrong and end up in a part of the trust network that's poorly connected to the official servers you will end up permanently stuck on your own fork of the transaction history. (In practice, since you can't disagree with the official OpenCoin servers and you can't influence their consensus, you should just set your trust list to the OpenCoin-approved list exactly and forget about peer-to-peer stuff.)

- There's a mandatory transaction fee in a virtual currency, XRP, and unlike in Bitcoin the XRP used in that transaction fee is destroyed. The fee is set as part of the ledger consensus process, which is controlled by OpenCoin Inc. They also control the supply of XRP. In effect, there's a central organisation with the power to charge arbitrarily large fees for the use of Ripple.


Other than having a Ripple wallet, I have no affiliation with Ripple Labs. That being said, I'd like to respond to this article.

Nope, it's entirely correct. During the consensus process, each server only listens to servers that its operator has marked as trusted - there is no way for servers outside the trusted clique to affect in the consensus within the clique.

No, it's entirely incorrect; you have a misunderstanding of how the consensus process works[^1]. To reach consensus, all nodes have to agree on the set of changes to be applied to the ledger.

A server gets proposals for these changes from the servers on its Unique Node List[^2]. But in order for these transactions to be applied to the next ledger, enough of them have to match transactions coming from other servers on the network the aren't on the UNL. If a transaction from a server matches a transaction proposed by servers on the UNL, it gets a vote.

This process repeats until 80% of the transactions match from the UNL matches everyone else's, which is the threshold for mathematical certainty. And remember, every node on your UNL is doing this same process with the nodes on their UNLs, which makes it decentralized.

When you're running a server, you don't trust the nodes on the UNL; you just trust that more 50% of them won't collude against you.

Currently, there's a small clique of servers run by OpenCoin Inc and their partner businesses which only trust each other and which everyone uses.

Also incorrect. As of 2013.09.02, there were 30 public servers and 11 validators on the Ripple network[^3]; most likely, there are more now.

This Ripple wiki[^4] says "As long as there is some minimal degree of inter-connectivity between UNLs consensus will rapidly be reached. This is primarily because every honest node's primary goal is to achieve a consensus."

And since anyone can download and run the Ripple server software, anyone who does so is part of this so-called "small clique of servers everyone uses".

Of course there will be bad actors on the net running questionable servers and validators. But we're on this thing called the internet; we could share data on which servers to trust and stuff[^5]

The ledger closure process and transaction acceptance are effectively centrally controlled by that group; if your server closes the ledger itself rather than waiting for the official ledger from on high, it will be permanently stuck on its own fork of the network.

Not only is this incorrect, but it shows either you don't actually understand how this works or you have some agenda for making shit up…

There is no such thing as an "official" ledger and there's no "from on high" (the network topology is a graph; there's no hierarchy). By definition, a server can not close a ledger itself; a ledger can only close when there's agreement among the servers and validators using the consensus process.

And even in the the case of disaster where the network splits in half and there are conflicting transactions and ledgers, when the network is reconnected, everything get back into sync.[^6]

Because of the way the ledger closure process works, if you set up your server wrong and end up in a part of the trust network that's poorly connected to the official servers you will end up permanently stuck on your own fork of the transaction history. (In practice, since you can't disagree with the official OpenCoin servers and you can't influence their consensus, you should just set your trust list to the OpenCoin-approved list exactly and forget about peer-to-peer stuff.)

Even if you use the default UNL (which can be changed at anytime regardless), you're still participating in a peer-to-peer network and you're still part of the distributed consensus process. Nice try though. And remember, we don't trust everyone on the UNL; we just trust that most of them won't collude against us.

There's a mandatory transaction fee in a virtual currency, XRP, and unlike in Bitcoin the XRP used in that transaction fee is destroyed.

* the fee exists to protect the network from spam transactions and denial of service attacks, as it would cost a spammer a lot of XRP to pull this off; the more transactions they'd attempt to send, the more expensive each transaction becomes

* the transaction fees are ridiculously small; the base fee is 0.00001 XRP.

* I swapped (using the Ripple network's built-in distributed exchange[^7])$1.16 for 25 XRP last night for 0.000025 XRP. That's $0.00075 for those of you playing at home. ;-). This lovely animation shows the details: https://ripple.com/graph/#2EF43881B82AE8FBA31A2C3272E61CBC2E...

* It's true that the Bitcoin protocol doesn't destroy bitcoin to make transactions. However, from the user's point of view, paying a fee for Ripple transactions is no different than paying fees for Bitcoin transactions.

The fee is set as part of the ledger consensus process, which is controlled by OpenCoin Inc. They also control the supply of XRP. In effect, there's a central organisation with the power to charge arbitrarily large fees for the use of Ripple.

Ripple Labs (née OpenCoin) doesn't control the ledger consensus process; if they did, it wouldn't be consensus right? The Ripple protocol is open source (you know, like SMTP or TCP/IP); they don't own or operate the network, therefore they don't charge fees--large or otherwise.

I know this may come as a shock, but fees are set by consensus, not by Ripple Labs:

>A node can introduce a transaction to change the base fee. If a trust-weighted majority of nodes vote "yes" on the transaction, it will be incorporated into the ledger and the fee will be changed.[^8]

Yes, Ripple Labs created 100 billion XRP and has committed to gift 55 billion of them over time to "charitable organizations, users, and strategic partners".[^9]

I got XRP from the GitHub giveaway[^10]; everything appeared to be on the up and up. I expect there will be all kinds of giveaways for years to come.

[^1]: https://ripple.com/wiki/UNL

[^2]: http://www.youtube.com/watch?v=pj1QVb1vlC0&feature=youtu.be

[^3]: http://bitcoin.stackexchange.com/questions/13551/how-big-is-...

[^4]: https://ripple.com/wiki/Consensus#Technical_Description

[^5]: https://ripple.com/forum/viewtopic.php?f=1&t=3881&p=19414#p1...

[^6]: http://bitcoin.stackexchange.com/questions/13330/what-is-the...

[^7]: https://ripple.com/distributed-fx/

[^8]: http://bitcoin.stackexchange.com/questions/7572/what-are-the...

[^9]: https://ripple.com/ripple_primer.pdf

[^10]: https://ripple.com/blog/git-in-the-game-2020-xrp-giveaway-fo...


You got clown dollars from Ripple. It just so happens that XRP has some value. It's pretty obvious that Ripple is buying back XRP to support the currency, despite its obvious scamware-nature. It is worthless and centralized, no different than some island coming up with a cryptocurrency and saying "trust in thee." No thanks.


It's pretty obvious that Ripple is buying back XRP to support the currency, despite its obvious scamware-nature.

There you go again making shit up. Again, Ripple ledger is open and available to anyone to look at, just like the bitcoin block chain.

Please show us where Ripple Labs is buying XRP. Oh yeah—you can't.

Like any currency, the price is based on supply and demand. We can see that buying and selling of XRP has increased dramatically in the last few week. That ain't Ripple Labs buying XRP but China certainly is: http://www.ripplelounge.com/1/post/2013/12/the-new-normal-in...


It's pretty obvious that Ripple Labs is buying back their own currency on the exchanges based on the volume. It's called damage control, and their plan is to uphold the fake value as long as they can, until people are duped enough to create volume for that 'fixed' price. Ripple is a scam, stop lying to yourself.


Ripple is a scam, stop lying to yourself.

It's pretty obvious that the only lying going on is coming from you.

It's pretty obvious that Ripple Labs is buying back their own currency on the exchanges based on the volume. It's called damage control…

Yes because Ripple Labs, fresh from raising [an additional $3.5 million in funding](http://www.finsmes.com/2013/11/ripple-labs-raises-3-5m-fundi...) was clearly in really bad shape.

And all of that volume happening on the various exchanges (like the 232,348.28 that traded on [RippleChina](https://ripplecharts.com/market/CNY:RippleChina/XRP) the past 24 hours) is mostly Ripple Labs buying XRP, right?

This is just… dumb. And it makes no sense.

Ripple Labs can slow down or even stop distributing XRP until the price goes back to where they'd want it. No need to do buybacks when RL (at least for now) control the vast majority of the currency.

You should stop with these posts; it's just getting more embarrassing.


> Ripple Labs can slow down or even stop distributing XRP until the price goes back to where they'd want it.

You should stop with these posts; it's just getting more embarrassing.


The video is misleading. There are possible network configurations where nodes keeping different trust lists will end up partitioned from each other (separate lost closed ledgers). OpenCoin, to my knowledge, has done nothing to fix this as it is a problem inherent in the consensus mechanism they are using. The way you fix it is using some other deterministic method for decentralized consensus... like proof of work.


Do you have a source for that claim? There is no reason why nodes with different trust lists would become partitioned. Even if a majority of the nodes were malicious, all they could do is prevent the honest nodes from reaching consensus. The honest nodes would effectively stop operating, as every ledger confirmed by the malicious group would be marked as unreliable by the honest group.


Yes, it's in the original bitcointalk thread where Ripple.com was announced. A note about your example: it's not a majority of all nodes, it's a majority of your trusted node list. Which is different for every node.


Nope, that's not how it works; perhaps you should do some research then get back to us? https://ripple.com/wiki/Consensus is a good place to start; there's also http://bitcoin.stackexchange.com/questions/13330/what-is-the....


Everyone doesn't have to trust the same nodes, the network will actually come to consensus with minimal overlap of trusted validators in the UNLs (and more importantly it will detect and halt when the network isn't coming to consensus, instead of forking like the bitcoin blockchain).

Besides, the definition of centralization is that there's a central authority with arbitrary power, such as changing balances or freezing accounts.


> minimal overlap of trusted validators

Does that mean it does an intersect of sets of trusted validators? How does it determine which sets of trusted validators to use? What if the intersection is the empty set?


What do you mean by "it"? There is only a p2p network, with each node acting independently. Nodes which are on multiple other nodes UNLs could be considered the intersection of a set. But it makes more sense to think of it as a directed graph. There's no such think as an "untrusted validator", if you run rippled and your node isn't on anyone else's UNL, then you aren't really part of the network because your votes aren't considered in anyone else's consensus decisions (but you would get real-time access to the proposals and candidate sets).

So the set of of validators which gets used is exactly the union of nodes in the UNLs. If you have two networks without any overlap in the UNLs, then you'd get two separate ledgers.

http://bitcoin.stackexchange.com/questions/13330/what-is-the...

http://bitcoin.stackexchange.com/questions/10227/why-does-ri...




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: