Are Bitcoin transactions permitted to have no outputs (i.e. all inputs become transaction fee)?

1 Mins read

No. If you create one, it won’t be relayed or mined by Bitcoin Core. If it gets into a block, it will be rejected. From the source code for Bitcoin Core (tx_verify.cpp:164):

if (tx.vout.empty())
    return state.DoS(10, false, REJECT_INVALID, "bad-txns-vout-empty");

However, you can create a vout with 0 satoshis. That isn’t a “standard” transaction, so it will not be mined by the software by default. However, if it gets into a block, it’s valid.

There is another way you could do it. Using the OP_RETURN opcode. OP_RETURN in a transaction output forces anyone referencing that output to fail spending it(the script returns and transaction is invalid). Although the output exists, it is provably unspendable.

Source link

Related posts

Timechain DEX Introduces Liquidity Pools & Farming Features on Its Automated Market Maker (AMM)

2 Mins read
Decentralized financial ecosystem, Timechain announced the launch of new features to its decentralized exchange (DEX), this Monday, bringing the world of decentralized…

Three Emerging NFT Platforms That Offer Yield Earning Programs

3 Mins read
Non-Fungible Tokens (NFTs) have taken over the web3 space. Their popularity is second to none, as web3 enthusiasts have created an industry…

Maximizing Your Affiliate Revenue with Changelly

2 Mins read
beginner So, let’s say you have tried and tested every single variation of affiliate tools that we offer and found the optimal…

Leave a Reply

Your email address will not be published. Required fields are marked *