Pages:
Author

Topic: Here we go again! ANTPOOL mined empy block (Read 318 times)

legendary
Activity: 3738
Merit: 1708
November 30, 2023, 12:46:45 AM
#30
Seems we get a post like this weekly. I remember reading about a similar block last week. I looked up the block Height and looked at the time and it was very close to the prior block.

This happens from time to time and it’s because it takes time to process the transactions and since they found the block already they can’t send new work to the pool because the nonce would be different so they send the empty block.
legendary
Activity: 4214
Merit: 4458
November 30, 2023, 12:25:16 AM
#29
this will become less and less as the rewards to fee ratios make it dumber and dumber after each ½ ing.

the shorts become stupid as fuck when the rewards are 0.39 vs fees of 0.50 around 2036

4000000bytes with 50,000,000sats is 12500sat/kbyte
just wait for bitcoin spot market to multiply and people start paying 1250sat/kbyte and total fee become 0.05btc total
just wait for bitcoin spot market to multiply and people start paying 125sat/kbyte and total fee become 0.005btc total
legendary
Activity: 4116
Merit: 7849
'The right to privacy matters'
November 29, 2023, 11:52:24 PM
#28
Does it take THAT long to add a few Transactions to a Block?  Are a few seconds not enough for at least one of them to be included?
The mining pool still has to validate the entire previous block before adding even a single transaction to a new candidate block.

Let's say I validate the first 10% of the previous block. I then decide to add Transaction X to my new candidate block. How do I know Transaction X hasn't already been mined in the remaining 90% of the previous block? I don't. Is it worth risking the 6.25 BTC block reward for the few thousand extra sats I would gain from mining Transaction X, versus invalidating my entire block because Transaction X has already been mined?

Before adding a single transaction to my new candidate block I need to verify the entire previous block. It only takes a few seconds (or even less), but on occasion this is all that is needed to successfully mine an empty block.

this will become less and less as the rewards to fee ratios make it dumber and dumber after each ½ ing.

the shorts become stupid as fuck when the rewards are 0.39 vs fees of 0.50 around 2036
legendary
Activity: 4214
Merit: 4458
November 29, 2023, 11:43:50 PM
#27
while it may seem surprising to someone who doesn't know much about the subject, it shouldn't be surprising to someone who registered on the forum in 2013.

by the fact that someone from 2013 should be self sustainably wealthy after 2 reward halving events and 3 ATH events.. by the OP doing sig-spamming for small sat amounts.. i think it must be a newbie that bought an old account
legendary
Activity: 1372
Merit: 2013
November 29, 2023, 11:31:43 PM
#26
Being that mining empty blocks is a normal thing, and that although there is a decreasing trend we can still expect a few more until the end of the year and about 100 or more next year, I hope that every time an empty block is mined the OP will not reopen a thread titled: "Here we go again...". For the mining of empty blocks, while it may seem surprising to someone who doesn't know much about the subject, it shouldn't be surprising to someone who registered on the forum in 2013.
legendary
Activity: 4214
Merit: 4458
November 29, 2023, 09:57:15 PM
#25
Another one just now
https://www.blockchain.com/explorer/blocks/btc/819056
Just a little over 2 hours apart from each other.
 https://www.blockchain.com/explorer/blocks/btc/819045
full                          empty
819055 >15 secs > 819056
819044 >05 secs > 819045

Block number 818960 was mined completely empty by Antpool recently.
At a time of very high transaction fees, we're having this issue again. A large pool like Antpool just sabotaging the protocol...
https://mempool.space/block/00000000000000000001cda8cd28d2a202898fa0b66a1d0a144f81fc1f8fb594

Yes, just a couple of weeks ago, ViaBTC mined a empty block as well: Block 817214.
full                          empty
818959 >09 secs > 818960
817213 >35 secs > 817214
legendary
Activity: 2394
Merit: 1412
Leading Crypto Sports Betting & Casino Platform
November 29, 2023, 09:46:24 PM
#24
It seems to be mostly Antpool that mines these empty blocks.
Given that they have a similar hashrate to Foundry, shouldn't this be happening at a similar frequency between the two?

This makes me suspect that Antpool is doing this on purpose. I get that this blocks that came out empty were mined at a very close time proximity to the previous block by the same pool...
But couldn't they have mined in such a way that they would be able to confirm at least some transactions?
Well if it's only antpool mining such blocks these days maybe other pools found a way to prevent empty blocks!
hero member
Activity: 1423
Merit: 504
November 29, 2023, 09:16:52 PM
#23
Another one just now
https://www.blockchain.com/explorer/blocks/btc/819056
Just a little over 2 hours apart from each other.
 https://www.blockchain.com/explorer/blocks/btc/819045
