Title: Generation Transaction Verification Post by: Bob Derber on December 23, 2013, 08:57:52 PM For tax reasons, I need to know exactly when a miner's reward is 'spendable' and how this is determined logically.
Is it based upon whomever the recipient is of an attempt to spend the reward as the transaction record will permit me to calculate the number of blocks added to the chain since the block with the award was appended and thus I must decide if I want to take the risk of a block may be an orphan? Is there a field in the Generation Transaction that is basically a time stamp that permits me to "guess" that a sufficient period has passed so I will accept an attempt to "spend" the reward coins? I.e. an hour to logically permit the appending of 6 additional blocks? An hour of hunting has not produced an answer and the exact methodolgy has become important..... as has determining, if possible, the exact point in time this 'verification' is reached. All help appreciated. bob Title: Re: Generation Transaction Verification Post by: DannyHamilton on December 27, 2013, 08:50:40 PM . . . I need to know exactly when a miner's reward is 'spendable' and how this is determined logically . . . It depends on what coin you are mining, what pool (if any) you are participating in, and what wallet software you are using. At the bitcoin protocol level: https://en.bitcoin.it/wiki/Protocol_rules Quote 12. For each input, if the referenced output transaction is coinbase (i.e. only 1 input, with hash=0, n=-1), it must have at least COINBASE_MATURITY (100) confirmations; else reject this transaction So, if you are solo mining bitcoins, and are creating your own raw transactions, you can assume that you will have to wait until the reward has 100 confirmations before any transaction you create will be relayed by any peers, or confirmed by any miners. If you are using the Bitcoin-Qt wallet, I think it adds an additional buffer of 20 confirmations before it will allow you to create a transaction that uses a coinbase output as an input. ( I know it used to, I'm not sure if the additional 20 confirmation buffer was ever removed from the wallet). If you are mining in a pool, the pool operator may have their own rules about the number of confirmations that a coinbase transaction must have before they will allow you to remove/spend the bitcoins from the pool. In that case, you would need to ask the operator of the pool you are working with. Title: Re: Generation Transaction Verification Post by: Bob Derber on December 28, 2013, 11:01:26 PM Many thanks....
So even if I am in a pool - that 100 confirmation requirement is hard coded, right - and if the pool operator wants to do otherwise (like let me spend on 20 confirmations), they have to do this by allocating to the pool members bitcoin using transactions where the input is not from that coinbase transaction.....yes? Title: Re: Generation Transaction Verification Post by: DannyHamilton on December 29, 2013, 12:46:06 AM Many thanks.... So even if I am in a pool - that 100 confirmation requirement is hard coded, right - and if the pool operator wants to do otherwise (like let me spend on 20 confirmations), they have to do this by allocating to the pool members bitcoin using transactions where the input is not from that coinbase transaction.....yes? Correct. They could also have a rule that requires 200 confirmations (or anything larger than 100), in which case they could use the coinbase as the input. |