ivanc
Newbie
Offline
Activity: 56
Merit: 0
|
|
April 17, 2013, 05:18:10 PM |
|
@ JoelKatz : Thanks, this is a really thorough explanation. Sorry again, i was supposed to read the specifications first instead of asking on a public forum. I'm sure other people are as lazy as i am though, and you will have to convince them too.
Straight away, and with my limited knowledge of how Bitcoin or Ripple works, I have to say that i don't know if you will find a fixed point (stability) in your consensus dynamics. If you do, it will be more complicated than with Bitcoin. If you don't, it doesn't matter that much anyway since you will be able to fix this with a bit of centralization. In any case, people might say your spec is less perfect than Bitcoin, although your system does have nice properties too that Bitcoin doesn't have.
Bitcoin has the "stability property" and it's quite simple to prove, what i mean is that people with majority computing power are incentivized to follow the original algorithm, because that's the one that maximizes returns for them. Hence limiting the potential for divergence and mis-behaving peers. The current mining and transaction behavior, fees, etc. , is a stable point.
My feeling is that your hardest problem to tackle will be how to prevent DOSes attacks coming from sybil attacks, and that it will make your algorithm very complicated once you address all the different scenarios.
Anyway, nice project, now my turn to read all these papers properly.
EDIT: by the way, i'm the designer of a rather large and well known proprietary P2P network (not sure if it's wise to put the name in my signature), that's how i started being interested in Bitcoin a couple of weeks ago.
|
|
|
|
grondilu
Legendary
Offline
Activity: 1288
Merit: 1080
|
|
April 17, 2013, 05:34:57 PM |
|
How can I know about which servers will not conspire? I can just make a wild guess but unless I know people who run them IRL or something, I have no clue. Maybe lots of servers really want to screw the system and will actually conspire.
|
|
|
|
grondilu
Legendary
Offline
Activity: 1288
Merit: 1080
|
|
April 17, 2013, 05:45:33 PM |
|
I mean, there is a statistical analysis to make about this "trust a set of servers not to conspire against me" concept. Has it been done?
Let's say there are 100 servers and people are requested to select at least 10 servers.
Among the 100 servers, there might be 10 of them that are actually secretly controlled by a super-villain. He plans on the odds of a user picking exactly his ten servers in his list.
What are those odds? If a user picks 10 servers randomly out of the 100 servers, there are 456440 ways to do that.
Doesn't that mean that the super-villain can screw one user out of 456440? If there are a large number of users, this number might not be negligible.
Now, I picked some random numbers, but the generic case should be studied. One should wonder what proportion of the total number of servers a villain should control in order to be able to screw a given proportion of users randomly selecting a list of servers.
|
|
|
|
FandangledGizmo
Legendary
Offline
Activity: 1138
Merit: 1001
|
|
April 17, 2013, 05:46:55 PM |
|
BTC has already won the race, it is the first, most widely supported online store of wealth by virtue of its mathematical security and limited inflation.
I expect Ripple and many other online currency type options will be much better suited for day to day purchases than BTC
A digital currency suited to being an online store of wealth looks like BTC. A digital currency suited for day to day purchases looks different, faster confirmation times, and more inflationary to prevent hoarding.
A main problem now is converting fiat to BTC and vice versa, but as long as BTC is convertible to whatever the most popular digital future transaction method is, say Ripple, then this problem is eliminated.
|
|
|
|
JoelKatz
Legendary
Offline
Activity: 1596
Merit: 1012
Democracy is vulnerable to a 51% attack.
|
|
April 17, 2013, 06:25:26 PM |
|
How can I know about which servers will not conspire? I can just make a wild guess but unless I know people who run them IRL or something, I have no clue. Maybe lots of servers really want to screw the system and will actually conspire. There are a lot of ways you could potentially know that they won't conspire. Remember, the end result of them conspiring is basically that they make the Ripple network unusable. So you can pick people who have no rational reason to conspire to make the Ripple network unusable. We imagine the primary way people will choose validators will probably be, at least initially, by domain. So you can pick the domains of entities that you know have an interest in keeping Ripple running reliably. I can also imagine organizations formed to maintain lists of validators and verify their identity. Generally, you should try to add things to your list rather than not. It might increase the chance that you can be duped into finding your server not working, but it ensures that if there is a ledger split, you will know it. You also want to choose validators who also choose their validators wisely. That way, knowing that they declare the network stable and that you agree with them carries more meaning. The algorithm is remarkably forgiving, stunningly so. When I first started simulating it, I genuinely expected that you would need significant list overlap for the algorithm to be stable, and I expected a small number of malicious attackers to render it unstable. The truth is quite the reverse. It's remarkably stable because if the algorithm detects any instability, everyone just immediately switches to voting no on any transactions not assured approval. (This causes no harm because any fully valid transactions just go in the next set.) It works, unless the majority is conspiring and dishonest, because every honest node wants it to. Also, I should point out that dishonest and untrustworthy does not mean conspiring. I don't trust the government of the State of Israel, I don't trust North Korea, and I don't trust Al Qaeda, but I'd add all three of these to my "trust not to conspire" list because they're very hard to conspire with. Though it's not in the code currently, it's not too hard to measure validator quality. So if a particular validator is consistently delaying consensus or validating wrong ledgers, you can automatically reduce their dynamic trust. When we observe how the network really operates after it's decentralized, we can add features like that.
|
I am an employee of Ripple. Follow me on Twitter @JoelKatz 1Joe1Katzci1rFcsr9HH7SLuHVnDy2aihZ BM-NBM3FRExVJSJJamV9ccgyWvQfratUHgN
|
|
|
misterbigg
Legendary
Offline
Activity: 1064
Merit: 1001
|
|
April 17, 2013, 06:30:39 PM |
|
...the end result of them conspiring is basically that they make the Ripple network unusable. You should be more explicit in defining usability. From what I have read so far, you mean to say that the worst that a conspirator can do is cause ledgers to stop being closed, leaving the state stuck at whatever the last closed ledger is until a manual process intervenes. Attackers cannot rewrite account balances or perform double spends. (?)
|
|
|
|
JoelKatz
Legendary
Offline
Activity: 1596
Merit: 1012
Democracy is vulnerable to a 51% attack.
|
|
April 17, 2013, 06:56:53 PM Last edit: April 17, 2013, 10:26:57 PM by JoelKatz |
|
From what I have read so far, you mean to say that the worst that a conspirator can do is cause ledgers to stop being closed, leaving the state stuck at whatever the last closed ledger is until a manual process intervenes. Let me start out by point out that someone will have to do an enormous amount of work to control any significant fraction of many people's trust lists. And as soon as they even try to misuse this, as soon as people can act, they will be removed from those lists. (In some cases, that can even be automated.) And they will have very little to show for their effort. But if you imagine moving far from anything sane towards the absurd, as you increase the poor topology of peoples' validator lists and the number of corrupt validators and how many people trust them, their potential for harm goes from slowing consensus to stopping consensus to causing ledgers to diverge. However, if the validators you trust have diverged, you will know it. In that case, it's basically as if they could stop consensus, because you wouldn't know which side of the fork to trust so in practice couldn't trust either. Attackers cannot rewrite account balances or perform double spends. (?) You don't have to let them. You don't need a consensus or agreement to know the past. And you can refuse to switch to a ledger no matter how many validators sign it if they can't provide the transactions to get from whatever ledger you've accepted to whatever ledger they claim. There's something of a tradeoff here. For example, say your server has been shut off for a day for some reason and then you start it up. To ensure there are no double spends and no rewriting of account balances, you'd have to perform every transaction before you did anything else. If you didn't bother with that check, you could just jump to the ledger they're claiming is correct (and fetch history later if you still wanted it). That would mean though that you would begin operation before you knew if they hadn't changed some ledger entry without a correct corresponding transaction. I think there's merit to both approaches. Probably what it will end up being, by default, is to jump ledgers if you were down for "too long" and do a full validation if you weren't down for very long. This will protect you from everything but happening to be down for a long time while someone takes over the Ripple network and it will still allow you start back up quickly and fill in history lazily. The paranoid can always demand a path of signed and checked transactions be provided to get from a ledger they've accepted as valid to the claimed valid ledger.
|
I am an employee of Ripple. Follow me on Twitter @JoelKatz 1Joe1Katzci1rFcsr9HH7SLuHVnDy2aihZ BM-NBM3FRExVJSJJamV9ccgyWvQfratUHgN
|
|
|
chronocoin
Newbie
Offline
Activity: 39
Merit: 0
|
|
April 17, 2013, 07:11:51 PM |
|
Less than viable investment or protocol, or so it appears at the moment.
|
|
|
|
Beepbop
|
|
April 17, 2013, 10:37:01 PM |
|
I'm not sure what you mean. I think you're viewing Ripple and Bitcoin through an unreasonably competitive lens. Ripple and Bitcoin are not going to be like Coke and Pepsi any time soon, If Coke is USD, and Pepsi is EUR, then Bitcoin is New Coke and Ripple is a system of tubes that sprays any liquid you want to deliver into your friends' mouths. XRP would be the pressurized air that runs this system of tubes; you can trade bottles of this pressurized air but you can't drink it, only use it to send liquids throught the tubes. And you'd only let those you trust pour things into your mouth over the internet, so if you want give some raw milk to a friend of a friend in Japan, you pour the raw milk into the mouth of a mutual friend that you both trust, and he'll forward the raw milk to the guy in Japan. Excelsior!
|
|
|
|
bitcoinbeliever
Newbie
Offline
Activity: 54
Merit: 0
|
|
April 18, 2013, 12:34:31 AM |
|
Ripple is an innovative banking system. As such, even if it were perfect technically, it is completely unknown how such an inclusive system will turn out to work AS A BANKING SYSTEM, with all the risks thereto pertaining. Kudos to the creators for letting us find out.
If I ran a bank, I would not welcome competition that put pressure on prices for money transfers and currency exchanges. However, those are pretty small revenue sources for banks. Won't they just match the low price?
Bitcoin, on the other hand, is a technical solution to a problem that it turned out is susceptible in its totality to such a solution, namely, digital cash.
|
|
|
|
freedomno1
Legendary
Offline
Activity: 1806
Merit: 1090
Learning the troll avoidance button :)
|
|
April 19, 2013, 05:46:04 AM |
|
Battle between a centralized virtual currency and a decentralized virtual currency Which one will win only time will tell Possibility of both winning and existing in tandem just as likely as well
|
Believing in Bitcoins and it's ability to change the world
|
|
|
mmeijeri
|
|
April 19, 2013, 06:20:34 AM Last edit: April 19, 2013, 07:18:42 AM by mmeijeri |
|
Battle between a centralized virtual currency and a decentralized virtual currency Which one will win only time will tell Possibility of both winning and existing in tandem just as likely as well
Ripple will be just as decentralised as Bitcoin. The protocol is already as decentralised, but currently all servers are owned by OpenCoin and its partners. That will change once the server is released and open-sourced. They will have to do this, or few people will trust the system.
|
ROI is not a verb, the term you're looking for is 'to break even'.
|
|
|
dadrizforshizz
Newbie
Offline
Activity: 42
Merit: 0
|
|
April 23, 2013, 05:08:20 PM |
|
Basically Ripple has an army of their own investors stalking everything from coinbase to reddit to ensure that their system of currency exchange doesnt fail. They must have huge chunks invested in it already and for that very reason, you should stay far away.
|
|
|
|
JoelKatz
Legendary
Offline
Activity: 1596
Merit: 1012
Democracy is vulnerable to a 51% attack.
|
|
April 23, 2013, 05:13:04 PM Last edit: April 23, 2013, 05:33:54 PM by JoelKatz |
|
Basically Ripple has an army of their own investors stalking everything from coinbase to reddit to ensure that their system of currency exchange doesnt fail. They must have huge chunks invested in it already and for that very reason, you should stay far away.
Are you trying to leave more for everyone else or do you just prefer to wait for something more likely to fail?
|
I am an employee of Ripple. Follow me on Twitter @JoelKatz 1Joe1Katzci1rFcsr9HH7SLuHVnDy2aihZ BM-NBM3FRExVJSJJamV9ccgyWvQfratUHgN
|
|
|
hashman
Legendary
Offline
Activity: 1264
Merit: 1008
|
|
April 23, 2013, 07:35:30 PM |
|
The XRP production schedule could be set to create 100 billion XRP over the course of 10 years at either a fixed or a decelerating rate, with the target difficulty adjusted to maintain the rate of production.
XRP is a premined altcoin tacked onto the ripple project only to pay the developers, er, board of directors. Plus, Ripple gets guidance via CEO and a board of directors who are doing the legwork to make the system successful, instead of a bunch of neckbeards whose idea of satisfying customers is implementing "M of N signature transactions".
We're working hard to make the board of directors and CEO a lot of coins. We are not really interested in helping people secure financial transactions.
|
|
|
|
Gordonium
|
|
April 23, 2013, 08:14:31 PM |
|
Could Ripple XRP replace Becton
No, it couldn't.
|
|
|
|
fancy_pants
|
|
April 24, 2013, 12:27:14 AM |
|
If Coke is USD, and Pepsi is EUR, then Bitcoin is New Coke and Ripple is a system of tubes that sprays any liquid you want to deliver into your friends' mouths. XRP would be the pressurized air that runs this system of tubes; you can trade bottles of this pressurized air but you can't drink it, only use it to send liquids throught the tubes. And you'd only let those you trust pour things into your mouth over the internet, so if you want give some raw milk to a friend of a friend in Japan, you pour the raw milk into the mouth of a mutual friend that you both trust, and he'll forward the raw milk to the guy in Japan. Excelsior! Someone really needs to put this quote on a t-shirt and sell them at the bitcoin conference in May.
|
|
|
|
herzmeister
Legendary
Offline
Activity: 1764
Merit: 1007
|
|
April 24, 2013, 07:49:03 AM |
|
|
|
|
|
Mitzplik
Member
Offline
Activity: 102
Merit: 10
|
|
May 10, 2013, 06:48:25 PM |
|
About the gateways specifically, I have this thought:
If I have a profitable business in country "A", and convert my dollars into ripple dollars and send it to a gateway in another country. I will depend on someone to buy my ripple dollars. If it is the gateway itself they would depend on their capacity of selling my ripple dollars to someone else later. If its is someone biding for ripple dollars I will depend on someone willing to buy them. So, to withdrawal real money in the end of the line, I will depend on someone to buy my ripple dollars.
This means that ripple dollars, or euros, or whatever is in my ripple client is virtual money, and my ripple dollar could be worth a half fiat dollar, or the double.
So, they should just use XRP as a currency, because anything in my ripple wallet is a virtual thing that I will have to sell someone else for a real thing.
Am I nuts? or this makes sense?
|
|
|
|
Mitzplik
Member
Offline
Activity: 102
Merit: 10
|
|
May 10, 2013, 06:49:54 PM |
|
I meant "everything in my ripple wallet"
|
|
|
|
|