legendary
Activity: 2576
Merit: 1655
November 29, 2023, 06:48:19 PM
#22
Block number 818960 was mined completely empty by Antpool recently.
At a time of very high transaction fees, we're having this issue again. A large pool like Antpool just sabotaging the protocol...
https://mempool.space/block/00000000000000000001cda8cd28d2a202898fa0b66a1d0a144f81fc1f8fb594

Yes, just a couple of weeks ago, ViaBTC mined a empty block as well: Block 817214.
legendary
Activity: 4214
Merit: 4458
November 29, 2023, 06:42:04 PM
#21
Does it take THAT long to add a few Transactions to a Block?  Are a few seconds not enough for at least one of them to be included?
The mining pool still has to validate the entire previous block before adding even a single transaction to a new candidate block.

Let's say I validate the first 10% of the previous block. I then decide to add Transaction X to my new candidate block. How do I know Transaction X hasn't already been mined in the remaining 90% of the previous block? I don't. Is it worth risking the 6.25 BTC block reward for the few thousand extra sats I would gain from mining Transaction X, versus invalidating my entire block because Transaction X has already been mined?

Before adding a single transaction to my new candidate block I need to verify the entire previous block. It only takes a few seconds (or even less), but on occasion this is all that is needed to successfully mine an empty block.

not quite
most pools already validated most transactions to even get into the mempool. to already get into a block. so they dont need to do any validation on their own block.. its actually 2 other things
a. the exclusion of spent UTXO inputs of the UTXOSET and the inclusion of outputs into the UTXOSET
b. its also then ordering the mempool in feerate order and chosing candidate transactions which add upto the block limit of a candidate block

whats also happening is the asics dont sit idle waiting for a full block header to hash. they have been given a empty block blockheader which gives them a nonce+extra nonce range to work on before asking for extra work via a update of a blockheader. its those few seconds of mining a nonce+extra nonce range that takes longer then the pool making a full block template header to then send to asics
legendary
Activity: 2268
Merit: 18509
November 29, 2023, 05:23:30 PM
#20
Does it take THAT long to add a few Transactions to a Block?  Are a few seconds not enough for at least one of them to be included?
The mining pool still has to validate the entire previous block before adding even a single transaction to a new candidate block.

Let's say I validate the first 10% of the previous block. I then decide to add Transaction X to my new candidate block. How do I know Transaction X hasn't already been mined in the remaining 90% of the previous block? I don't. Is it worth risking the 6.25 BTC block reward for the few thousand extra sats I would gain from mining Transaction X, versus invalidating my entire block because Transaction X has already been mined?

Before adding a single transaction to my new candidate block I need to verify the entire previous block. It only takes a few seconds (or even less), but on occasion this is all that is needed to successfully mine an empty block.
legendary
Activity: 4116
Merit: 7849
'The right to privacy matters'
November 29, 2023, 02:23:56 PM
#19
Quote
Developers could force the first moment of mining after a prior block to also be unsolvable thus every block would have a minutes time to load tx's
This will not solve it. If you force miners to not mine an empty block, for example for the first minute, then I can tell you, what miners can do: they can set the time of the block, one minute into the future, mine that block, and broadcast it to the network, but just one minute later.

And guess what: in that case, miners in the lucky pool would have one minute of advantage, because the block will be already mined, and they will start building on top of that, before everyone else will receive it.

In the past, there were some attacks, related to delaying the block propagation. You don't want to make that attack a consensus rule. And you don't want to force honest miners into connecting to competing pools, and checking their block headers, to make sure, that the system is honest, and they do not secretly mine on some future header, that is not yet broadcasted.

Edit: Also note that delaying block time on consensus level is potentially dangerous. Why? Imagine a soft-fork, that would force the time of the block to be always 20 minutes or later. Guess what will happen: the difficulty will drop into the minimum, and will stay there, so it will cause blockstorms, like in testnet3.

Of course, in case of one minute delay, it won't be that bad, but note that introducing any delay on consensus level will lower the difficulty. And then, the question is: do you want to lower the difficulty, below the level, determined by the free market of Proof-of-Work? Do you want to force smart miners into mining a long chain of blocks in advance, and sharing them later, when the time of the block would allow broadcasting it to the network? Because that is the consequence of those changes, if you left everything else unchanged.

