<p>I was sending an extra signature.</p>

<p>The transaction required 2-of-3, and I sent the 3 signatures. The extra signature was not popped off the stack by <code>OP_CHECKMULTISIG</code>, and the remaining stack looked like this:</p>

<pre><code>EXTRA_SIGNATURE
OP_0 # null-dummy for Bitcoin Core's old bug
</code></pre>

<p>The extra signature took the place of the dummy, and <code>bitcoind</code> detected this when verifying the dummy was an <code>OP_0</code>.</p>

CC BY-SA 3.0
2016-03-02T22:17:01.400Z
2016-03-05T20:29:35.720Z
2016-03-05T20:29:35.720Z
salezica
<pre><code>RPC_VERIFY_REJECTED = -26, //! Transaction or block was rejected by network rules
</code></pre>

<p>Rule "prev_out" failed to validate: 
Prev out d9a78501ba9601391094fe4a369ab8767822196561ceca3b64e446ea6785a085:0 not found.</p>

CC BY-SA 3.0
2016-03-02T21:05:20.130Z
Does that mean the output doesn't exist? I can see it here in `test-insight`: https://test-insight.bitpay.com/tx/d9a78501ba9601391094fe4a369ab8767822196561ceca3b64e446ea6785a085
salezica
CC BY-SA 3.0
2016-03-02T20:53:35.010Z
2016-03-02T20:53:35.010Z
amaclin
<p>I'm trying to broadcast a manually crafted and signed transaction. As far as I can tell, the scripts are correct and the signatures pass <a href="https://github.com/bitcoin/bips/blob/master/bip-0066.mediawiki" rel="nofollow">BIP 66 validation</a>.</p>

<p>However, I keep getting:</p>

<pre><code>{'message': '64: non-mandatory-script-verify-flag (No error)', u'code': -26}
</code></pre>

<p>Suspecting the DER encoding, I tried different libs (plus my own ad-hoc code) to no avail. This is the raw transaction in question:</p>

<pre><code>010000000185a08567ea46e4643bcace616519227876b89a364afe9410390196ba0185a7d900000000fd44010047304402202e119d14a6fd920d4444c6d73800609b8a8dfe48bc4c1fe0d2840fef40a26027022041d8f3ec7517b9773879eb5255ef30a457740fa2669f2b33d1c93c6e7894163a014730440220686531e7c640e62a860f499f9582ee72c8581b4827c0f05d9196d6b73722d56402200fa3b7132414092de23b1c7cf31874c21b7b5dea775ae677b8bd3ce5d0dca3830147304402205628c813b01bb0355309400c363c37aaa6d36d5ee6592a0793c77cfd32fd0f3d022017c68684a5748423129a60449344982b7e101aaf7882bf74958ef145631c682e014c695221023abd0b238c5e93e4d1d9f06e9d743941e5d3f23d0b5371a0f87ac56106373829210231e33da7f49dd067b556c04b07fc339b571f144bb8c51b3410e66b143b3e75202102b49c7c0f9d3026fdc3311c61bdb7b92d81ee1d4adf806e0fbfdfac5f5c9b9e7853aeffffffff01204e0000000000001976a9144c477bec69fa6f89d6effdc3b17ab53101c6fa1a88ac00000000
</code></pre>

<p>What's wrong with the transaction? I'll provide any additional information necessary.</p>

<multi-signature><raw-transaction>
Manually crafted multisig Tx: non-mandatory-script-verify-flag
salezica
# Manually crafted multisig Tx: non-mandatory-script-verify-flag

(Asked by: username_0 on 2016-03-02)

I'm trying to broadcast a manually crafted and signed transaction. As far as I can tell, the scripts are correct and the signatures pass [BIP 66 validation](https://github.com/bitcoin/bips/blob/master/bip-0066.mediawiki).

However, I keep getting:

```
{'message': '64: non-mandatory-script-verify-flag (No error)', u'code': -26}

```

Suspecting the DER encoding, I tried different libs (plus my own ad-hoc code) to no avail. This is the raw transaction in question:

```
010000000185a08567ea46e4643bcace616519227876b89a364afe9410390196ba0185a7d900000000fd44010047304402202e119d14a6fd920d4444c6d73800609b8a8dfe48bc4c1fe0d2840fef40a26027022041d8f3ec7517b9773879eb5255ef30a457740fa2669f2b33d1c93c6e7894163a014730440220686531e7c640e62a860f499f9582ee72c8581b4827c0f05d9196d6b73722d56402200fa3b7132414092de23b1c7cf31874c21b7b5dea775ae677b8bd3ce5d0dca3830147304402205628c813b01bb0355309400c363c37aaa6d36d5ee6592a0793c77cfd32fd0f3d022017c68684a5748423129a60449344982b7e101aaf7882bf74958ef145631c682e014c695221023abd0b238c5e93e4d1d9f06e9d743941e5d3f23d0b5371a0f87ac56106373829210231e33da7f49dd067b556c04b07fc339b571f144bb8c51b3410e66b143b3e75202102b49c7c0f9d3026fdc3311c61bdb7b92d81ee1d4adf806e0fbfdfac5f5c9b9e7853aeffffffff01204e0000000000001976a9144c477bec69fa6f89d6effdc3b17ab53101c6fa1a88ac00000000

```

What's wrong with the transaction? I'll provide any additional information necessary.

**Tags:** multi-signature, raw-transaction


---

## 2 answers

### Answer by username_0 on 2016-03-02. Score: 1 | Accepted answer

I was sending an extra signature.

The transaction required 2-of-3, and I sent the 3 signatures. The extra signature was not popped off the stack by `OP_CHECKMULTISIG`, and the remaining stack looked like this:

```
EXTRA_SIGNATURE
OP_0 # null-dummy for Bitcoin Core's old bug

```

The extra signature took the place of the dummy, and `bitcoind` detected this when verifying the dummy was an `OP_0`.


---

### Answer by username_1 on 2016-03-02. Score: 0

```
RPC_VERIFY_REJECTED = -26, //! Transaction or block was rejected by network rules

```

Rule "prev\_out" failed to validate:
Prev out d9a78501ba9601391094fe4a369ab8767822196561ceca3b64e446ea6785a085:0 not found.

> **Comments:**
> **username_0**: Does that mean the output doesn't exist? I can see it here in `test-insight`: https://test-insight.bitpay.com/tx/d9a78501ba9601391094fe4a369ab8767822196561ceca3b64e446ea6785a085  

---

