Author

Topic: Possible quick and simple solution for a decentralized exchange (Read 802 times)

hero member
Activity: 756
Merit: 522
Putting technical considerations aside,

Peer to peer markets will work exactly for what and exactly how GLBSE has shown them to work (a centralized market run by undistinguished members of the general public being indistinguishable from a peer to peer market in any practical sense): a collection of the useless, the dysfunctional and the pointless taking turns to become fashionable, thus copied, thus reinforced by "social proof", presided upon by many idiots of which some are useful and a handful are outright con artists, generating an ever increasing quantity of drama per BTC.

There's a reason lemon laws have to be introduced in any market where the costs of discovery are high and the actual value per unit variable: buyers are willing to offer "average" prices, sellers knowing this will never list anything of above average value, as a result the average spirals down. There's always going to be need for a place where the above average can be listed, and that's the end of the p2p market as a serious venue.

P2p works well for money because money is fungible. It's a good idea, much like flight is a good idea: for some applications. Not at all for anything and everything under the sun.

It's in no way a solution, other than for the purpose of continuing to enable the unqualified and inept to scam outright, or to earnestly work towards some innocent end while ultimately losing people's money.

People were trying to use similar approaches after GLBSE fell in, the flurry of related posts since BTCT fell in and worried shareholders are left wondering if its friends are going to follow suit shows it's still a veritable hope-mirage. None of this has any bearing on the facts.

GPG contracts. Security that isn't based on the limitations of a "slick" website. Actual IPOs from actually planned out, accountable entities. Yes, there's a fee. You're paying for that which works, which in the end is all that's worth paying for. No, I'm not especially nice in that In-N-Out Burger sort of way (though I'm just PR, you don't have to deal with me at all to use the exchange). The lies, the sugar-coating, the beating around the bush, is exactly for cheap food service and has no place in BTC finance. Plenty of people have thrown a fit over these facts, I'm sure plenty of people will continue to do so, and will continue to lose their money. MPEx will be right here.

You are on the right track in terms of looking for problems and trying to conceptualize and present solutions, I don't mean to discourage that at all. It'd be a good idea to devote more time and resources to reading up and getting a better picture, tho'.
legendary
Activity: 1212
Merit: 1037
I'm posting my idea here since it hasn't gotten much attention in the Project Development forum (0 replies). Maybe the securities forum is more adequate.

https://bitcointalksearch.org/topic/yade-coin-yet-another-decentralized-exchange-coin-308565

Quote
I have spent some time reading through the different proposals which are around to implement a decentralized exchange system (Mastercoin, Bitshares, Colored Coins, Hops, Open Transactions). I haven’t had enough time to review them all thoroughly but I have the impression that all ideas are great in their own way but they either tend to aim quite high leaving many implementation questions still open or need to rely on middlemen/escrows to complete transactions. Since time is against us after the recent events related to BTCT and Bitfunder, I think what we should initially aim for is a “quick and dirty” solution which gives us the basic functionality necessary for trading shares between two persons, and nothing more.

I have given this a quick thought and come to what I can foresee as a fast solution to this. I have taken ideas from several people in the group and simplified them as much as possible and added some thoughts of my own. I’m sure there will be several flows as I have many things going on and I haven’t dedicated more than a few hours to this.

Ok, so I will explain the idea: basically a “Sharecoin” is to be created, which will be 100% pre-mined and one share will correspond to the lowest divisible amount of the coin (“share-satoshi” if you will). A wallet will be created in BTC fashion and have a balance of X shares in it, public/private keys, etc, plus a field indicating the number of shares which are "locked" (unconfirmed sale) or "pending" (unconfirmed purchase).

A share transaction shall be completed in 3 steps:
   
   1-   Share seller and buyer agree a price (initially in BTC, but other altcoins could be supported in the future) with each other using whichever means they prefer.
   
   2-   The share seller sends a Sharecoin “payment request” transaction with an embedded message indicating:
        a.   Number of shares to be sold
        b.   Price in BTC per share
        c.   BTC address where payment is to be sent
        d.   Sharecoin address of buyer
        e.   Timeout of the transaction
   This transaction is to be signed with the private key of the seller in order to prove the origin.
   
   3-   After the transaction is confirmed (one confirmation should do) the shares are “locked” so that they can’t be sold twice (any request transaction involving locked shares is to be rejected immediately) and added as "pending" to the buyer's wallet. The buyer takes note of its code and sends the payment to the indicated BTC address and posts a "payment confirmation" Sharecoin transaction (signed with his/her private key) indicating:
       a.   BTC transaction code
       b.   Sharecoin transaction code of the original request

Now all the network has to do is to check that the payment has really been made and confirmed (maybe it can even be confirmed by Sharecoin nodes prioritizing that particular BTC transaction to give some speed, although I’m not sure if this is possible) and immediately the shares of the transaction shall be confirmed by the Sharecoin network. The shares assigned to the buyer’s wallet will no longer be "pending" and the locked shares will be removed from the seller's wallet.

After the defined timeout no "payment confirmation" transaction shall be accepted by the network. If after this defined timeout no payment has been received, the seller must send an “unlock request” transaction to be able to sell the shares to someone else. After confirmation of this transaction, the shares can be put on sale again.

This approach solves trust issues and removes the need for any middlemen, as the Sharecoin protocol would implicitly function as an escrow. It also avoids bloating the BTC blockchain with additional micro-transactions used to send messages. It does however require a certain linkage between the BTC and Sharecoin networks, and the way it is devised Sharecoin miners would not receive any rewards for confirming transactions or generating blocks. A possible variation to solve this last point would be to allow subdividing the shares (for example, leaving 1/1000th of a share for the miner confirming the transaction)

I'll be glad to receive your comments/criticism

P.S. I have no experience in Bitcoin-related development and my knowledge of the intricacies of the protocol isn't at pro-level either so I do realize I might have made some dumb assumptions.
Jump to: