12

What incentive is there for someone to run their own Ripple client/server in order to make it an actual decentralized system? With Bitcoin, you can mine to generate new bitcoins and collect transaction fees. Is there a Ripple equivalent?

  • "other than supporting the Ripple network itself" – o0'. Feb 11 '13 at 17:06
9

There is no mining in Ripple. The incentive to run a client is to use the Ripple network. There are several incentives to running a server. The main one, as Lohoris suggested, is to support the network. This is the same reason Bitcoin nodes relay transactions.

From the wiki:

Anyone whose business relies on the network:
    Gateways
    Merchants
    Arbitragers
    Day traders 
Anyone who wants to support currency choice:
    Digital rights groups
    Libertarian groups
    Individuals 
Anyone who wants to support the underbanked:
    Organizations
    Individuals 
Anyone who wants to provide a public service:
    Universities
    Anyone who provides hosting services for open source projects 

As a high-volume merchant or arbitrager, running a node is the most efficient and reliable way to participate in the network. If nodes feel you aren't pulling your weight, they can either disconnect you or impose a proof of work requirement on you to remain connected to them. This is because legitimate high-volume queries are indistinguishable from abuse. As a fully-participating node, you can see transactions before they're voted into consensus sets.

  • 1
    Why would I need to run a node if I simply wish to use Ripple? The reason a lot of people still run full nodes is that they act as wallets too and that the blockchain isn't too large yet. I believe the majority of people don't simply donate bandwith and disk space to be "nice" or "support the network". – David Feb 12 '13 at 9:49
  • 2
    If you plan to impose high load, if you don't run a server, you may find that nobody is willing to serve your queries. Nobody has any obligation to provide you with access to the Ripple network, though in practice we hope many people will run open nodes that just insist other nodes pull their own weight and help as many clients as they can. – David Schwartz Feb 12 '13 at 10:33
1

I looked at the bitcoin gateway sample code on github, and its README said that to use it I need to set my ripple account up to forward what seem to amount to customer or routing numbers, basically so the app can match up incoming ripples or bitcoins with each other.

Its instructions how to do that were to send a command to a ripple server;

Here is the clincher, the reason I would want to fire up a ripple server of my own:

THE COMMAND SHOWN INCLUDES SECRET KEY.

In other words, in order to set my ripple acccount up to be able to have a web app convert between bitcoins and ripples, sending out bitcoins from my bitcoind on receipt of payments on the ripple network or sending out payments on the ripple network on receipt of bitcoins by my bitcoind, I AM SUPPOSED TO PASS MY SECRET TO A SERVER.

If I do not run that server myself, my so called secret would no longer be secret...

  • 1
    I believe the example was letting the server do the transaction signing for simplicity. Real clients can and should do the signing client side (unless they control the server and have verified they have a secure connection to it). – dchapes Apr 18 '13 at 13:27
  • Yeah, you should never send your secret to a server you don't control. You can use the rsign.js program to do the signing on your own machine without running your own server. – David Schwartz Jan 24 '14 at 11:37

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.