Why the design is broke? This model works only for block chain based crypto currencies. New cryptos USD, EUR work perfectly however... paypal alike doesn't.
I mean my design is broken. I just have to thought it again. the design for the messages in there is wrong. But I'm pretty sure it's completely feasible. My proposal allows not only chain coins to be traded, also centrally issued crypto-currencies that would work in a very similar way to open transactions.
"X"=bitcoin address and "Y"=namecoin address that the network is aware of its private key. Why?
You could ask "if I'm aware of this private key, I can import this private key to my wallet and spend it". Yes, but stop here.
When this address is involved, things will work a little different. Nodes have to validate this transaction with additional work. What will be the additional work? They have to verify the internal script that ask for inter block chain work [check if the trade was completed as described].
So you need to change the bitcoin protocol. I ask again, What's wrong with what's described in the wiki for trading across chains?
If the trade is valid, all nodes sign the transaction with X private key [that all nodes are aware of].
Wait, wait, all nodes sign with the same key? That doesn't makes much sense to me.
No need to change the protocol. Only needed to change:
- client version
- set the command version service to non Zero
- implement the exchange feature
>>>Wait, wait, all nodes sign with the same key? That doesn't makes much sense to me.
My bad. All nodes CAN sign it but only someone who made the Y transaction can legitimate claim this payment 'cause only WHO made the payment CAN proper use the command "signmessage". All others attempts will be rejected (rejected by the network using "verifymessage", etc).
Bob makes the payment to "Y" and only Bob legitimate are allowed to claim "X". How? Why?
HowRemember, every node knows "X" private key. Also Bob knows it. So:
a) Bob creates a new tx sending "X" funds to "B1" [B1 is a public key owned by Bob] and then sign it with "X" private key.
b) Y payment is used as proof of work.
c) The network VERIFY Bob Tx. If it is a legitimate transaction, it will be added to block chain if no it is rejected.
d) Alice also gets her coins from "Y" to "A2" as already described.
WhyBob are allowed to claim it 'cause:
e) Bob owns the address that has made the Y payment [stored in his wallet]
f) Bob proofs it using:
signmessage <Bob_address_used_to_make_Y_payment> <proper_transaction_message>.
g) Network listen:
verifymessage <Bob_address_used_to_make_Y_payment> <Bob_signature> <proper_transaction_message>.
done
