Transactions

使用“OP_RETURN”向特定地址進行交易

  • July 15, 2016

如何使用bitcoinj庫制定OP_RETURN特定地址的交易?

SendRequest req;
Transaction transaction = new Transaction(Main.getNetWorkParameters());
transaction.addOutput(Coin.ZERO, ScriptBuilder.createOpReturnScript(
   "thanks for the coins".toString().getBytes()));

// add a receiving address for this transaction
req = SendRequest.forTx(transaction);

您不能將OP_RETURN基於 - 的輸出輸出到任何特定地址,因為OP_RETURN操作碼將輸出標記為無效(因此可證明不可使用)。事實上,OP_RETURN基於 - 的輸出甚至不會進入UTXO.

零數量是可以的(甚至鼓勵)OP_RETURN。通過OP_RETURN費用支付; 投入非零數量OP_RETURN只會破壞比特幣,因此礦工不會從開採中獲利。

但是,您可以創建具有多個輸出腳本的事務:一個可以是P2PKH表單的標準,OP_DUP OP_HASH160 <pubKeyHash> OP_EQUALVERIFY OP_CHECKSIG而另一個可以是帶有OP_RETURN. 只需呼叫addOutput兩次,一次使用地址和所需數量,第二次使用 OP_RETURN 腳本的參數(我想是非零輸出值)。

引用自:https://bitcoin.stackexchange.com/questions/45678