7 ms·
P2P Bitcoin exchange [pdf]
- cLeEOGPw 13y agoHow do I know if Lisa provided me with the correct amount of money in OKPay account before transaction?
- luisivan 13y agoGood question! OKPay has an API so we check if the correct amount has been transferred to your OKPay's account. If that happens you sign the transaction and the exchange happens
- gotoalberto 13y agobecause OKPay and payments processors proposed, provide an API.
- izqui 13y agoThat's the kind of stuff we need to make Bitcoin really take off. I'm really looking forward to seeing more of this.
- luisivan 13y agoThank you! :)
- pfraze 13y agoDon't know the relation, but I've heard https://en.bitcoin.it/wiki/Ripple https://en.bitcoin.it/wiki/Ripple is catching on as a p2p bitcoin exchange.
- gotoalberto 13y agoRipple is based on social networks, in many countries these socialnetworks are prohibited as China, etc. Also, PAUV don't have a external dependencies.
- cLeEOGPw 13y agoRipple premined many ripple coins before releasing and it is distributed, not decentralized.
- deleted 13y ago[deleted]
- oleganza 13y agoPaper is not clear on how their scripts work because they don't show exact scripts per output. Meanwhile, using bilateral deposits you can insure any sorts of contracts, not just currency exchange. In my scheme scripts are symmetrical: http://blog.oleganza.com/post/58240549599/contracts-without-trust-or-third-parties http://blog.oleganza.com/post/58240549599/contracts-without-... The coolest part is when this sort of thing is used in autonomous programs that randomly connect to each other and establish contracts. In such case there's no place for extortion - there's no human to negotiate with. Based on this idea you can build never-seen before networking protocols. For instance, a micropayment network that propagates IOUs from peer to peer where each pair of peers is mutually insured to repay all accumulated debt when it reaches 50% of insured amount. It'll be like a global distributed clearing house with as little fees as humanly possible (and instant confirmations!).
- gotoalberto 13y ago<<Paper is not clear on how their scripts work because they don't show exact scripts per output.>> You can found more information about contracts and the flags used on Bitcoin Wiki.
- oleganza 13y agoI know how scripts work in general. I mean, it's strange that you display script outside the output. E.g. on page 7 you have two outputs and only one script. Another remark: what does mean "description message is ciphered"? You mean signed? Because ECDSA does not do encryption (like RSA), only signatures.
- gotoalberto 13y ago<<I mean, it's strange that you display script outside the output. E.g. on page 7 you have 2 outputs and only one script.>> Consideer that this transaction is not been broadcasted to P2P Network. You can storage a valid transaction as this if you add the flags SIGHASH_ALL and SIGHASH_ANYONECANPAY to the transaction. <<what does mean "description message is ciphered"? You mean signed? Because ECDSA does not do encryption (like RSA), only signatures.>> I'm not sure about your question. ECDSA is a PKI key type, so i believe that it's possible.
- deleted 13y ago[deleted]
- jpswade 13y agoOn a similar line, you may also find this interesting: http://sx.dyne.org/anontx/ http://sx.dyne.org/anontx/
- luisivan 13y agoWow, that's pretty cool, we'll find a way to integrate it :)
- M4v3R 13y ago> If anyone doesn't meet the transaction contract (send the money or send the bitcoins), both lose the deposit. Am I understanding this correctly that if a buyer tries to scam the seller in whatever way (i.e. will initially sign the transactions but ultimately doesn't pay) then the seller will lose his deposit? If that's the case then it won't work. I ran a P2P Bitcoin exchange and it's a pretty common thing to have "fake buyers" who place offers but ultimately don't fulfill them. With a third party you can resolve these kind of situations easily, it's much harder without them.
- luisivan 13y agoIf one of the parts doesn't fulfill its order, both the buyer and the seller lose the same amount of Bitcoins. That's the way we prevent scam!
- M4v3R 13y agoThe problem is, that in a P2P system you don't have only scammers that will not fulfill the trade. You also have careless people, who will mess something up, forget about the transaction, delete their clients/wallets, etc. With this schema, you are forcing the one party to take responsibility of stupidity of other.
- gotoalberto 13y agoAll information are public (only for themselves) and both users can restore the operation if something goes wrong. Both users are interested on cooperate and can restore the operation from a web app or your application. Also, is higly unprobably that something as this happens, is an automated process with a restore system. The system can restore the operation (knows all information to do it).
- luisivan 13y agoWell, that's true, but here we are talking about money and I have never met someone that wants to lose money... also, as Alberto said, we are working on some workarounds to prevent scenarios like that happen :)
- bachback 13y agoAn exchange is not just a transfer, it is a transfer at a price. Sure, you can transfer 1 BTC to 100$, but how do you determine a price? If A wants to buy 1 BTC from B, what is the transaction? 1$,5$,1000$? You need to integrate with the fiat system and you need a limit order book. I would suggest Harris book on microstructure for an understanding of exchange markets (ISBN 0195144708).
- luisivan 13y agoEach peer has to determine a price per Bitcoin when opening the order. Then we match the orders that have the same price using a P2P discovery system. So there isn't a global price but rather each user has to choose a price.
- bachback 13y agoWell, a chosen price is a limit order, which can go unfilled. If I order 1000 BTC for 0.01$ am I going to get filled? At current market prices no, because currently there is no supply of BTC at that price. A market determines the price. If a good is well defined a market will automatically be centralized. Gold and oil are extremely liquid markets traded on exchanges, that means traded based on limit order books.
- luisivan 13y agoExactly, that's why we will include some graphs about the state of the market so people can figure out their prices
- bachback 13y agoThe NYSE processes millions of orders per second, MtGox hundreds per second. So you have machines which work over a protocol (FIX) to establish the price mechanism. In a exchange system there are limit orders and the limit orderbook. You basically have a timestamp problem, which is kind of prependicular to the bitcoin system. At every point t in time, there is a fair value of BTC-USD. And a system which solves that problem will be highly centralized, by definition. So unless you come up with a new system for processing limit orders, people will be arbitraging between a slower system and MtGox, Bitstamp, etc.
- marcell 13y ago> 5. Homer sends to Lisa the transaction and Lisa adds some inputs to the transaction > as it happens in this example: At this point, has Lisa paid Homer yet? If not, what will force her to do so?
- luisivan 13y agoNo! No payment has been made yet, because at that point the transference is not valid
- galapago 13y agoI guess the code should be available in the future here: https://github.com/pauvorg https://github.com/pauvorg