|
August 09, 2012, 01:58:13 AM |
|
Please excuse my poor English. Here is my Proposal on how to solve the instant Payment issue: Every miner adds information about his "trusted payment network" to his mined blocks. These informations are: 1. A list of hostnames of the "trusted payment network" 2. The public key of the "trusted payment network" Every miner can run his own "trusted payment network" or let someone else do the job for him. Each "trusted payment network" can consist of several Hosts. This is because of Scalability and protection against DDos. For a better understanding of my Idea it's better to assume it's a single Host.
Before someone can perform Instant Payments he has to move his Bitcoins into an standardised Contract that allows him to perform instant Payments. I call this Contract "Instant payment contract". Obviously it takes 6 Blocks until moving the coins to the "Instant payment contract" is fully confirmed by the Bitcoin network and the Coins are ready for instant payment.
Now here is what happens if User A wants to perform an instant payment to User B: User A signes a transaction with his private key that says he wants to transfer coins to user B and some coins for the "trusted payment networks" as fee. After that User A connects to the last 22 "trusted payment networks" that were mentioned in the Blockchain and sends them the signed transaction. Every "trusted payment networks" now checks whether it has received any transaction before that conflicts with the new transaction. If not it creates a sign for the transaction and sends this sign back to User A. User A takes the received signes and bundles them together with his transaction and signes the whole thing again, then handles the whole bundle over to User B. User B now checks the signs in the bundle. If they are correct then he accepts this payment. If he accepts the payment he creates a new bitcoin transaction that contains a fee for the miner from one of his own bitcoin adresses plus the Data bundle he got from User A. This new bitcoin transaction is realesed immediately to the Bitcoin network. The instant payment is now finished. What happens after that? The transaction User B has created will sooner or later get into the blockchain because it contains a Fee that User B is Paying. I assume it gets into the Blockchain within 12 Blocks. As soon as the Transaction gets into the Blockchain User B gets his coins. This is because the "Instant payment contract" user A had created before will execute a transaction if the following conditions are met: n is the number of the Block where the new transaction got mined into the block. 1. the Transaction contains at least 8 signs of the "trusted payment networks" of the Blocks n-22 to n-12. 2. the Transaction contains a sign from User A. The signed part contains the Transaction istself as well as the signs from the "trusted payment networks"
That's it. Damn... it's pretty complicated to explain what i mean. I hope someone understood.
|