<p>Bitcoin Core will be default only treat M-of-N multisignature outputs as "yours" (contributing to your balance) if you own private keys to all N public keys. This is to prevent showing something as a balance which could be spent from under you.</p>

<p>If you instead of using a raw multisig output use P2SH the same rule applies, but in that case you're able to use <code>importaddress</code> to mark the outputs as yours regardless of whether you have access to the keys.</p>

<p>Once the outputs are treated as yours, you can use <code>signrawtransaction</code> to fully or partially sign for them.</p>

CC BY-SA 3.0
2018-01-05T12:53:29.507Z
Ok, shouldn´t it work then with this form?

`1 <PublicAdress 1> <PublicAdress 2> 2 OP_CHECKMULTISIG`
SeBo
CC BY-SA 3.0
2018-01-05T13:05:38.007Z
It should work if both pubkeys are yours (= you have the private keys for them).
Pieter Wuille
CC BY-SA 3.0
2018-01-05T13:35:08.683Z
That brought me to a follow up question: [sharing-ownership-of-coins-via-multi-signature-transactions](https://bitcoin.stackexchange.com/questions/67582/sharing-ownership-of-coins-via-multi-signature-transactions)
SeBo
CC BY-SA 3.0
2018-01-05T12:43:07.577Z
2018-01-05T12:43:07.577Z
Pieter Wuille
<p>You first say you created a script as </p>

<p><code>M &lt;A pubkey&gt; [B pubkey] [C pubkey...] N OP_CHECKMULTISIG</code></p>

<p>But then you continue with <code>decode...</code> output</p>

<p><code>"asm": "2 &lt;PublicAdress 1&gt; &lt;PublicAdress 2&gt; &lt;PublicAdress 3&gt; 3 OP_CHECKMULTISIG"</code></p>

<p>Are you really using the public keys of the participants or their hex encoded addresses \ pubkey hashes?  It should come up as a multisig type if you're using the actual pubkeys.  Those are 33 or 65 bytes, and start with 02 or 03, or 04 respectively.</p>

CC BY-SA 3.0
2018-01-05T18:16:50.790Z
2018-01-05T18:16:50.790Z
arubi
<p>I created a transaction with a script for a Multi-Signature in the form of </p>

<pre>
M &lt;A pubkey&gt; [B pubkey] [C pubkey...] N OP_CHECKMULTISIG
</pre>

<p>It is documented (<a href="https://bitcoin.org/en/developer-guide#multisig" rel="nofollow noreferrer">https://bitcoin.org/en/developer-guide#multisig</a>) that this type of script would belong to the standard transaction types.</p>

<p>When i put that transaction into Bitcoin-CLI via decoderawtransaction, it says:</p>

<pre>
"vout": [
    {
      "value": 0.00250000,
      "n": 0,
      "scriptPubKey": {
        "asm": "2 &lt;PublicAdress 1&gt; &lt;PublicAdress 2&gt; &lt;PublicAdress 3&gt; 3 OP_CHECKMULTISIG",
        "hex": "XXX",
        "type": "nonstandard"
      }
    }, 
</pre>

<p>I then sent the transaction via sendrawtransaction and it is sent, accepted and mined successfully to the Blockchain but it seems to be invisible for my wallet.</p>

<p>Also when i send such a transaction to my BitcoinCore wallet, Bitcoin Core doesn´t notify me about it. </p>

<p>Is there simply no support in Bitcoin Core for that type of MultiSig transactions or am i doing anything wrong?</p>

<multi-signature>
Standard multi-signature transaction BitcoinCore
SeBo
# Standard multi-signature transaction BitcoinCore

(Asked by: username_0 on 2018-01-05)

I created a transaction with a script for a Multi-Signature in the form of 

M  [B pubkey] [C pubkey...] N OP_CHECKMULTISIG

It is documented (https://bitcoin.org/en/developer-guide#multisig) that this type of script would belong to the standard transaction types.
When i put that transaction into Bitcoin-CLI via decoderawtransaction, it says:

"vout": [
    {
      "value": 0.00250000,
      "n": 0,
      "scriptPubKey": {
        "asm": "2    3 OP_CHECKMULTISIG",
        "hex": "XXX",
        "type": "nonstandard"
      }
    }, 

I then sent the transaction via sendrawtransaction and it is sent, accepted and mined successfully to the Blockchain but it seems to be invisible for my wallet.
Also when i send such a transaction to my BitcoinCore wallet, Bitcoin Core doesn´t notify me about it. 
Is there simply no support in Bitcoin Core for that type of MultiSig transactions or am i doing anything wrong?

**Tags:** multi-signature


---

## 2 answers

### Answer by username_1 on 2018-01-05. Score: 0 | Accepted answer

Bitcoin Core will be default only treat M-of-N multisignature outputs as "yours" (contributing to your balance) if you own private keys to all N public keys. This is to prevent showing something as a balance which could be spent from under you.

If you instead of using a raw multisig output use P2SH the same rule applies, but in that case you're able to use `importaddress` to mark the outputs as yours regardless of whether you have access to the keys.

Once the outputs are treated as yours, you can use `signrawtransaction` to fully or partially sign for them.

> **Comments:**
> **username_0**: Ok, shouldn´t it work then with this form?  `1 <PublicAdress 1> <PublicAdress 2> 2 OP_CHECKMULTISIG`  
> **username_1**: It should work if both pubkeys are yours (= you have the private keys for them).  
> **username_0**: That brought me to a follow up question: [sharing-ownership-of-coins-via-multi-signature-transactions](https://bitcoin.stackexchange.com/questions/67582/sharing-ownership-of-coins-via-multi-signature-transactions)  

---

### Answer by username_2 on 2018-01-05. Score: 0

You first say you created a script as

`M  [B pubkey] [C pubkey...] N OP_CHECKMULTISIG`

But then you continue with `decode...` output

`"asm": "2    3 OP_CHECKMULTISIG"`

Are you really using the public keys of the participants or their hex encoded addresses \ pubkey hashes? It should come up as a multisig type if you're using the actual pubkeys. Those are 33 or 65 bytes, and start with 02 or 03, or 04 respectively.


---

