<p>According to an answer to <a href="https://bitcoin.stackexchange.com/q/77976/13866">Specific explanation of &quot;timeout&quot; configuration option in Bitcoin</a></p>
<blockquote>
<p>The -timeout flag sets the amount of time to wait during an attempt to connect to a node. It defaults to 5000 ms.</p>
</blockquote>
<p>According to <a href="https://en.wikipedia.org/wiki/Earth%E2%80%93Moon%E2%80%93Earth_communication" rel="nofollow noreferrer">Earth–Moon–Earth communication (Wikipedia)</a></p>
<blockquote>
<p>Propagation time to the Moon and back ranges from 2.4 to 2.7 seconds, with an average of 2.56 seconds (distance from Earth to the Moon is 384,400 km).</p>
</blockquote>
<p>So, even taking into account processing delays at each end and at intermediate stations, the protocol ought to be usable. Whether nodes would selectively choose more responsive peer nodes might depend on implementation, if so, that might lead to a blockchain fork.</p>
<p>Data rates will be a critical factor, starting up a full node (or several concurrently) on the Moon might be challenging.</p>
<p>Mars would be out though.</p>

CC BY-SA 4.0
2021-07-22T18:57:58.583Z
And just to confirm, mars would be out because the time for light to travel to mars and back is *not* negligible compared to the interblock time?
Paymahn Moghadasian
CC BY-SA 4.0
2021-07-22T19:04:48.587Z
@Paymahn: Mars is out because the Earth-Mars-Earth propagation time is between 6 and 44 minutes (depending on orbital positions) - which is always far longer than any reasonable connection timeout as well as often being substantially greater than the target interblock time and, in the worst case (during Mars opposition) longer than all but a small percentage of actual interblock times
RedGrittyBrick
CC BY-SA 4.0
2021-07-22T17:19:50.580Z
2021-07-22T17:27:07.390Z
2021-07-22T17:27:07.390Z
RedGrittyBrick
<p><strike> The Nakomoto consensus should work regardless of where the miners are located, as long as they are using the same network. The internet on earth, as it currently stands, is fully connected. So miners in China, Germany, and the United States are all contributing to the network where information is travelling across the internet.</p>
<p>It could be conceivable that different planets (or the moon) would have their own internet at some point, disconnected from that of earth's, but that seems less likely than being connected via satellite transmission. As long as the networks of the moon and Mars are connected to the internet on earth, everything should still work normally. </strike></p>
<p>Edit: Thanks to @PeterWuille in the comments for correcting this information. Here's what was said:</p>
<p>&quot;Nakamoto consensus requires that the block propagation time between miners is negligible compared to the inter-block time. If it isn't, miners which are latency-wise &quot;close&quot; to each other will find more blocks that proportional to their hashrate share (simply because further out miners have a delay before being able to start working on a block), resulting in a (geographical) centralization pressure. When the latency exceeds the inter-block time (like it would be between Earth and Mars) the networks will split and fail to converge even.&quot;</p>

CC BY-SA 4.0
2021-07-22T16:52:19.113Z
Interesting. What if 51% of miners are on a planet that is more than 10-light minutes away from earth while the remaining 49% of miners are on earth? Will it still work under those conditions? If so, why?
Paymahn Moghadasian
CC BY-SA 4.0
2021-07-22T17:00:34.013Z
@PaymahnMoghadasian Admittedly, I'm not sure if the latency that would come along with a earth-internet-connected Mars would make a difference, other than potentially the speed of transactions.
Jacob Jones
CC BY-SA 4.0
2021-07-22T17:09:29.603Z
This answer is incorrect. Nakamoto consensus requires that the block propagation time between miners is negligible compared to the inter-block time. If it isn't, miners which are latency-wise "close" to each other will find more blocks that proportional to their hashrate share (simply because further out miners have a delay before being able to start working on a block), resulting in a (geographical) centralization pressure. When the latency exceeds the inter-block time (like it would be between Earth and Mars) the networks will split and fail to converge even.
Pieter Wuille
CC BY-SA 4.0
2021-07-22T18:53:21.380Z
Got it, thanks for the confirmation @PieterWuille - your answer is more inline with my intuition.
Paymahn Moghadasian
CC BY-SA 4.0
2021-07-22T18:53:58.587Z
@PieterWuille Thanks for correcting me there!
Jacob Jones
CC BY-SA 4.0
2021-07-22T16:43:15.070Z
2021-07-22T18:56:02.130Z
2021-07-22T18:56:02.130Z
Jacob Jones
<p>Will Bitcoin (or Nakamoto consensus) work if a non trivial portion (say 5%) of miners/nodes are on the moon? What about mars? How about one of the moons of Jupiter?</p>
<p>If not, why not? If yes, how does the consensus algorithm adapt to messaging delays because of large distances?</p>
<p>If 5% on the moon works, will 20%? What about 50%? If 5% doesn't work, what about 1%? Or 0.1%?</p>
<p>Are there well known theoretical limits of extraplanetary (ie: beyond earth) consensus?</p>

