CoinPool, exploring generic payment pools for Fun and Privacy



Summary:

The CoinPool proposal is a multiparticipant offchain update mechanism that requires all participants to sign off on the new state. The WabiSabi protocol can be used during negotiation of a new state with one participant elected as server for that particular state update. Participants can operate as clients and exchange credentials to perform value transfers inside the WabiSabi construction. After output registration, the participants ratify the new state by signing off on the new state and revoking the previous state using the update mechanism. A desired feature of CoinPool is that a participant can exit while the pool remains valid for remaining participants. However, this feature creates a mild privacy leak as every other participant knows how much that particular participant took out from the CoinPool. To hide each participant's ownership in the CoinPool from others, unilateral closes should expose all current outputs without identifying which participant exited the CoinPool. This will allow output addresses to be pseudonyms of the participant, removing the linkages between participant and amount they own. If the feature of exiting a participant without closing the entire CoinPool is dropped, disincentivization methods such as using `SIGHASH_ANYPREVOUT` can be employed to force whoever performs a unilateral close of the CoinPool to pay the onchain fees involved.


Updated on: 2023-06-14T02:23:01.214700+00:00