[Bitcoin-development] Atomic coin swapping?

Jeff Garzik jgarzik at exmulti.com
Sat Sep 22 07:28:05 UTC 2012

Forum URL: https://bitcointalk.org/index.php?topic=112007.0

gmaxwell was talking about colored coins[1] in IRC recently.  They are
potentially interesting in the context of distributed bonds[2], which
I am currently pursuing with pybond[3].

Here is the problem I am trying to solve, does the crowd have an answer?

1. Alice transfers a 1-satoshi colored coin to Bob.
2. Bob transfers 100 BTC to Alice.  May be restricted to 1 txout, if
that eases implementation details.
3. Steps #1 and #2 happen as an atomic unit, all-or-none.
4. Alice and Bob must both approve this atomic transfer of coins, with
appropriate signatures.

Is this possible within the current bitcoin system?  As far as I can
see, the answer is "no" but maybe I'm missing something.

My best guess to the answer is "possible, but requires a new SIGHASH_* type"?

[1] https://bitcointalk.org/index.php?topic=106449.0
[2] https://bitcointalk.org/index.php?topic=92421.0
[3] https://github.com/jgarzik/pybond

Jeff Garzik
exMULTI, Inc.
jgarzik at exmulti.com

More information about the bitcoin-dev mailing list