<p>Your <code>scriptSig</code> uses a data push to push 0x01 onto the stack. It could use <code>OP_1</code> instead.</p>

CC BY-SA 4.0
2018-11-16T02:09:17.357Z
Thank you! But now I got "Script evaluated without error but finished with a false/empty top stack element)" Is this something wrong with my redeem script or scriptpubkey ?
Andrew
CC BY-SA 4.0
2018-11-16T01:34:58.343Z
2018-11-16T01:34:58.343Z
Pieter Wuille
<p>Your transaction is failing validation with SCRIPT_VERIFY_MINIMALDATA, which is described in <a href="https://github.com/bitcoin/bips/blob/master/bip-0062.mediawiki" rel="nofollow noreferrer">BIP 62</a> rule 3 protections against malleability.  <a href="https://github.com/bitcoin/bitcoin/blob/698c6abb25c1fbbc7fa4ba46b60e9f17d97332ef/src/script/interpreter.cpp#L160" rel="nofollow noreferrer">CheckMinimalPush</a>() requires a push of 0x01 to be done using OP_1.</p>

<p>This standardness rule avoids the case where someone takes a transaction from the network and a push with a longer encoding of the same push and as a result creates a malleated form of the transaction.</p>

CC BY-SA 4.0
2018-11-16T01:48:23.880Z
2018-11-16T01:48:23.880Z
G. Maxwell
<p>Looks like transaction decodes fine. But when I use sendrawtransaction I got </p>

<p><code>Data push larger than necessary</code>  </p>

<p>What's wrong with this tx?</p>

<pre><code>bitcoin-cli -testnet decoderawtransaction 020000000149d4a5f520ded6fa94f79cd268f0334baeec9a7732c9d946d1cdee58d81e7aad00000000020101ffffffff01904c96000000000017a914f45d94733d430261962932e0c847075195916a048700000000
{
  "txid": "1bbf569b281f2cd9d948e4273120a9bc3bb2c21e31bc9786682c0a22d8feb76c",
  "hash": "1bbf569b281f2cd9d948e4273120a9bc3bb2c21e31bc9786682c0a22d8feb76c",
  "version": 2,
  "size": 85,
  "vsize": 85,
  "weight": 340,
  "locktime": 0,
  "vin": [
    {
      "txid": "ad7a1ed858eecdd146d9c932779aecae4b33f068d29cf794fad6de20f5a5d449",
      "vout": 0,
      "scriptSig": {
        "asm": "1",
        "hex": "0101"
      },
      "sequence": 4294967295
    }
  ],
  "vout": [
    {
      "value": 0.09850000,
      "n": 0,
      "scriptPubKey": {
        "asm": "OP_HASH160 f45d94733d430261962932e0c847075195916a04 OP_EQUAL",
        "hex": "a914f45d94733d430261962932e0c847075195916a0487",
        "reqSigs": 1,
        "type": "scripthash",
        "addresses": [
          "2NFXJy8mvz7ZiT4VVN29xPGC38hTygd3AyJ"
        ]
      }
    }
  ]
}
</code></pre>

<bitcoind><raw-transaction>
Error while send transaction: Data push larger than necessary
Andrew
# Error while send transaction: Data push larger than necessary

(Asked by: username_0 on 2018-11-16)

Looks like transaction decodes fine. But when I use sendrawtransaction I got

`Data push larger than necessary`

What's wrong with this tx?

```
bitcoin-cli -testnet decoderawtransaction 020000000149d4a5f520ded6fa94f79cd268f0334baeec9a7732c9d946d1cdee58d81e7aad00000000020101ffffffff01904c96000000000017a914f45d94733d430261962932e0c847075195916a048700000000
{
  "txid": "1bbf569b281f2cd9d948e4273120a9bc3bb2c21e31bc9786682c0a22d8feb76c",
  "hash": "1bbf569b281f2cd9d948e4273120a9bc3bb2c21e31bc9786682c0a22d8feb76c",
  "version": 2,
  "size": 85,
  "vsize": 85,
  "weight": 340,
  "locktime": 0,
  "vin": [
    {
      "txid": "ad7a1ed858eecdd146d9c932779aecae4b33f068d29cf794fad6de20f5a5d449",
      "vout": 0,
      "scriptSig": {
        "asm": "1",
        "hex": "0101"
      },
      "sequence": 4294967295
    }
  ],
  "vout": [
    {
      "value": 0.09850000,
      "n": 0,
      "scriptPubKey": {
        "asm": "OP_HASH160 f45d94733d430261962932e0c847075195916a04 OP_EQUAL",
        "hex": "a914f45d94733d430261962932e0c847075195916a0487",
        "reqSigs": 1,
        "type": "scripthash",
        "addresses": [
          "2NFXJy8mvz7ZiT4VVN29xPGC38hTygd3AyJ"
        ]
      }
    }
  ]
}

```

**Tags:** bitcoind, raw-transaction


---

## 2 answers

### Answer by username_1 on 2018-11-16. Score: 2 | Accepted answer

Your `scriptSig` uses a data push to push 0x01 onto the stack. It could use `OP_1` instead.

> **Comments:**
> **username_0**: Thank you! But now I got "Script evaluated without error but finished with a false/empty top stack element)" Is this something wrong with my redeem script or scriptpubkey ?  

---

### Answer by username_2 on 2018-11-16. Score: 3

Your transaction is failing validation with SCRIPT\_VERIFY\_MINIMALDATA, which is described in [BIP 62](https://github.com/bitcoin/bips/blob/master/bip-0062.mediawiki) rule 3 protections against malleability. [CheckMinimalPush](https://github.com/bitcoin/bitcoin/blob/698c6abb25c1fbbc7fa4ba46b60e9f17d97332ef/src/script/interpreter.cpp#L160)() requires a push of 0x01 to be done using OP\_1.

This standardness rule avoids the case where someone takes a transaction from the network and a push with a longer encoding of the same push and as a result creates a malleated form of the transaction.


---