Edit: Obviously, I have no proof for that, but I guess even if the block reward will be zero, then we will still have empty blocks. Why?
1. Because of coinbase maturity. If some mining pool have some coins in some recent blocks, then 100 blocks are needed, even if the coinbase reward for them will be set to zero. Unlocking the coins may still be worth pushing a block with zero reward.
2. Because of difficulty changes. Even if no coins are produced, then new blocks can help to enforce the proper difficulty. You cannot force miners to stop, and rely on the promise, that they will obey your rules.
3. To notarize things on-chain. Currently, regular payments are fighting with Ordinals, but if you use Bitcoin by the book, then you can note, that if you want to timestamp any document, then all you need, is just pushing some 256-bit number. And all of that can be hidden behind some public key, or some signature. Which means, even if no coins are produced, then someone may still be interested in mining a block, just to refer to some public key or signature, as a proof, that some document existed at a given time.
4. To consolidate coins, or perform some other actions by some mining pool. Even if you have no new transactions, then still, you can have some of your own transactions, and that can be a good moment to push them. Because you are the creator of those transactions (they could also use zero fee), you can be 100% sure, that they are valid, and you can include them in your block template.

Edit: Maybe I should add more explanation to the last point: each transaction has a field called "locktime". If it is set, and mining some block number is needed to make it spendable, or passing some point in time is required, then even empty blocks with no reward, can still be used to unlock such transactions. Which makes it redundant with point number one, but just applied more widely, to non-coinbase transactions.

Well this simply means that in 2036 more and more miners will move towards scrypt.
Miners are $ per watt no more no less.

BTW Satoshi's whole creation was based on $ per watt or Power to wealth.

So in 2036 if blocks pay 0.39??? + 0.50 = 0.89

where is the value it is in the fees not the rewards.

We are heading into a new era of mining.

So if developers leave it alone as you suggest. Miners will need to balance do I want a 10 second block that pays me 0.39 or do I want a 2 minute block that pays me 0.39 + 0.50 = 0.89

We all know 10 sec blocks are rare
We all know clocks for blocks vary as much as 50 seconds from true time.
We all know pools play with everything they can think of for an edge.

I do wish I could be 36 rather than 66 as I would love to see this play out in the 2036 to 2056 time frame.

I would be 79-99 and likely not care as much as I get that old.

I just see scrypt as have solved the volume issue with 12 blocks vs 1 for sha
I see scrypt as having solved the reward issue with Doge's constant reward of 10,000 coins

it would be year 42 in 2056 for doge so the inflation would be reduced to about 2%

as doge does inflation as such

1 x
2 2x 100%
3 3x   50%
4 4x   33%
5 5x   25%
*
10 10x
11 11x 10%
*
20 20x
21 21x 5%


It looks more and more like BTC will be wealth storage item

and scrypt will be smaller monies

Your argument that developers won't be able to fix it seems sound.

My argument that miners will do the easy thing shift to scrypt is likely to happen.

as
0.39 + 0  = 0.39
vs
0.39 + 0.50 = 0.89  in 2-36  only will become worse by 2056

heck in 2044 empty block will be

0.09765625 + 0 = 0.09765625
vs
0.09765625 + 0.5 = 0.59765625.

that is a tremendous hardship for pools doing 1 block every few days.

So we could have 3 pools doing 33% each as they would be able to handle those fast shit blocks since they make 48 blocks a day the shitty 0 fee blocks average out.

all other miners will need to shift to scrypt as it will never have that issue.

Am I making $ sense
hero member
Activity: 667
Merit: 1529
November 29, 2023, 12:36:07 PM
#18
Quote
Developers could force the first moment of mining after a prior block to also be unsolvable thus every block would have a minutes time to load tx's
This will not solve it. If you force miners to not mine an empty block, for example for the first minute, then I can tell you, what miners can do: they can set the time of the block, one minute into the future, mine that block, and broadcast it to the network, but just one minute later.

And guess what: in that case, miners in the lucky pool would have one minute of advantage, because the block will be already mined, and they will start building on top of that, before everyone else will receive it.

In the past, there were some attacks, related to delaying the block propagation. You don't want to make that attack a consensus rule. And you don't want to force honest miners into connecting to competing pools, and checking their block headers, to make sure, that the system is honest, and they do not secretly mine on some future header, that is not yet broadcasted.

