Thanks for the feedback.
1. Peer 1 doesn't need to be a trusted third party, it can be implemented in a way that some peers involved in this system can provide liquidity for others and incentives can be a small fee.
2. Yes joinmarket is awesome and its payjoin will be better to achieve the same but I was trying to contribute and add more options for people to improve privacy on Bitcoin. If we have different ways to mix it will be harder for spy companies to analyze of some of the transactions.
3. Also one such setup might not make a huge difference but a chain of such mixers will surely work better if everything done correctly.
4. Maybe multisig usage is not ideal for such things right now and I am not the best person when it comes to coding but think that better privacy for multisig will make it possible for lot of ideas to be implemented on Bitcoin using different multisig setups and combination of other things that we already have.
Good morning Prayank
I have explained the whole idea with a proof of concept in this link: https://medium.com/@prayankgahlot/post-mix-usage-using-multisig-and-cpfp-e6ce1fdd57a1
The article is not clear I think, so please confirm my understanding below.
Participants:
* "Peer 3" - Payee
* "Peer 2" - Payer
* "Peer 1" - Enabling tr\*sted third party
Goal: Payer wants to pay to the payee 0.006BTC
Current Conditions:
* Payer owns 0.01 BTC in a single UTXO
* Third Party owns 0.05 BTC in a single UTXO
Protocol:
1. Payer and Third Party compute a 2-of-3 address with the public keys of Payer, Payee, and Third Party.
2. Payer and Third Party individually pay their owned funds to the 2-of-3 address.
3. After confirmation, they consume the new outputs into another transaction with equal-valued outputs, hiding who owns which coins.
Is my understanding correct?
If so, I believe JoinMarket has a superior technology, which does not require a tr\*sted third party; it simply requires one or more UNtrusted third parties to participate in signing a single transaction that does not require paying to an intermediate m-of-n address (thus all inputs are singlesig).
Basically JoinMarket allows the market taker to decide how much the equal-value outputs are, and to define the address it goes to.
The destination address need not be one the market taker controls, it can be to a payee.
This technique is the only out-of-the-box way that a JoinMarket wallet can spend funds from a JoinMarket wallet.
JoinMarket as well already includes how to get in touch with enabling third parties (called "market makers").
Regards,
ZmnSCPxj