CoinSwapCS
CoinSwapCS copied to clipboard
Simple implementation of Bitcoin CoinSwap, client-server
Here are a few protocol enhancements, assuming we solve the value correlation problem: I use this as reference: https://github.com/AdamISZ/CoinSwapCS/blob/master/docs/coinswap_new.pdf ## `nLockTime`-protected Backouts Waiting for TX0 and TX1 to be confirmed...
A suggestion for the architecture of coinswap software. Possibly an obvious point now that LN is on everyone's minds. Coinswap should use "private watchtowers" (from LN terminology), where they only...
The original coinswap has issues with amount correlation, because Alice and Carol swap the same amount of bitcoin. In this project that has been solved using the added amount Δ....
One issue with coinswaps is that the common-input-ownership heuristic is not broken. So an adversary could cluster together all the addresses belonging to one coinswap server, which would obviously be...
Although there are timeouts in coinswap, the failure/backout case still means miner fees and time are wasted, which is a DOS opportunity. There is an observation I've been thinking about...
Coinswap is different from coinjoin in that it requires some trust. Although there are timeouts in case of failure, failure still means miner fees and time are wasted. This is...
A downside of two-party coinswaps is that Carol knows exactly where Alice's coins went. For JoinMarket we can say that only the customer taker knows exactly where their coins went,...
Two main sources of terminal spam spring to mind: every 3 second gettxout output during waiting for confirmation, and low level twisted log output for the http requests. This is...
One trivial point is to ensure no security leaks from arbitrary server access. More important, considering DOS/snooping generally from client-> server. We don't want: * Costless initiation of transactions, locking...
This is clearly necessary for security. Marking it as a requirement for 0.1, doesn't need to block a testing release. Should reuse the wallet password (and encryption function). Will want...