Transcript for #bitcoin-dev 2018/01/08

08:09 camarads Hey guys. I currently have an issue. I have more than 200 unconfirmed transactions in my wallet since 12-20 of December. I use bitcoin core rpc api to send the payments. I didn't have RBF enabled so this option is out. What i did untill now. I disabled transaction rebroadcasting and i zapped all the unconfirmed transactions from wallet. The funds returned to my wallet from what i can see
08:09 camarads but in the the blockchain the transactions still appear. What do you guys recommend ? To resend the transaction now with a higher fee or not wait for the transactions to dissapear from the mempool ? If i resend now , from what i know , it will appear as double-spending and the transactions won't get confirmed ? Any advice please ? Thank you
08:45 echeveria camarads: "in the blockchain"
08:45 echeveria you know that blockchain.info, and the blockchain are different?
08:46 camarads yes i know
08:47 camarads i meant on informational block explorers :)
09:01 wkalt is it true that if a miner validates a block (gets a hash < difficulty) they get 12.5 BTC plus fees *regardless* of whether the block is accepted by the network?
09:02 wkalt sorry if I've got the terminology wrong -- total noob
09:03 wkalt but I'm wondering how the fee numbers add up if the block is rejected
09:06 wkalt it seems like any award must be independent of acceptance by the network
09:09 wkalt which I guess means you could get unlucky and end up paying fees multiple times?
09:13 echeveria wkalt: they only get the reward for a valid block.
09:14 echeveria it's not independent. that would be broken.
09:14 wkalt echeveria: valid == hash less than difficulty right?
09:14 echeveria no.
09:14 echeveria valid means the block passes the validity rules AND has proof of work.
09:15 echeveria it would be silly to pay you for an invalid block now wouldn't it?
09:15 wkalt I certainly think so :)
09:16 wkalt I'm trying to understand though -- proof of work is hash < difficulty? Where can I read about the validity rules beyond that
09:16 echeveria CheckBlock()
09:17 echeveria transactions must be well formed, the merkle tree must be valid, the timestamp needs to be more than the median of the last 11 timestamps, there's thousands of rules.
09:17 wkalt ok -- is there still some element of "will this valid block get accepted by the network"?
09:17 wkalt if that makes sense
09:17 wkalt I
09:17 wkalt I'm looking at checkblock
09:18 echeveria yes. nothing says people *have* to accept your block. there can be many valid blocks at one height, but only one will be canonical.
09:19 wkalt ok, that matches my impression. And so if your block is not canonical, what happens to fees on the associated transactions?
09:19 echeveria as if the block never existed.
09:20 wkalt are they reversed or never paid?
09:20 echeveria as if the block never existed.
09:20 wkalt the fee payments*
09:21 wkalt doesn't that take time to work out though?
09:21 wkalt like indefinite time?
09:21 echeveria does what take a long time to work out?
09:21 wkalt which block gets accepted. sorry again if I'm being thick.
09:21 echeveria you only accept one.
09:22 wkalt by the network though
09:22 echeveria you only consider an alternative when it has more cumulative work (blocks) on top of it.
09:24 wkalt that part makes sense to me. I guess what I'm wondering is a) I get find a nonce that makes the block valid b) I publish the block -- when do I get transaction fees?
09:24 wkalt or am I misunderstanding the whole thign
09:24 wkalt s/gn/ng
09:24 echeveria your understanding is pretty rough.
09:24 echeveria the fees are paid out as part of the block.
09:24 echeveria if the block is in the main chain, you can spend them. if it's not, you can't.
09:27 wkalt ok, thanks echeveria -- reading up some more
09:54 wkalt echeveria: ok I think this makes sense to me -- in the case I've described above, I've really created an unsuccessful fork. If an exchange wanted to support me, I actually *could* spend that money, but the reality is nobody would and that's what holds it together.
09:56 wkalt seem right?
10:34 plop1342 Hi, what SHA256 C algorithm is used?