<p>I created a multisig wallet using bdk. It seems to accept descriptor with owner wallet's private key and other participating wallet's public key. Is it possible to create a multisig wallet where only one wallet can create transaction and will get access to other's public keys but other wallets don't need other participant's public keys for signing the transaction?</p>
<p>For example, If I create a 2 of 3 multisig with participants A,B,C. I created transaction with A who has access to public keys of both B and C using descriptor <code>thresh(key(A_xprv),key(B_xpub),key(C_xpub)</code> . Can I sign the transaction with B with only with its private key if it does not have access to public keys of A and C? I'm unable to create a descriptor which can sign the transaction for B without requiring public keys of A and C.</p>

CC BY-SA 4.0
2022-09-15T18:12:16.523Z
I find it hard to follow what you're trying to do. Could you please more explicitly describe the different signing scenarios that you want to combine?
Murch
CC BY-SA 4.0
2022-09-16T04:05:53.257Z
@Murch Sorry if my language was confusing to understand. I want to know if there is a method where a participating wallet can sign a multisig transaction with only it's private key without requiring other wallet's public keys. For creating descriptor to sign transaction, I seem to need both my private key and other participant's public keys. I hope this makes a little more sense. I've also edited the question.
Mohit Singh
<wallet><multi-signature><output-script-descriptors>
Can I sign multisig transaction only with private key in a descriptor based wallet?
Mohit Singh
# Can I sign multisig transaction only with private key in a descriptor based wallet?

(Asked by: username_0 on 2022-09-15)

I created a multisig wallet using bdk. It seems to accept descriptor with owner wallet's private key and other participating wallet's public key. Is it possible to create a multisig wallet where only one wallet can create transaction and will get access to other's public keys but other wallets don't need other participant's public keys for signing the transaction?

For example, If I create a 2 of 3 multisig with participants A,B,C. I created transaction with A who has access to public keys of both B and C using descriptor `thresh(key(A_xprv),key(B_xpub),key(C_xpub)` . Can I sign the transaction with B with only with its private key if it does not have access to public keys of A and C? I'm unable to create a descriptor which can sign the transaction for B without requiring public keys of A and C.

**Tags:** wallet, multi-signature, output-script-descriptors

> **Comments:**
> **username_1**: I find it hard to follow what you're trying to do. Could you please more explicitly describe the different signing scenarios that you want to combine?  
> **username_0**: @username_1 Sorry if my language was confusing to understand. I want to know if there is a method where a participating wallet can sign a multisig transaction with only it's private key without requiring other wallet's public keys. For creating descriptor to sign transaction, I seem to need both my private key and other participant's public keys. I hope this makes a little more sense. I've also edited the question.  

---

## 0 answers

