Pages:
Author

Topic: Building A fully decentralized, automated, and anonymous bitcoin exchange! (Read 2732 times)

full member
Activity: 129
Merit: 119
MintChip works in a request-response fashion.
The person who want money needs to create a request. (the request basically contains the MintChip ID and a Nonce, Nonce optional)
The person who send the money "signs" the request, which causes the mintchip to deduct money from the secure tamper-resistant storage.
The mintchip now produces a "response" ONLY valid for the mintchip who sent the request. The requester imports this response in his mintchip, causing the mintchip to increase the money in the secure tamper-resistant storage.

This is what is creating MintChips double-spending protection, without need to publish any ledger, since signing a request spends money, and the same response cannot be imported twice in the same mintchip since mintchip saves the Nonce of each response to its secure memory. Even if ambigious mintchips does not know the Nonce of all other mintchips, it will not accept a transfer destined for a another mintchip, thus you cannot send the same "coin" to 2 mintchips.

Whoever who writes the request can freely select the "Nonce" value, and writing a request does not need to use the mintchip, eg anyone can write a request.
The payer can change the Nonce value at will, but its important that the Nonce is unique across transactions of the same value to the same receiver, else you will burn money since the receiver cannot import a already "spent" nonce.

I think it can be done in a similiar way to this:
https://en.bitcoin.it/wiki/Contracts#Example_5:_Trading_across_chains


Basically, a secret must be selected, such so the sender of mintchip-currency needs to publish the mintchip-currency in the blockchain, to redeem his bitcoins. The owner of the receiving mintchip only needs to scan the blockchain and then import the message in his mintchip.

The problem is that this require RSA PKCS#12 certificate checking against MintChip CA certificate.
Try to figure out something.
full member
Activity: 196
Merit: 100
Web Dev, Db Admin, Computer Technician
enforcing orders, much like no one can simply change the bitcoin app. code, and start doing fraudulent transactions, the p2p exchange will work in similar way.
By enforcing orders I mean - let's say I put up a bid to buy 1000 bitcoins for $4 each. Someone takes me up on my offer. What makes sure I will go forward with it? Maybe I have no interest at all in buying bitcoins and am just trying to manipulate the market?
So there is:
------------------------Exchanger
-------------------------------^
----------------------------/___\
-------------------------/______\
----------------------/_________\
-------------------/____________\
---------------/________________\
-----------/____________________\
Buyer------------------------------------------Seller