Edit: Also note that delaying block time on consensus level is potentially dangerous. Why? Imagine a soft-fork, that would force the time of the block to be always 20 minutes or later. Guess what will happen: the difficulty will drop into the minimum, and will stay there, so it will cause blockstorms, like in testnet3.

Of course, in case of one minute delay, it won't be that bad, but note that introducing any delay on consensus level will lower the difficulty. And then, the question is: do you want to lower the difficulty, below the level, determined by the free market of Proof-of-Work? Do you want to force smart miners into mining a long chain of blocks in advance, and sharing them later, when the time of the block would allow broadcasting it to the network? Because that is the consequence of those changes, if you left everything else unchanged.

Edit: Obviously, I have no proof for that, but I guess even if the block reward will be zero, then we will still have empty blocks. Why?
1. Because of coinbase maturity. If some mining pool have some coins in some recent blocks, then 100 blocks are needed, even if the coinbase reward for them will be set to zero. Unlocking the coins may still be worth pushing a block with zero reward.
2. Because of difficulty changes. Even if no coins are produced, then new blocks can help to enforce the proper difficulty. You cannot force miners to stop, and rely on the promise, that they will obey your rules.
3. To notarize things on-chain. Currently, regular payments are fighting with Ordinals, but if you use Bitcoin by the book, then you can note, that if you want to timestamp any document, then all you need, is just pushing some 256-bit number. And all of that can be hidden behind some public key, or some signature. Which means, even if no coins are produced, then someone may still be interested in mining a block, just to refer to some public key or signature, as a proof, that some document existed at a given time.
4. To consolidate coins, or perform some other actions by some mining pool. Even if you have no new transactions, then still, you can have some of your own transactions, and that can be a good moment to push them. Because you are the creator of those transactions (they could also use zero fee), you can be 100% sure, that they are valid, and you can include them in your block template.

Edit: Maybe I should add more explanation to the last point: each transaction has a field called "locktime". If it is set, and mining some block number is needed to make it spendable, or passing some point in time is required, then even empty blocks with no reward, can still be used to unlock such transactions. Which makes it redundant with point number one, but just applied more widely, to non-coinbase transactions.
legendary
Activity: 4116
Merit: 7849
'The right to privacy matters'
November 29, 2023, 12:08:08 PM
#17
Block number 818960 was mined completely empty by Antpool recently.
At a time of very high transaction fees, we're having this issue again. A large pool like Antpool just sabotaging the protocol...
https://mempool.space/block/00000000000000000001cda8cd28d2a202898fa0b66a1d0a144f81fc1f8fb594


That used to make sense when the block rewards were higher before the previous halvings, and perhaps during those times the competition between miners wasn't that hard. But currently why would a miner give away the opportunity to gain additional incentives "to sabotage" the network that incentivizes it? If they keep "sabotaging" the network, and if Bitcoin mining is a business of small margins, then they will just kill themselves.

¯\_(ツ)_/¯

I believe philipma1957 could explain why if it's truly an attempt to savotage the network.

It is not an attempt to sabotage it is really good luck and the loophole is left open by developers.

Developers could force the first moment of mining after a prior block to also be unsolvable thus every block would have a minutes time to load tx's

Down the road say 2036 it would be an issue

here is why

I kept fees  flat at 0.50 btc


             Rewards          Fees
2023 = 6.250000        0.50
2024 = 3.125000         0.50
2028 = 1.562500         0.50
2032 =  0.781250         0.50
2036 =  0.390625        0.50

Now picture yourself as a wealth solo miner. (lots and lots and lots of hashrate)

If you hit a block today like antminer did  you would say oh well I was super lucky I grabbed 6.25 btc and that's what counts.

it you hit it in 2036

you would I got fucked only 0.39.. and zero fees most blocks are .39+.50 = .89

So I wonder if the loop hole will get closed by developers in the future.

Remember Scrypt with 2 blocks of LTC and 10 blocks of Doge  for she's 256 is alway an option for mining.

If you mined just scrypt since the release of the bitmain L7 in Jan 21 you made a fortune and the L7 still turns profits
hero member
Activity: 756
Merit: 1723
Crypto Swap Exchange
November 29, 2023, 12:05:32 PM
#16
pools wont waste time to risk losing 6.25btc by wasting time just for a 0.3btc possible commission..
the smart game is to secure the 6.25btc race win
Does it take THAT long to add a few Transactions to a Block?  Are a few seconds not enough for at least one of them to be included?

-----

I do not think this was an attempt to sabotage the Network.  The Miners / Pools who censor Transactions and Addresses maybe.  But not this one.

Why would they leave out ALL Transactions.  It makes no sense.  It would make sense if Miners chose to censor many of us but what is the point of even using Bitcoin or Mining at all if you include NOTHING in a Block.
legendary
Activity: 4214
Merit: 4458
November 29, 2023, 11:55:55 AM
#15
That used to make sense when the block rewards were higher before the previous halvings, and perhaps during those times the competition between miners wasn't that hard. But currently why would a miner give away the opportunity to gain additional incentives "to sabotage" the network that incentivizes it? If they keep "sabotaging" the network, and if Bitcoin mining is a business of small margins, then they will just kill themselves.
...
You're risking 6.25 BTC for 0.3 BTC extra, miners are not gamblers!

stompix is learning good math
pools wont waste time to risk losing 6.25btc by wasting time just for a 0.3btc possible commission..
the smart game is to secure the 6.25btc race win
legendary
Activity: 2828
Merit: 6108
Jambler.io
November 29, 2023, 11:36:18 AM
#14
That used to make sense when the block rewards were higher before the previous halvings, and perhaps during those times the competition between miners wasn't that hard. But currently why would a miner give away the opportunity to gain additional incentives "to sabotage" the network that incentivizes it? If they keep "sabotaging" the network, and if Bitcoin mining is a business of small margins, then they will just kill themselves.

Next mined block carried ‎0.458 BTC of fees, note that it was 12 minute after so some higher fees wouldn't have been in it, if you look at 818946 which was mined just under a minute after the previous one it only carried ‎0.303 BTC of fees.
You're risking 6.25 BTC for 0.3 BTC extra, miners are not gamblers!


legendary
Activity: 4214
Merit: 4458
November 29, 2023, 11:17:46 AM
#13
If there was a way for a miner to send out the next block candidate with included transactions already validated based on the current block being mined, then anyone receiving a new block could just mine a full one every single time, but that could mean previous miner deciding on which transactions should go in the next block.

I like OP's obvious smear campaign against antpool, really classic, why don't we do the same with all miners processing little weasels we call ordinals or other little weasels appearing from time to time on chain?😉

the problem with a pool making a blocktemplate full of transactions.. mine it. and during that blocks normal blocktime they create a nextblock template full of transactions ordered as if processing block confirms "just incase", to instantly start a full block at 0.01seconds after.. is that IF they solved the second block in X seconds. the network of nodes is handling 2 blocks of transactions in seconds have to deal with organising the removal and inclusion of old/new utxo in the utxoset
it actually helps the network to send a empty block as oppose to a full block a few seconds after first full block. as it gives nodes those few extra seconds to shuffle the UTXO's around and not have the second full block causing congestion by spending utxo that the node hasnt organised yet

because if a node sees a second full block before its concluded its utxo organising of first block it will see some transactions without settled utxo being spent. so would reject the second block and then a re-broadcast would be needed to then check again.. so a empty block actually helps

and by 'seconds' im not talking minutes of congestion relief i actually do mean seconds of avoiding any double acts, but its still meaningful when thinking of the propagation network of solved block broadcasts
copper member
Activity: 1330
Merit: 899
🖤😏
November 29, 2023, 10:59:45 AM
#12
If there was a way for a miner to send out the next block candidate with included transactions already validated based on the current block being mined, then anyone receiving a new block could just mine a full one every single time, but that could mean previous miner deciding on which transactions should go in the next block.

I like OP's obvious smear campaign against antpool, really classic, why don't we do the same with all miners processing little weasels we call ordinals or other little weasels appearing from time to time on chain?😉
hero member
Activity: 2086
Merit: 813
November 29, 2023, 10:31:55 AM
#11
I believe that is a starting block broadcasted by the network that is why the fees is zero it help start the blocks and makes it kinda easier for miners to receive the next block.

when a pools solves a block it has to remove the SPENT UTXO from its mempool, add new UTXO's to mempool from confirmed block.. and then collate fresh unspent/uncomfirmed transactions to add to a block template.. this takes a few seconds.

so during the time from solving a block to having a "filled block" they can't just have their stratum workers asics laying idle waiting for a "filled" block template header. so the pool sends them an empty template header to work on in the meantime.

its pure luck one of them asics finds a solution in seconds to a 'empty block' .

this makes sense.

no need for people to go all conspiracy theory about network sabotage people. Not everything has to be a conspiracy people. They just happened to mine a block almost immediately after the last block, which they also mined.
Pages:
Jump to: