Pages:
Author

Topic: How devil competes with its own mined blocks. (Read 492 times)

legendary
Activity: 1456
Merit: 1174
Always remember the cause!
September 21, 2018, 05:23:02 AM
#23
Claiming to be big and attracting miners because of it comes with responsibilities. For a pool operator it is no excuse to say: "hay, we are in china, and we don't trust in our Europe mirror and we have to validate their blocks and it takes so much time so we compete with each other"!

This isn't about trust. The scenario could have played out like this, if one branch didn't broadcast their block:

AntPool finds block outside of China. The block propagates fine for the rest of the world, but has issues getting through the GFW. While it's trying to get to China, ViaBTC in China finds a block. Since they have not gotten the AntPool block yet, they propagate their block. ViaBTC manages to propagate throughout all of China, while AntPool propagates everywhere else. If the next block is found by a Chinese miner who built on ViaBTC's block, AntPool's block would have been orphaned, even if it was technically mined earlier.

I believe this happened in the past with KanoPool & BTC.com. KanoPool found a block a few seconds before BTC.com, but BTC.com (located in China) also broadcasted their block. The next block was found by BTC.com, so Kano's block was orphaned.
Speaking of block propagation, it is useful to dive a bit more in details:

Once a miner finds a block it starts relaying it to its peers, for each peer to be convinced about the authenticity of the block, both the lucky miner and the peer should go through a rather lengthy protocol in which the bottleneck is not the communication channel but the ability of the peer to validate it mainly by comparing each of the transactions included in the block against the UTXO (blockchain state) besides a lot of other measures, like running the input scripts, checking consensus rules, ...
Unless the peer finds everything consistent, it doesn't care about the block under consideration and specifically it won't  interrupt its own mining operations (if any) and it won't start relaying the block (at least before passing some specific steps).

But when it is about the branches of a same pool, the situation is radically different:
They can switch to new job start relaying it almost immediately, simply because they are not peers!
They are multiple instances of a single entity and trust each other.

If Antpool is so naive that runs each of  its branches just like an independent pool, it doesn't deserve its reputation for being big and attractive and if it has adjusted its intra-p2p protocol to avoid such a meaningless and time consuming "re-validation", how is it possible for it to relay two blocks simultaneously and competitively, without a bad intention?

As of Kano/btc.com case it is obviously a competition between two blocks of two different miners and normally happens with orphan blocks as its result.
legendary
Activity: 1456
Merit: 1174
Always remember the cause!
September 21, 2018, 04:50:30 AM
#22
How did you come up with your 90s in the initial post if i compare the timestamps of the screenshot the difference is 42s
Timestamps does not help when it is about seconds. Bitcoin uses a rather sophisticated timing mechanism (network adjusted time) that allows timestamps to diverse from UTC a bit. Plus, miners are free to play with timestamp field. Pools specially can, use this field to distribute work among several workers to prevent them from repeating each other's (failed) attempts, ...
legendary
Activity: 2758
Merit: 3282
September 20, 2018, 06:05:04 PM
#21
Claiming to be big and attracting miners because of it comes with responsibilities. For a pool operator it is no excuse to say: "hay, we are in china, and we don't trust in our Europe mirror and we have to validate their blocks and it takes so much time so we compete with each other"!

This isn't about trust. The scenario could have played out like this, if one branch didn't broadcast their block:

AntPool finds block outside of China. The block propagates fine for the rest of the world, but has issues getting through the GFW. While it's trying to get to China, ViaBTC in China finds a block. Since they have not gotten the AntPool block yet, they propagate their block. ViaBTC manages to propagate throughout all of China, while AntPool propagates everywhere else. If the next block is found by a Chinese miner who built on ViaBTC's block, AntPool's block would have been orphaned, even if it was technically mined earlier.

I believe this happened in the past with KanoPool & BTC.com. KanoPool found a block a few seconds before BTC.com, but BTC.com (located in China) also broadcasted their block. The next block was found by BTC.com, so Kano's block was orphaned.
newbie
Activity: 2
Merit: 0
September 20, 2018, 11:39:32 AM
#20
How did you come up with your 90s in the initial post if i compare the timestamps of the screenshot the difference is 42s
legendary
Activity: 1456
Merit: 1174
Always remember the cause!
September 20, 2018, 05:08:53 AM
#19
I suppose blockchain.info is ways more cautious about its statistics they possibly use redundant nodes, track pools addresses, ... and I couldn't figure out an incentive for such a forgery.
If I wanted to hurt AntPool's reputation, and I had the hashrate to do it, I could pretend that they found a block but are hiding it from their users and stealing the reward. If I hated AntPool, or wanted people to switch to my pool (assuming I ran one), it might be an interesting tactic.
With all due respects,  NO!
As you've mentioned it costs A LOT and has no profit: ZERO. If your reasoning is correct, the hypothetical pool owner could easily figure out that his 'tactic' won't hurt Antpool and instead of wasting his power would try to make some real profit out of it by mining normally.

I think you are misunderstanding the whole concept. It doesn't cost you anything additionally.
In this scenario, it wouldn't be antpool who is receiving the reward.. it would be you. You would be just claiming that antpool mined the block.

So, instead of simply just mining and yelling "hello i have found this block", you would be like "Mined by antpool" while YOU are getting the reward.
This doesn't cost you anything, but can give you a lot of profit in terms of miner inside antpool thinking "hey, antpool mined 3 blocks in the past hour, but only 1 got paid out". This does harm the reputation a lot.

Calling this a lot of costs and zero profit, is naive.
I thought DarkStar_ is suggesting another scenario but I maintain "zero profit" hypothesis. Miners don't count pool's found blocks naively to claim their rewards, they look at their steady flow of income.  On the contrary, pools have real incentive to prove their total hashrate high.

Antpool has mined two blocks almost simultaneously and has played foolish or selfish.

It would be foolish if they have divided their power and selfish if they have relayed both and mined on one.
I don't think you understand how mining works. It scales linearly, so 10 pools with 10 PH/s has the same chance of finding a block as one pool with 100 PH/s.

With all due respects, again, NO! Mining does not scale linearly because of variance. If it did scale we wouldn't have any pools at all. A pool with 10 PH/s performs better than 10 pools with same total power because it has less variance and more proximity premium. It is why people prefer larger pools and pools advertise their hash power eagerly.

Well.. you are wrong, again.

This is simple math. Mining is a probability game. When mining for a short amount of time, it is completely based on luck whether/when you find a block.
But in the long run, it all smooths out. One pool with 10PH/s DOES mine as much blocks as 10 pools combined with 1PH/s each.

This also is completely unrelated to the fact that we have multiple pools. Multiple pools exist because pool operator want to earn money (in terms of transaction fees, small percentage, etc.. ).
If we had only one pool, bitcoin basically would be owned by the pool operator. This wouldn't be just senseless, but extremely retarded too.
No it is not simple math. It is probability math and we are talking about Bernoulli distribution of binary  probabilities which is more complicated because of variance/standard deviation problem. I have discussed this subject heavily before, please refer to this topic: An Analysis of Mining Variance ...

As I have showed in the above reference, we need pools because mining performance does not scale linearly.
For instance you can not mine on bitcoin network (as a rational economic choice) using a single S9 or even 10 of those, you need to join a pool, otherwise you act just like gambling in a very high stake roulette with just one big winner in every 10 minutes, which is not a rational business behavior after all.

Even for your 1 PH/s scenario (like 75 S9s) your variance in hitting a block in a year would be worse than tossing a coin once and win, i.e. there is more than 50% chance for you not to be rewarded once in a year! You are right that 'in the long run, it all smooths out' but we don't live 'in the longrun'.

