- Published on
Coinswap
atomic coin swap
Atomic multi-hop swaps that move coins through intermediate keys so the spender of an input cannot be linked to the receiver of the final output.
A coinswap protocol routes value through one or more intermediate transactions so the entity spending an early UTXO is not obviously the same as the entity receiving the later one. Greg Maxwell outlined the idea on Bitcointalk in 2013. Later work turned the sketch into a client-and-server protocol with atomic escrow, so no intermediary can steal funds mid-swap even if every hop is run by a different party.
A CoinJoin usually batches many inputs into one co-signed transaction. Payjoin has the receiver add their own input to a two-party payment. Coinswap chains separate transactions so each hop can look like a normal spend, which pushes back on heuristics that equate one transaction with one ownership hop.
Coinswap trades a break in the direct graph link between source and destination outputs for extra hops, block space, and coordination time. A reference implementation lives in the citadel-tech/coinswap repository.