<p>I think what you need is a threshold signature(<code>n of n</code>).
I don't know of any tools that would help you create such signature, but conceptually speaking it is not that difficult.</p>
<p>You take all of the addresses in Set A and Set B and get the corresponding public keys. Then you can create a single threshold signature(MuSig for example) using all of those public keys.</p>
<p>Since you are asking these for tax purposes, you would also need to prove that you don't own those coins in Set(C+D). For that, you would also need another threshold  signature from other person over Sets(C + D) to show that they own those coins.</p>
<p>As I said earlier, I don't know of any readymade tools for doing these.</p>

CC BY-SA 4.0
2020-10-01T22:52:39.713Z
2020-10-01T22:52:39.713Z
sanket1729
<ol>
<li>Why would you prove ownership of inputs/outputs in two-party coinjoin? This data upon publishing would make the coinjoin efforts obsolete and would totally cancel all anonymity set in this specific transaction.</li>
<li>For input you could use some specific wallet setup where inputs would be in separate xpub derivation path, and outputs in separate.</li>
<li>Even with point 2. you'd have to post the outputs as the list of addresses if you don't want to leak pubkeys?</li>
</ol>
<p>This looks to me like an <a href="http://xyproblem.info/" rel="nofollow noreferrer">XY problem</a> and your requirements are contradicting themselves. Could you explain what you're trying to achieve?</p>

CC BY-SA 4.0
2020-09-25T03:52:16.863Z
for auditing and tax purposes! IRS asked for the proof of payment details. Let assume IRS will not leak out the info.
Cisco Mmu
CC BY-SA 4.0
2020-09-23T17:11:17.167Z
2020-09-23T17:11:17.167Z
Tony Sanak
<p>In a two party coinjoin consists of Mr Seller and Mr Buyer.
Mr Seller has set A of sender addresses/input and set B of receiver addresses (output)
Mr Buyer has set C of sender addresses/input and set D of receiver addresses (Output)
Assume all input/output are addresses (P2PK or P2PKH and none of them are script).</p>
<p>How does Mr Seller prove to others that set A and set B addresses belong to him? Is there any other way to prove than proving the address one by one which can be very long. On top of that set B addresses are hashes.
Mr Seller also need to cooperation from Mr Buyer to provide proof that
set C and Set D address belong to Mr Buyer.
This is a requirement from IRS audit department who wanted proof of payment amount from
the given invoice record.</p>

<multi-signature>
Proof of private keys ownership for multiple addresses
Cisco Mmu
# Proof of private keys ownership for multiple addresses

(Asked by: username_0 on 2020-09-18)

In a two party coinjoin consists of Mr Seller and Mr Buyer.
Mr Seller has set A of sender addresses/input and set B of receiver addresses (output)
Mr Buyer has set C of sender addresses/input and set D of receiver addresses (Output)
Assume all input/output are addresses (P2PK or P2PKH and none of them are script).

How does Mr Seller prove to others that set A and set B addresses belong to him? Is there any other way to prove than proving the address one by one which can be very long. On top of that set B addresses are hashes.
Mr Seller also need to cooperation from Mr Buyer to provide proof that
set C and Set D address belong to Mr Buyer.
This is a requirement from IRS audit department who wanted proof of payment amount from
the given invoice record.

**Tags:** multi-signature


---

## 2 answers

### Answer by username_1 on 2020-10-01. Score: 1

I think what you need is a threshold signature(`n of n`).
I don't know of any tools that would help you create such signature, but conceptually speaking it is not that difficult.

You take all of the addresses in Set A and Set B and get the corresponding public keys. Then you can create a single threshold signature(MuSig for example) using all of those public keys.

Since you are asking these for tax purposes, you would also need to prove that you don't own those coins in Set(C+D). For that, you would also need another threshold signature from other person over Sets(C + D) to show that they own those coins.

As I said earlier, I don't know of any readymade tools for doing these.


---

### Answer by username_2 on 2020-09-23. Score: 1

1. Why would you prove ownership of inputs/outputs in two-party coinjoin? This data upon publishing would make the coinjoin efforts obsolete and would totally cancel all anonymity set in this specific transaction.
2. For input you could use some specific wallet setup where inputs would be in separate xpub derivation path, and outputs in separate.
3. Even with point 2. you'd have to post the outputs as the list of addresses if you don't want to leak pubkeys?

This looks to me like an [XY problem](http://xyproblem.info/) and your requirements are contradicting themselves. Could you explain what you're trying to achieve?

> **Comments:**
> **username_0**: for auditing and tax purposes! IRS asked for the proof of payment details. Let assume IRS will not leak out the info.  

---

