Bitcoin Forum

Bitcoin => Development & Technical Discussion => Topic started by: ByteCoin on June 03, 2011, 01:20:21 AM



Title: OP_NOP-appended transactions - how long do non-standard transactions wait?
Post by: ByteCoin on June 03, 2011, 01:20:21 AM
There have been some non-standard transactions over the past few days created by adding an OP_NOP to the script.
They are functionally equivalent to normal transactions but confuse theymos' Bitcoin Block Explorer somewhat.
https://blockexplorer.com/b/127630
https://blockexplorer.com/b/128239
Did anyone see how long it took for them to be hashed in a block?

I use http://bitcoincharts.com/bitcoin/ to look at pending transactions. It might be handy if someone kept track of the amount of time a transaction has to wait to get into a block as the information will likely prove interesting and is not obtainable in retrospect.

ByteCoin


Title: Re: OP_NOP-appended transactions - how long do non-standard transactions wait?
Post by: Luke-Jr on June 03, 2011, 07:58:25 PM
Those are intentionally crafted by my eligius_sendonly branch. The non-standard output is in fact the transaction fee, but encoded such that only Eligius can benefit from it. This was at the request of some miners who apparently see it as a way of contributing to the pool. They should be confirmed every 4 hours on average, given Eligius's current pool size.


Title: Re: OP_NOP-appended transactions - how long do non-standard transactions wait?
Post by: ene on June 03, 2011, 08:07:45 PM
An example https://blockexplorer.com/tx/3077f4b06d7cdb9434019696b4e1dcb6daddde4331ca3749bdd599d50912f569

Can you explain how only Eligius can benefit? It seems like anybody can modify a bitcoin client to redeem that txout, as long as they have the bitcoin address which it's being sent to? Then any miner will accept their transaction, right?


Title: Re: OP_NOP-appended transactions - how long do non-standard transactions wait?
Post by: Luke-Jr on June 03, 2011, 08:12:05 PM
Can you explain how only Eligius can benefit? It seems like anybody can modify a bitcoin client to redeem that txout, as long as they have the bitcoin address which it's being sent to? Then any miner will accept their transaction, right?
Only Eligius benefits from the fee for this transaction. Since it is non-standard, and requires a special Eligius fee key (1A2UnusrwYr7DbiFbFesRKrbQMiYkj6E84) to get the "fee", other miners don't have any reason to accept it. What the recipient does is their own business.


Title: Re: OP_NOP-appended transactions - how long do non-standard transactions wait?
Post by: ene on June 03, 2011, 08:49:06 PM
Can you explain how only Eligius can benefit? It seems like anybody can modify a bitcoin client to redeem that txout, as long as they have the bitcoin address which it's being sent to? Then any miner will accept their transaction, right?
Only Eligius benefits from the fee for this transaction. Since it is non-standard, and requires a special Eligius fee key (1A2UnusrwYr7DbiFbFesRKrbQMiYkj6E84) to get the "fee", other miners don't have any reason to accept it. What the recipient does is their own business.

Sorry, I still don't understand. Which part of that transaction represents the "special fee"? Index 2 of the txouts?


Title: Re: OP_NOP-appended transactions - how long do non-standard transactions wait?
Post by: Luke-Jr on June 03, 2011, 10:14:53 PM
Can you explain how only Eligius can benefit? It seems like anybody can modify a bitcoin client to redeem that txout, as long as they have the bitcoin address which it's being sent to? Then any miner will accept their transaction, right?
Only Eligius benefits from the fee for this transaction. Since it is non-standard, and requires a special Eligius fee key (1A2UnusrwYr7DbiFbFesRKrbQMiYkj6E84) to get the "fee", other miners don't have any reason to accept it. What the recipient does is their own business.

Sorry, I still don't understand. Which part of that transaction represents the "special fee"? Index 2 of the txouts?
Correct


Title: Re: OP_NOP-appended transactions - how long do non-standard transactions wait?
Post by: ene on June 04, 2011, 12:49:13 AM
So how does it help the pool at all, or "contribute to the pool" as you said?


Title: Re: OP_NOP-appended transactions - how long do non-standard transactions wait?
Post by: lizthegrey on June 04, 2011, 12:55:20 AM
So how does it help the pool at all, or "contribute to the pool" as you said?
AIUI, it's a mechanism for people to force their transaction to not immediately process in the next block to be found by any pool or miner, but to instead to wait to be processed by the eligius pool and to pay a transaction-fee-equivalent to the eligius pool's donation/voluntary tx fee address.


Title: Re: OP_NOP-appended transactions - how long do non-standard transactions wait?
Post by: Luke-Jr on June 04, 2011, 04:22:28 AM
So how does it help the pool at all, or "contribute to the pool" as you said?
Since the fee can only be spent by Eligius, it is in effect a donation that the pool also accepts in lieu a transaction fee.


Title: Re: OP_NOP-appended transactions - how long do non-standard transactions wait?
Post by: Mike Hearn on June 06, 2011, 12:08:47 PM
Hmm, this is a workaround for the lack of direct-to-miner TX submission isn't it?

Luke, how about a different approach - open up another port on your node. Transactions submitted to it that way won't be relayed at all, just included in your current block. It shouldn't be that complex and means you don't need weird hacks with OP_NOP and special keys. You can just keep the fees for yourself.


Title: Re: OP_NOP-appended transactions - how long do non-standard transactions wait?
Post by: ene on June 06, 2011, 12:13:42 PM
So how does it help the pool at all, or "contribute to the pool" as you said?
Since the fee can only be spent by Eligius, it is in effect a donation that the pool also accepts in lieu a transaction fee.

So the thing that makes it a transaction fee is the destination address. So without OP_NOP, the destination address would still allow Eligius to pick up that donation, but the only difference is that the transaction might be included in a non-Eligius block.

So they're paying as a thank you for Eligius mining it, but the only reason no other miner mined the transaction is that they changed their transaction to prevent them from doing so.

This is really pointless.