HNHacker News
TopNewBestAskShowJobs

SJoelKatz

6 karma · joined September 28, 2013

CTO at Ripple and one of the original architects of the XRP Ledger.

[ my public key: https://keybase.io/joelkatz; my proof: https://keybase.io/joelkatz/sigs/NqN4n-gh2RHLCZFTcKEUjaqRILjMkhwR2cPunsUIR1I ]

submissionscomments
SJoelKatz··on HSBC is killing my business, piece by piece 
This was the entirely predictable result of regulations on financial institutions that have become more and more idiotic. Imagine if we had decided to fight drug dealers and terrorism by prohibiting any restaurant or grocery store from knowingly selling food to drug dealers and terrorists. We would see this same nonsense with food that we see with finance.

If we're going to fight drug dealers and terrorists, it shouldn't be by trying to push them to the fringes of our financial system, it should be putting them in jail.

https://steemit.com/politics/@joelkatz/the-war-on-cash

SJoelKatz··on [dead]
I agree. It appears the Softpedia erroneously changed the term "Bitcoin developers" to "Bitcoin Core developers" and other news sites copied the error.
SJoelKatz··on Ripple is officially open source
Either the value of the currency will increase or it won't. If it won't increase, then Ripple Labs will have no reward. If it will increase, then early adopters who buy and hold XRP will be rewarded.

Say Ripple Labs currently holds a chunk of XRP worth $X. Say by January, it goes up to $Y. Then Ripple Labs will turn $X into $Y between now and January. Except an early adopter who bought $X worth of XRP today would also turn $5X into $Y over that same time frame.

The cost to buy Bitcoins is usually pretty close to the cost to mine them, so Bitcoin early adopters didn't get their Bitcoins for free either. Using mining to reward early adopters has proven to be economically infeasible. The cost and reward of mining will adjust, as mining becomes profitable or unprofitable, such that mining will not generally be more rewarding than anything else people might do.

Bitcoin took a lot of criticism for rewarding early adopters. So this is really a "damned if you do, damned if you don't" kind of thing.

SJoelKatz··on Ripple is officially open source
The concept of "premined" doesn't really apply to a scheme that has no mining. For currencies that use proof of work to solve the double spend problem, mining is a good way to reward miners for providing the useful service of ensuring sufficient proof of work to secure the currency and make it useful before it's possible to do so with transaction fees.

Because Ripple has no need for mining, implementing mining to distribute the currency would basically just be paying people to waste electricity. It would make no sense, and an actual valuable asset (electricity) would be destroyed in the process.

Bitcoin has demonstrated that mining at a significant profit quickly becomes impossible. So long as mining is particularly profitable, more people will do it. More and more resources compete for ever smaller shares of the pie.

Where it secures the currency and the transactions, as it does in Bitcoin, it's an essential service that is worth paying for. Where it is not needed for that purpose, it's a colossal waste of a significant fraction of the value that Bitcoin creates.

SJoelKatz··on Ripple is officially open source
Not so for two reasons. First, the number of IP addresses you have is irrelevant. Trust is weighted by the number of signatures made with keys that a server has chosen to trust. Second, you can't "change the consensus". Once a consensus is reached on a given ledger, it's irrevocable. Every validator that witnesses the consensus signs the resulting ledger providing cryptographic proof that they agreed to that particular consensus. A transaction is not considered confirmed until the server possesses that cryptographic proof.
SJoelKatz··on Ripple is officially open source
All the servers are agreeing with each other. You could just as well wait for any other reliable servers to come to a consensus amongst themselves and it would work just as well.

It is true that today we control the majority of validators that other important servers trust. We're working now on increasing the number of validators because that will improve the reliability and robustness of the network. We absolutely do not want people to have to trust us, or even think they have to trust us, so this is a real priority for us. Open sourcing the server was, obviously, a step in this direction.

SJoelKatz··on Ripple is officially open source
You can have an order book between any two assets. The pathfinding engine will prefer whatever path is cheapest, assuming it's not too long for it to find. For example, the USD/Bitstamp <-> BTC/Bitstamp order book is quite popular.

This is important because the price of XRP is not very stable now. If you wanted to keep offers up for USD to EUR, it would be very irritating if you had to pull down and replace a USD->XRP and XRP->EUR offer every time the price of XRP changed (to prevent one order from being too good and the other too bad). Also, if you couldn't place a USD->EUR offer, what would you do if you really wanted to trade USD for EUR? You can't place an XRP->EUR offer because you don't have the XRP yet. And if you place a USD->XRP offer, you wind up with XRP that you didn't want.

In the future, if the price of XRP becomes more stable, order books to and from XRP may become more popular. But still people who just don't want XRP will place offers on order books directly between assets other than XRP.

Whether or not XRP is a currency is really an arbitrary thing. I just want people to understand what XRP is and what its role in Ripple is. If they think that makes it a currency, then fine. If they think it doesn't, also fine.

SJoelKatz··on Ripple is officially open source
They can't set balances to whatever they want. They have to justify each switch from ledger to ledger with signed transactions. (Just like miners in Bitcoin can choose the transactions to include in their blocks but can't just create Bitcoins out of thin air or teleport them from one account to another.)
SJoelKatz··on Ripple is officially open source
Don't confuse the Ripple payment network with ripples, its native currency. You can use the payment network to transact in currencies like dollars and Euros.
SJoelKatz··on Ripple is officially open source
The quote from ripplescam.org just says what we all know, we all have to agree on a blockchain (in the case of Bitcoin) or a ledger (in the case of Ripple) or the system breaks. Part of it is false though, you can connect to servers not run by us. So long as they're also trying to agree with us (or those who are trying to agree with us), it will work. Ripple uses a distributed agreement protocol to order transactions. You have to try to agree with other people who are trying to agree. The group of people trying to agree that includes us defines the dominant transaction ordering (at the moment). But this is equally true of anyone else in the group we are in. It's the group that matters.

I don't see why minimizing the number of validators is attractive. We want as many as possible precisely because that ensures that administrative control can't be seized. It's just like mining in Bitcoin -- you want it distributed into the hands of as many people as possible as evenly as possible. We are working on making this happen now. Obviously, open sourcing the server was a necessary stop to broadening the validators.

SJoelKatz··on Ripple is officially open source
That description kind of fits both classic Ripple and the new Ripple, but it does fit classic Ripple better. The new Ripple does fully support social/community credit. But it's targeted more, at least for the near future, at acting as a payment system.
SJoelKatz··on Ripple is officially open source
Each Ripple server does validate all the data completely and cannot be tricked. Ripple uses consensus to establish transaction ordering.

Ripple does have only a small number of server nodes today, but that should be growing over time. A node cannot freely set balances. Each node signs each ledger and any change to a ledger entry (such as a balance) must be accompanied by a signed transaction justifying that change or other nodes will reject it.

Nodes are in fact called "validators" and they validate each ledger to ensure that any changes are justified by transactions. They sign these ledgers every few seconds.

As for the peering needing to be centrally controlled, I assume you're referring to each node's set of validators. While that does need to be sanely managed, it doesn't need to be centrally controlled. A number of organizations can publish lists of validators they believe to be reliable. The algorithm is very tolerant of things like minimal overlap or bad apples. Every honest node wants to agree with every other honest node, and dishonesty is impossible to hide, so the problem is not that difficult.

(I'm one of the architects of the Ripple network.)