Title: Contracts and escrow scripts Post by: mrvision on November 14, 2012, 06:26:54 PM I am interested in the content of this article: https://en.bitcoin.it/wiki/Contracts
Specially in this: Quote In other words, one wants to lock up some coins so a third party has to agree in order for them to be spent:
Create a transaction (Tx1) with an output script as follows and broadcast it:
I'm interested in create a website which allows user A to establish contact with user B so they agree to exchange something for bitcoins... Instead of keeping the bitcoins in my server i would like to use this kind of script in order to start the mediation if something goes wrong. So my question... How do i begin? (i already run an escrow service, but keeping in my wallet the bitcoins until they agree everthing is ok) Is there a tutorial for this? I know everything is new... but i don't know even if there's a friendly client so users can create this kind of transactions... Title: Re: Contracts and escrow scripts Post by: DeathAndTaxes on November 14, 2012, 06:38:53 PM Currently there is no full client support. The reference client supports multi-sig but it requires ALL (in this case 3) keys to the in the SAME wallet.
The "missing link" is support in clients/protocol to support partial signing. i.e. deal goes good so A partially signs and passes it to B who partially signs and submits it to the network. Until that is implemented making a third party service is unlikely to be user friendly. So complete the transaction one or more parties would need to extract their private keys and send them to you so you can combine them into a single wallet and sign the multi-sig tx. I don't think anyone is going to do that. Title: Re: Contracts and escrow scripts Post by: kjj on November 14, 2012, 07:11:09 PM Currently there is no full client support. The reference client supports multi-sig but it requires ALL (in this case 3) keys to the in the SAME wallet. The "missing link" is support in clients/protocol to support partial signing. i.e. deal goes good so A partially signs and passes it to B who partially signs and submits it to the network. Until that is implemented making a third party service is unlikely to be user friendly. So complete the transaction one or more parties would need to extract their private keys and send them to you so you can combine them into a single wallet and sign the multi-sig tx. I don't think anyone is going to do that. The raw transaction API will be able to do this soon. The pull for it (#1818 (https://github.com/bitcoin/bitcoin/pull/1818)) was merged into master, but I don't think it made it into the 0.7.1 release. You can use it now if you apply the pull and compile your own bitcoind. Or, wait until 0.8.0 is released SoonTM. If you are going to start doing this, take a look at BIP 10. It was made for something else, but I think it should work just fine here for passing the stuff around, perhaps with a few changes. Also see this thread (https://bitcointalk.org/index.php?topic=105505.0) for more information on using it. In particular, read Gavin's notes (https://gist.github.com/3966071). When you create a multisig address using the API, you get a script, a hash, and the address. You need the script and the hash when you go to redeem transactions sent to that address. You can recreate them if necessary, but the keys have to be in the same order when you do. Title: Re: Contracts and escrow scripts Post by: mrvision on November 14, 2012, 11:40:55 PM Thanks for your answers! I'm starting reading right now!
|