In the traditional view the "Exchanger" is a trading platform. What we need is some type of escrow coin that uses split keys and a Diffie-Hellman exchange, basically a way that can be an agreement of offers and encrypt electronic fund transfer details between 2 parties.
legendary
Activity: 1904
Merit: 1037
Trusted Bitcoiner
I don't think this enables a decentralized exchange, but it does enable an exchange to operate without using a traditional bank account.  Users deposit CAD by sending funds to the exchange's mintchip…they use it to make trades, then withdraw bitcoins.  On the other side, the user deposited bitcoins, makes trades, and then withdraws CAD by the exchange sending CAD from their mintchip to the user's mintchip.  The exchange wouldn't need to worry about the bank shutting down their bank account (assuming the mint doesn't have some kind of back door or kill switch…which would be hard to determine without some reverse engineering given the closed nature of the system).

It would be awesome if the first widespread use of mintchip was to enable this sort of bitcoin exchange.  Something tells me you won't win the $50k prize though.  Grin

Maybe i could win most popular mintchip  app.   Tongue

Maybe the mint wont accept the idea and i wont get the dev kit 
hero member
Activity: 868
Merit: 1008
I don't think this enables a decentralized exchange, but it does enable an exchange to operate without using a traditional bank account.  Users deposit CAD by sending funds to the exchange's mintchip…they use it to make trades, then withdraw bitcoins.  On the other side, the user deposited bitcoins, makes trades, and then withdraws CAD by the exchange sending CAD from their mintchip to the user's mintchip.  The exchange wouldn't need to worry about the bank shutting down their bank account (assuming the mint doesn't have some kind of back door or kill switch…which would be hard to determine without some reverse engineering given the closed nature of the system).

It would be awesome if the first widespread use of mintchip was to enable this sort of bitcoin exchange.  Something tells me you won't win the $50k prize though.  Grin
legendary
Activity: 1904
Merit: 1037
Trusted Bitcoiner
MintChip provides p2p transactions between accounts denominated in Canadian dollars (or a few other national currencies).


What, if anything, does that have to do with bitcoin or exchanges? Am I missing something here?

this allows for decentralized trading. no mtgox, just p2p

it might be able to exchange mintchipCAD and mintchipUSD or wtv other supported currency mintchip has, with no fees
legendary
Activity: 905
Merit: 1012
MintChip provides p2p transactions between accounts denominated in Canadian dollars (or a few other national currencies).


What, if anything, does that have to do with bitcoin or exchanges? Am I missing something here?
donator
Activity: 2058
Merit: 1054
If someone goes and fills your order, the transaction will automatically be processed by the application. ( Client A sends MintChips to Client B, Client B sends Bitcoins to Client A )
Is this enforced by the local client? What stops someone from using a modified client that does not enforce this? (Pretend to be a normal client and broadcast the order, but not execute it when requested)
what stops anyone from doing the same thing with the bitcoin client?
Not sure if serious. Bitcoin transactions need to include cryptographic signatures and reference outputs recognized by the network as unspent. A modified client that broadcasts invalid transactions will have them rejected.

To further stress the point: Once a Bitcoin client broadcasts a transaction, it's out, there's nothing more it can do so I don't care what it does afterwards. But you are proposing a client that broadcasts market orders, which are a promise to do something if contacted later. If the promise is enforced on the promiser's client it's worthless.

edit: maybe the client could be built in such a way that it only deals with authentic clients, by checking some kind of GUID
What stops the GUID from being faked?
sr. member
Activity: 252
Merit: 250
Inactive
It's nothing like bitcoin.

the point is it will allow for the decentralization of exchanging BTC to dollars or dollars to BTC

I see no mention on the website about this.
Actually, after watching the video and reading the website i still have no idea what is Mintchip all about.

What I see is a lot of marketing mumbo-jumbo, evolution blah blah.

Yeah. I feel exactly the same.

WTF is this MintChap crap all about Huh

I doubt this is better than Bitcoin ...

Too much focus on Canada = I don't like these "chips".


I wonder if Terrance and Phillip approve?
legendary
Activity: 1904
Merit: 1037
Trusted Bitcoiner
If someone goes and fills your order, the transaction will automatically be processed by the application. ( Client A sends MintChips to Client B, Client B sends Bitcoins to Client A )
Is this enforced by the local client? What stops someone from using a modified client that does not enforce this? (Pretend to be a normal client and broadcast the order, but not execute it when requested)


what stops anyone from doing the same thing with the bitcoin client?

edit: maybe the client could be built in such a way that it only deals with authentic clients, by checking some kind of GUID
donator
Activity: 2058
Merit: 1054
If someone goes and fills your order, the transaction will automatically be processed by the application. ( Client A sends MintChips to Client B, Client B sends Bitcoins to Client A )
Is this enforced by the local client? What stops someone from using a modified client that does not enforce this? (Pretend to be a normal client and broadcast the order, but not execute it when requested)

like you said somehow this transaction must be a single atomic trade (or a 2 step processes that cant be cheated) this will be the hard part.
This is the relatively easier part, it may or may not be possible depending on what MintChip can do. OpenTransactions might help.
legendary
Activity: 1904
Merit: 1037
Trusted Bitcoiner
newbie
Activity: 46
Merit: 0
Maybe they are forward thinking and they are developing a digital currency back by gold to be used for international clearing of debit and credit transactions.
legendary
Activity: 1904
Merit: 1037
Trusted Bitcoiner
enforcing orders, much like no one can simply change the bitcoin app. code, and start doing fraudulent transactions, the p2p exchange will work in similar way.
By enforcing orders I mean - let's say I put up a bid to buy 1000 bitcoins for $4 each. Someone takes me up on my offer. What makes sure I will go forward with it? Maybe I have no interest at all in buying bitcoins and am just trying to manipulate the market?

well to put an order, you will need to have the funds.

at anytime you can cancel the order, but if you put up your order, its very much at risk of being filled.

If someone goes and fills your order, the transaction will automatically be processed by the application. ( Client A sends MintChips to Client B, Client B sends Bitcoins to Client A )

like you said somehow this transaction must be a single atomic trade (or a 2 step processes that cant be cheated) this will be the hard part.


donator
Activity: 2058
Merit: 1054
enforcing orders, much like no one can simply change the bitcoin app. code, and start doing fraudulent transactions, the p2p exchange will work in similar way.
By enforcing orders I mean - let's say I put up a bid to buy 1000 bitcoins for $4 each. Someone takes me up on my offer. What makes sure I will go forward with it? Maybe I have no interest at all in buying bitcoins and am just trying to manipulate the market?
legendary
Activity: 1904
Merit: 1037
Trusted Bitcoiner
Even if this MintChip thing is any good (TBD), it does nothing to solve the fundamental challenges of making a decentralized exchange - atomic trades (solvable in some contexts), and enforcing orders (to which I don't know of any solution, other than trust networks).

I have to admit i only give this a few hours of thought, please continue trying to poke holes in the idea

atomic trades, will need to give this more thought...

enforcing orders, much like no one can simply change the bitcoin app. code, and start doing fraudulent transactions, the p2p exchange will work in similar way.

donator
Activity: 1736
Merit: 1014
Let's talk governance, lipstick, and pigs.
Even if this MintChip thing is any good (TBD), it does nothing to solve the fundamental challenges of making a decentralized exchange - atomic trades (solvable in some contexts), and enforcing orders (to which I don't know of any solution, other than trust networks).
I don't understand the problem. If you have an authority, then you have the rule of law. Any contract with consideration is enforceable.
[edit] OK, I think you are talking about the Paypal/Bitcoin problem for lack of a better term. I don't know enough about Mint Chip to address that.
sr. member
Activity: 423
Merit: 250
Even if MintChip doesn't solve challenges of making p2p exchange, they give opportunity to create centralized but survivable exchange in the dark web. Exchange without any trouble with banking license, regulation and gov. Anyone will be able to create their own.
donator
Activity: 2058
Merit: 1054
Even if this MintChip thing is any good (TBD), it does nothing to solve the fundamental challenges of making a decentralized exchange - atomic trades (solvable in some contexts), and enforcing orders (to which I don't know of any solution, other than trust networks).
hero member
Activity: 518
Merit: 500
It's nothing like bitcoin.

the point is it will allow for the decentralization of exchanging BTC to dollars or dollars to BTC

I see no mention on the website about this.
Actually, after watching the video and reading the website i still have no idea what is Mintchip all about.

What I see is a lot of marketing mumbo-jumbo, evolution blah blah.

Yeah. I feel exactly the same.

WTF is this MintChap crap all about Huh

I doubt this is better than Bitcoin ...

Too much focus on Canada = I don't like these "chips".
legendary
Activity: 1470
Merit: 1006
Bringing Legendary Har® to you since 1952
It's nothing like bitcoin.

the point is it will allow for the decentralization of exchanging BTC to dollars or dollars to BTC

I see no mention on the website about this.
Actually, after watching the video and reading the website i still have no idea what is Mintchip all about.

What I see is a lot of marketing mumbo-jumbo, evolution blah blah.
Pages:
Jump to: