tl;dr: Proposal and prototype for a distributed exchange not requiring a banking gateway. Implemented as a plugin for Retroshare. Licensed under the LGPL.
OK, I've read the intro post and the tech paper. I still have some questions, forgive me if they're really stupid, but I hope someone has the patience to explain it.
What a user mostly is interested in is to exchange bitcoin for fiat money and the other way around. So he uses an exchange. And he can either buy or sell bitcoins on that exchange, and he can either deposit or withdraw fiat money on that exchange.
Now, talking about a desentralized system as in this case Zero Reserve, I understand it in the end gives pretty much the same result, and that instead of storing fiat money on an exchange, you store IOU's (I owe you)'s in the system? So, when you actually want to say pay your electricity bill you need fiat money, and you can aquire fiat money by exchangig IOU's for fiat money?
OK - perhaps this was poorly explained, but if someone can explain to me in simple terms how the following will take place:
1. I want to buy 2 bitcoins. Do I first set in a buy order, and then get matched by one or several parties, and then have to split up or pay in a single payment the total cost to some person in the system? What guarantees are there that the payment will actually be honoured and that I will receive the bitcoins? I see from the paper that there's a escrow system. Will payments be matched locally, so bank transfers will take place within the same country, or if there's a cash trade, within the same city? Is there any problems or types of scam that can occur here? And also, do I receive full bitcoins, or are these only stored in the system somehow?
2. When selling bitcoins, they're exchanged for IOU's. The IOU's are stored in the system and later exchanged for fiat money, or might be used to purchase bitcoins again? What are the IOU's stored as, and what do they represent, are they tied to the dollar? I assume it's your counterpart(ies) that issues the IOU's? So, if say you live in germany and you had a match in the US, then the US person gets your bitcoins and you now hold some IOU's? You can then exchange the IOU's for a bank transfer within Germany? So you then send the IOU's to another person in germany, and he then sends you fiat money, is that how it works?
So, in theory it could work like this:
I purchase bitcoins at one point. I enter an order, say buiying 1 btc for 700 USD. Someone matches my offer, but since I live in germany, there's no point being matched to someone in the us? Ok, now I have an accepted order, and the price is tied in at 700 USD. I get bank details (how are these transferred?) and send 700 USD to this person. He then sends me 1 btc after receiving this payment. Some days later, I decide to sell my 1 BTC, because it's now worth 800 USD. So I have a match, and I get issued 800 USD IOU's? Then I could trade this back and forth to my hearts desire, but eventually I want to withdraw. Can I withdraw by sending bitcoins directly to someone in the system, or does it always need to exchanged for IOU's? But for the sake of the discussion, let's say I have now 800 USD IOU's, so then I place an order for a fiat withdrawal, is that so? So when it's accepted, someone is matched and I send the counterparty my banking details, and then he sends me 800 USD? Are the 800 USD IOU's then destroyed? How can it be ensured he actually sends the money, and what if he claims to have sent the money, but I never received it. How is a dispute solved?
What pitfalls are there in such a system and can there arise any 'deadlocks' ? And who's going to be the arbitrator, and who's to appoint the arbitrator? Can people loose money in this system? Can it be hacked?
In general I think a p2p exchange is a brilliant system, but the weak part always seems to be the fiat to virtual currency exchange. I've thought of a system with 'agents', and then you had to appoint trusted ones. So I guess this is a bit similar to that?
And what if someone breaches the trust in the system, how are they punished, are they removed or barred? And what prevents them from entering the system again as a new user, doing the same kind of scam again? And who decided who is to be expelled? And who appoints the ones with the power to make such decisions?
Very interesting concept, and I'm trying to wrap my head around it, to understand it, and to see if there's anything in the system that can be exploited that needs to be taken into consideration.
A p2p exchange where it is straightforward to both buy bitcoins, and extract fiat money must be the absolute perfect desentralized system! Banks can't even know that they're part of it, at least not easily. Still any user should have a dedicated bank account for this in a bank separated from his ordinary financial dealings, as payment for fiat in the first place still is suspectible for fraud (e-bay scam) etc.
Thanks for any insight that you might provide. This thread is very interesting. There's been attempts of a p2p exchange before, but it semed to die.