Title: Transaction with `OP_RETURN` to a particular address Post by: jgmBitcoin on June 05, 2016, 11:32:28 PM How do I formulate a Transaction with OP_RETURN to a particular address using Bitcoinj library.
Code: SendRequest req; Title: Re: Transaction with `OP_RETURN` to a particular address Post by: hexafraction on June 05, 2016, 11:55:36 PM You can't make an OP_RETURN-based output out to any specific address, since the OP_RETURN opcode marks an output as invalid (thus provably unspendable). In fact, an OP_RETURN-based output will not even enter the UTXO.
However, you can create a transaction that has multiple output scripts: One can be a standard P2PKH of the form OP_DUP OP_HASH160 <pubKeyHash> OP_EQUALVERIFY OP_CHECKSIG while the other can be an output with OP_RETURN. Just call addOutput twice, once with an address and the amount desired, and a second time with parameters for an OP_RETURN script (and a non-zero output value, I would presume). Title: Re: Transaction with `OP_RETURN` to a particular address Post by: johoe on June 06, 2016, 09:39:52 AM for an OP_RETURN script (and a non-zero output value, I would presume). A zero amount is okay (and even encouraged) for OP_RETURN. The OP_RETURN is paid for via the fee; putting a non-zero amount in OP_RETURN would just destroy bitcoins, so the miners do not profit from mining it. Title: Re: Transaction with `OP_RETURN` to a particular address Post by: hexafraction on June 06, 2016, 07:42:17 PM for an OP_RETURN script (and a non-zero output value, I would presume). A zero amount is okay (and even encouraged) for OP_RETURN. The OP_RETURN is paid for via the fee; putting a non-zero amount in OP_RETURN would just destroy bitcoins, so the miners do not profit from mining it. Ah, my mistake. I assumed for some reason that a zero-value output was invalid (bad assumption). Thanks for explaining to me so I know now. |