I understand that non-segwit nodes interpret segwit txes as Anyone-Can-Spend txes, and they cannot validate txes that spend segwit outputs.

But when an old style miner receives a segwit tx to mine he consideres it invalid, right? (That's because it appears to them as a strange transaction with no input and 1 output.) So, does it follow that segwit txes can only be mined in a block by upgraded miners?

1 Answer 1


An old style miner would only receive a stripped transaction, i.e. a transaction from which the witness has been removed. They will consider a segwit transaction to be valid but non-standard because one element remains on the stack when resolving the redeem script.

If a miner included this transaction in their block, the block would appear valid to segwit-incapable nodes, but invalid to any segwit-capable nodes as any segwit input would be missing the required witness and thus would not be properly signed. This would lead to the block being rejected by 98% of the nodes on the network, and thus the segwit-incapable miner to lose their block reward as it would not become part of the heaviest blockchain. Segwit-incapable miners can however contribute blocks that only include non-segwit transactions that build on top of the chain that includes segwit-blocks.

This means that only a miner collecting transactions with a segwit-capable node is able to create a valid block that includes segwit transactions.

  • So, old miners can't create a block with segwit txs but can reiceve this block from new miners (stripped), right? Thank you for your explaination
    – Zaitsev
    Oct 12, 2017 at 2:01
  • 1
    Exactly. And not only can't they produce SegWit blocks, they also won't, as SegWit transactions are non-standard. Oct 12, 2017 at 4:48
  • they won't receive the block from other (upgrade) miner? so old miner refuse them?
    – Zaitsev
    Oct 12, 2017 at 15:09
  • The old nodes can redistribute the stripped block amongst each other, or any new nodes will create the stripped block when it is requested from any old node.
    – Murch
    Oct 12, 2017 at 22:24
  • 1
    I meant that non-SegWit miners won't try to include SegWit txn, as they are non-standard to them, so they won't accept or relay them. They will however accept (stripped) SegWit txn if they occur in a block miner by a SegWit miner. Dec 9, 2017 at 17:58

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.