CC BY-SA 4.0
2021-07-22T18:52:32.873Z
Yup, totally answers my question! Thanks for pointing it out!
Paymahn Moghadasian
<consensus><interplanetary>
Will Nakamoto consensus work if a nontrivial portion of miners/nodes are on the moon?
Paymahn Moghadasian
# Will Nakamoto consensus work if a nontrivial portion of miners/nodes are on the moon?

(Asked by: username_0 on 2021-07-22)

Will Bitcoin (or Nakamoto consensus) work if a non trivial portion (say 5%) of miners/nodes are on the moon? What about mars? How about one of the moons of Jupiter?

If not, why not? If yes, how does the consensus algorithm adapt to messaging delays because of large distances?

If 5% on the moon works, will 20%? What about 50%? If 5% doesn't work, what about 1%? Or 0.1%?

Are there well known theoretical limits of extraplanetary (ie: beyond earth) consensus?

**Tags:** consensus, interplanetary

> **Comments:**
> **username_0**: Yup, totally answers my question! Thanks for pointing it out!  

---

## 2 answers

### Answer by username_1 on 2021-07-22. Score: 1

According to an answer to [Specific explanation of "timeout" configuration option in Bitcoin](https://bitcoin.stackexchange.com/q/77976/13866)

> The -timeout flag sets the amount of time to wait during an attempt to connect to a node. It defaults to 5000 ms.

According to [Earth–Moon–Earth communication (Wikipedia)](https://en.wikipedia.org/wiki/Earth%E2%80%93Moon%E2%80%93Earth_communication)

> Propagation time to the Moon and back ranges from 2.4 to 2.7 seconds, with an average of 2.56 seconds (distance from Earth to the Moon is 384,400 km).

So, even taking into account processing delays at each end and at intermediate stations, the protocol ought to be usable. Whether nodes would selectively choose more responsive peer nodes might depend on implementation, if so, that might lead to a blockchain fork.

Data rates will be a critical factor, starting up a full node (or several concurrently) on the Moon might be challenging.

Mars would be out though.

> **Comments:**
> **username_0**: And just to confirm, mars would be out because the time for light to travel to mars and back is *not* negligible compared to the interblock time?  
> **username_1**: @username_0: Mars is out because the Earth-Mars-Earth propagation time is between 6 and 44 minutes (depending on orbital positions) - which is always far longer than any reasonable connection timeout as well as often being substantially greater than the target interblock time and, in the worst case (during Mars opposition) longer than all but a small percentage of actual interblock times  

---

### Answer by username_2 on 2021-07-22. Score: 1

The Nakomoto consensus should work regardless of where the miners are located, as long as they are using the same network. The internet on earth, as it currently stands, is fully connected. So miners in China, Germany, and the United States are all contributing to the network where information is travelling across the internet.

It could be conceivable that different planets (or the moon) would have their own internet at some point, disconnected from that of earth's, but that seems less likely than being connected via satellite transmission. As long as the networks of the moon and Mars are connected to the internet on earth, everything should still work normally.

Edit: Thanks to @PeterWuille in the comments for correcting this information. Here's what was said:

"Nakamoto consensus requires that the block propagation time between miners is negligible compared to the inter-block time. If it isn't, miners which are latency-wise "close" to each other will find more blocks that proportional to their hashrate share (simply because further out miners have a delay before being able to start working on a block), resulting in a (geographical) centralization pressure. When the latency exceeds the inter-block time (like it would be between Earth and Mars) the networks will split and fail to converge even."

> **Comments:**
> **username_0**: Interesting. What if 51% of miners are on a planet that is more than 10-light minutes away from earth while the remaining 49% of miners are on earth? Will it still work under those conditions? If so, why?  
> **username_2**: @username_0 Admittedly, I'm not sure if the latency that would come along with a earth-internet-connected Mars would make a difference, other than potentially the speed of transactions.  
> **username_3**: This answer is incorrect. Nakamoto consensus requires that the block propagation time between miners is negligible compared to the inter-block time. If it isn't, miners which are latency-wise "close" to each other will find more blocks that proportional to their hashrate share (simply because further out miners have a delay before being able to start working on a block), resulting in a (geographical) centralization pressure. When the latency exceeds the inter-block time (like it would be between Earth and Mars) the networks will split and fail to converge even.  
> **username_0**: Got it, thanks for the confirmation @username_3 - your answer is more inline with my intuition.  
> **username_2**: @username_3 Thanks for correcting me there!  

---