Still, there is another problem: proximity premium, which again acts in favor of large pools because they are more frequently 'near' to the information source (news about found blocks) and take advantage of this by switching to new blocks more quickly instead of remaining in the dark for a long time wasting their resources and mining orphan blocks.

So, the bigger the pool, more profitable and competitive is mining. It is why I have proposed getting rid of pools by PoCW.
legendary
Activity: 1624
Merit: 2481
September 20, 2018, 04:41:12 AM
#18
I suppose blockchain.info is ways more cautious about its statistics they possibly use redundant nodes, track pools addresses, ... and I couldn't figure out an incentive for such a forgery.
If I wanted to hurt AntPool's reputation, and I had the hashrate to do it, I could pretend that they found a block but are hiding it from their users and stealing the reward. If I hated AntPool, or wanted people to switch to my pool (assuming I ran one), it might be an interesting tactic.
With all due respects,  NO!
As you've mentioned it costs A LOT and has no profit: ZERO. If your reasoning is correct, the hypothetical pool owner could easily figure out that his 'tactic' won't hurt Antpool and instead of wasting his power would try to make some real profit out of it by mining normally.

I think you are misunderstanding the whole concept. It doesn't cost you anything additionally.
In this scenario, it wouldn't be antpool who is receiving the reward.. it would be you. You would be just claiming that antpool mined the block.

So, instead of simply just mining and yelling "hello i have found this block", you would be like "Mined by antpool" while YOU are getting the reward.
This doesn't cost you anything, but can give you a lot of profit in terms of miner inside antpool thinking "hey, antpool mined 3 blocks in the past hour, but only 1 got paid out". This does harm the reputation a lot.

Calling this a lot of costs and zero profit, is naive.





Antpool has mined two blocks almost simultaneously and has played foolish or selfish.

It would be foolish if they have divided their power and selfish if they have relayed both and mined on one.
I don't think you understand how mining works. It scales linearly, so 10 pools with 10 PH/s has the same chance of finding a block as one pool with 100 PH/s.

With all due respects, again, NO! Mining does not scale linearly because of variance. If it did scale we wouldn't have any pools at all. A pool with 10 PH/s performs better than 10 pools with same total power because it has less variance and more proximity premium. It is why people prefer larger pools and pools advertise their hash power eagerly.

Well.. you are wrong, again.

This is simple math. Mining is a probability game. When mining for a short amount of time, it is completely based on luck whether/when you find a block.
But in the long run, it all smooths out. One pool with 10PH/s DOES mine as much blocks as 10 pools combined with 1PH/s each.

This also is completely unrelated to the fact that we have multiple pools. Multiple pools exist because pool operator want to earn money (in terms of transaction fees, small percentage, etc.. ).
If we had only one pool, bitcoin basically would be owned by the pool operator. This wouldn't be just senseless, but extremely retarded too.
legendary
Activity: 1456
Merit: 1174
Always remember the cause!
September 20, 2018, 04:15:55 AM
#17
I suppose blockchain.info is ways more cautious about its statistics they possibly use redundant nodes, track pools addresses, ... and I couldn't figure out an incentive for such a forgery.
If I wanted to hurt AntPool's reputation, and I had the hashrate to do it, I could pretend that they found a block but are hiding it from their users and stealing the reward. If I hated AntPool, or wanted people to switch to my pool (assuming I ran one), it might be an interesting tactic.
With all due respects,  NO!
As you've mentioned it costs A LOT and has no profit: ZERO. If your reasoning is correct, the hypothetical pool owner could easily figure out that his 'tactic' won't hurt Antpool and instead of wasting his power would try to make some real profit out of it by mining normally.

Antpool has mined two blocks almost simultaneously and has played foolish or selfish.

It would be foolish if they have divided their power and selfish if they have relayed both and mined on one.
I don't think you understand how mining works. It scales linearly, so 10 pools with 10 PH/s has the same chance of finding a block as one pool with 100 PH/s.
With all due respects, again, NO! Mining does not scale linearly because of variance. If it did scale we wouldn't have any pools at all. A pool with 10 PH/s performs better than 10 pools with same total power because it has less variance and more proximity premium. It is why people prefer larger pools and pools advertise their hash power eagerly.


 AntPool found two different blocks (if you check, there's a different block hash and different transaction count) and broadcasted both. It's very common for a pool to relay the same block through multiple nodes, as it can help speed up propagation and prevent the block from being an orphan. Pools such as KanoPool will even try to broadcast a block mined a few seconds after a new network block, in the off chance that their block is better propagated.

My guess: A node inside China found one block, and a node outside China found the other. One of the blocks had trouble getting through the GFW, so the nodes did not know that a new block was found. For example, someone trying to download an 8 MB file from their Shanghai nodes got 50 KB/s download speeds from outside China. Block 535510 was 1.1 MB, so it may have not fully propagated into China.
Claiming to be big and attracting miners because of it comes with responsibilities. For a pool operator it is no excuse to say: "hay, we are in china, and we don't trust in our Europe mirror and we have to validate their blocks and it takes so much time so we compete with each other"!

You try to remain optimistic, I understand, we all need optimism nowadays, but Bitmain should do better  Wink






legendary
Activity: 2758
Merit: 3282
September 19, 2018, 11:28:02 PM
#16
I suppose blockchain.info is ways more cautious about its statistics they possibly use redundant nodes, track pools addresses, ... and I couldn't figure out an incentive for such a forgery.

If I wanted to hurt AntPool's reputation, and I had the hashrate to do it, I could pretend that they found a block but are hiding it from their users and stealing the reward. If I hated AntPool, or wanted people to switch to my pool (assuming I ran one), it might be an interesting tactic.

Antpool has mined two blocks almost simultaneously and has played foolish or selfish.

It would be foolish if they have divided their power and selfish if they have relayed both and mined on one.

I don't think you understand how mining works. It scales linearly, so 10 pools with 10 PH/s has the same chance of finding a block as one pool with 100 PH/s.

The latter is very common and not selfish, but it's not what AntPool did in this case. AntPool found two different blocks (if you check, there's a different block hash and different transaction count) and broadcasted both. It's very common for a pool to relay the same block through multiple nodes, as it can help speed up propagation and prevent the block from being an orphan. Pools such as KanoPool will even try to broadcast a block mined a few seconds after a new network block, in the off chance that their block is better propagated.

My guess: A node inside China found one block, and a node outside China found the other. One of the blocks had trouble getting through the GFW, so the nodes did not know that a new block was found. For example, someone trying to download an 8 MB file from their Shanghai nodes got 50 KB/s download speeds from outside China. Block 535510 was 1.1 MB, so it may have not fully propagated into China.
legendary
Activity: 1456
Merit: 1174
Always remember the cause!
September 19, 2018, 05:40:23 PM
#15
There is incentive for a pool to claim a block: convincing miners to join and there is no incentive to fake it in the name of other pools. I think it is very unlikely to be a conspiracy. As always, the simplest explanation is the correct one. Antpool has mined two blocks almost simultaneously and has played foolish or selfish.

It would be foolish if they have divided their power and selfish if they have relayed both and mined on one.
legendary
Activity: 1624
Merit: 2481
September 19, 2018, 12:15:59 PM
#14
Or is it impossible to fake the RelayedBy field?

The miner of a block can put any string (limited by size) into this field.
So, anyone can put "Mined by XXX" into it. This also means that pools can simply not set this field.

There is nothing/noone stopping him from doing so. There also is no reason for that. It is an optional field.

Regarding IP addresses, this field simply just shows which IP you received the block from. This can (but doesn't have to) be the miner.
legendary
Activity: 1456
Merit: 1174
Always remember the cause!
September 18, 2018, 09:12:32 AM
#13
Option Five: Another unknown devil practice.

What about

Option Six: it's a completely different pool masquerading as Antpool.

Or is it impossible to fake the RelayedBy field?
I suppose blockchain.info is ways more cautious about its statistics they possibly use redundant nodes, track pools addresses, ... and I couldn't figure out an incentive for such a forgery.
legendary
Activity: 1456
Merit: 1174
Always remember the cause!
September 18, 2018, 08:47:27 AM
#12
bitcoin core relays blocks to other peers on the network. i don't see why this would be any different for a pool operator?

they didn't ignore it. they had to choose to extend one or the other.
It is a while that bitcoin core nodes do not relay orphan blocks anymore. Additionally miners have more incentive to avoid relaying competing forks unless they are practicing kinda evil strategy like a variant of selfish mining (option 4).
legendary
Activity: 978
Merit: 1080
September 18, 2018, 05:08:16 AM
#11
Option Five: Another unknown devil practice.

What about

Option Six: it's a completely different pool masquerading as Antpool.

Or is it impossible to fake the RelayedBy field?
legendary
Activity: 3612
Merit: 1564
September 18, 2018, 04:45:16 AM
#10
bitcoin core relays blocks to other peers on the network. i don't see why this would be any different for a pool operator?

they didn't ignore it. they had to choose to extend one or the other.
legendary
Activity: 1456
Merit: 1174
Always remember the cause!
September 18, 2018, 02:02:30 AM
#9
For a pool operator, yes it does  Wink

And yet it would be even more weird if it wasn't their own block: A pool with a big share that relays a block of other pools and continues mining while ignoring it.

legendary
Activity: 3612
Merit: 1564
September 18, 2018, 12:07:52 AM
#8
relayed by doesn't necessarily mean they mined it.
legendary
Activity: 1624
Merit: 2481
September 09, 2018, 11:29:01 AM
#7
Honestly, this looks nonsensical but if any the competitors doesn't have at least 20% of the total hashpower and you have 10 x 2%, there's a greater chance that you will get the price than merging them in a single miner like your competitor.

 Huh

In the end, luck decides who actually finds a suitable hash.
It doesn't matter if someone has bought 20 out of 100 tickets (20% hashrate) or 10 times 2 tickets (which also equals 20 tickets -> 20% hashrate).

Splitting into multiple mining facilities can have a small advantage when receiving a block from a competitor (with different locations in the network, you are receiving a new block faster).
This way you may save a few seconds and can start on a new block a bit earlier.


But regarding the probability of mining a block, it doesn't matter at all whether you have 1 mining facility with 40% of the hashrate, or 40 with 1% hashrate each.
It may have different advantages (e.g. power costs, safety, etc..).. but has NO influence on the average income from block rewards. And that's a mathematical fact.
legendary
Activity: 2394
Merit: 5531
Self-proclaimed Genius
September 09, 2018, 04:16:31 AM
#6
I know it's kind of late, but this seems interesting enough for me to investigate.
I'll just leave it here, it must be "Option Five: Another unknown devil practice" or Three.

Based on the data from blocks converted into "words", you'll see that Antpool have more than ten(10) variants or extensions
that could possibly be another "branches".
Code:
/ViaBTC/Mined by hshcs9/,
Mined by AntPool616 [
Mined by AntPool70M [
/ViaBTC/Mined by tyjs9/,
Mined by AntPool8& [
/ViaBTC/Mined by juchaos9/,
Mined by AntPool20 [
/ViaBTC/Mined by wangts/,
Mined by AntPool48.
Mined by jingtieshan
Mined by AntPool3*
Mined by AntPool93:
/ViaBTC/Mined by yabtc/,
/ViaBTC/Mined by zou02/,
/ViaBTC/Mined by pangolin200/,
Mined by AntPool2c
Mined by AntPool42O
Mined by AntPool44=
Mined by AntPool58/
Mined by AntPool191
/ViaBTC/Mined by cc120/,
Mined by AntPool616
/ViaBTC/Mined by facility963/,
Mined by AntPool4E
/ViaBTC/Mined by shenchong1994/,
Mined by AntPool110D
/ViaBTC/Mined by facility963/,
Mined by AntPool616
Mined by AntPool616
Mined by AntPool27
Mined by AntPool54F [
Mined by AntPool3*

Since their total hashrate is so high compared to the competitors, dividing it to ten or twenty could yield higher chance to hit more blocks than running a single powerhouse.
We don't know what they're thinking but it seemed that doing this was more favorable to them in terms of "mining lottery" with few participant slots (let's say 100), they are taking 40 of those spots; the more tickets, the more chances of winning.
Honestly, this looks nonsensical but if any the competitors doesn't have at least 20% of the total hashpower and you have 10 x 2%, there's a greater chance that you will get the price than merging them in a single miner like your competitor.

Not only Antpool, ViaBTC seemed doing the same trend as you can see above.

Those were extracted from blocks sometime around August.
legendary
Activity: 1610
Merit: 1183
I think it's because they have two or more "competing" pools, i.e. eu.antpool, asia.antpool, etc. Each pool has its own block template, maybe for latency reduction.
Well, it's similar to "option two" and I don't think antpool (or other parties) have malicious intent.

Big quotation marks in "competing" pools there. Indeed there's different antpool pools but not only that, im sure Jihan controls a bunch of these other mysterious pools which as far as im concerned, came out of nowhere, have no clear visible leader of the operation, no one knows where their headquarters are and so on.

Then, there's under the table deals in which Jihan Wu is for sure involved. Haipo Yang and Jihan most likely are in contact. Who knows if Haipo and other CEO's of other mining operations aren't really CEO's of different companies but Jihan's employees getting paid to act as CEO's of different companies so Jihan can diversify his power without being accused of controlling the market with a 51%+ hashrate.

I really hope advancements in ASICs can end the Chinese monopoly and hope your proposal is a success and actually functional.
legendary
Activity: 1456
Merit: 1174
Always remember the cause!
I think it's because they have two or more "competing" pools, i.e. eu.antpool, asia.antpool, etc. Each pool has its own block template, maybe for latency reduction.
Well, it's similar to "option two" and I don't think antpool (or other parties) have malicious intent.
Yes, it is option two. But still, it is kinda fraud.
People join pools with higher higher hash rate because they promise more stable income (lower variance). It is meaningless to have competing branches under the same 'brand'.

More importantly, two distinct work templates for two hypothetical branches couldn't lead to this situation.
1-Once a 'branch' finds a block, it would relay it to other branch(es) immediately, it takes a fraction of a second and they wouldn't need to validate it because they trust each other, It is just about the relaying of the block header (they can delay relaying the body once it is requested by other peers, proxying it). So the window for such an incident is really short, like 0.1-0.2 seconds

2- In case of any collision, it is also pointless to relay both blocks to the network because of the probability of both blocks becoming orphans due to the possible competition by a third party, unless the decision for the blocks to be propagated was made almost simultaneously. Not only it would be a weird architecture for a pool to have independent, autonomous presence in the p2p network but also it shortens the probability window even more.

3-Imagining two branches of the same pool unintentionally competing with each other becomes harder, when we remember that this relay (to other peers) is a long process that takes 1-2 seconds to be completed and each branch can easily abort it once it becomes aware of the unintentional competition.

Personally, I'm in favor of option 3, they are stupid dick heads  Grin

Running a pool with a multi branch architecture needs more sophisticated designs like a  specialized internal relay network and a redundant but synchronized single point of presence on bitcoin p2p network.

It is a common situation, corporates have an inherent gradient towards stupidity, they just can't help it. Wink



Pages:
Jump to: