<blockquote>
  <p>If I understand it correctly, this only proves it works in synchronous network. If so, this assumption seems relaxed to me.</p>
</blockquote>

<p>The Bitcoin network is not synchronous, it is asynchronous and maintains consensus.</p>

<blockquote>
  <p>Can Bitcoin protocol achieve consensus in partial synchronous network as well?</p>
</blockquote>

<p>Since Bitcoin is an asynchronous network and achieves consensus, it stands to reason that Bitcoin would be able to achieve consensus in a synchronous or partially synchronous network as well.</p>

CC BY-SA 3.0
2018-01-15T03:02:39.020Z
I guess with plain English is not precise enough for discussion. There's so much subtle differences between different types of synchrony. Like the max message deliver delay assumption. The fact that it "works" most of the time in real life doesn't prove it will always work. Only rigorous proof can convince me.
user10375
CC BY-SA 4.0
2018-09-03T01:15:04.827Z
There is no proof that Bitcoin achieves consensus in an asynchronous network (yet), so we don't *know* whether it does, or what additional assumptions are needed.
Pieter Wuille
CC BY-SA 4.0
2018-10-16T01:05:22.560Z
A proof for consensus under synchronous assumptions is mostly vacuous: More or less equivalent to showing a digital signature scheme is secure against forgery in a universe where the only way to generate a signature is to follow the protocol.  Formalization that show Bitcoin secure under contrived models might be useful progress, but aren't actually evidence of security in a useful sense. I am very concerned about the ethics of some parties that show Bitcoin secure in a toy formalization then argue an alternative is equally secure because it is also secure in the same toy formalization.
G. Maxwell
CC BY-SA 4.0
2018-10-17T00:42:01.800Z
@G.Maxwell, does bitcoin not assume that all peer clocks are synchronized within 2 hours? That is my node will reject blocks 2 hours into future, so there is some synchronization assumption, right?
sanket1729
CC BY-SA 3.0
2018-01-15T00:53:04.873Z
2018-01-15T00:53:04.873Z
Ava Chow
<p><a href="http://nakamotoinstitute.org/static/docs/anonymous-byzantine-consensus.pdf" rel="nofollow noreferrer">This paper</a> rigorously proves that Bitcoin can achieve consensus under the assumption of bounded message delivery time:</p>

<blockquote>
  <p>Messages  in  a  mailbox may  be  delivered  in  any  order,  and  at 
  any  time,  except there is a maximum delay of ∆</p>
</blockquote>

<p>If I understand it correctly, this only proves it works in synchronous network. If so, this assumption seems relaxed to me. </p>

<p><a href="https://tendermint.com/static/docs/tendermint.pdf" rel="nofollow noreferrer">Tendermint</a> paper claims it can work under the partial synchronous assumption (from <a href="http://twiki.di.uniroma1.it/pub/SD/Diario0607/p288-dwork.pdf" rel="nofollow noreferrer">DLS paper</a>):</p>

<blockquote>
  <p>There is assumed to be some unknown upper bound ∆ on the time of
  messages to be delivered. </p>
</blockquote>

<p>The setup is more general in that the <code>upper bound ∆</code> here is <strong>unknown</strong>. </p>

<p>Can Bitcoin protocol achieve consensus in partial synchronous network as well? Is there any theory work dedicated to proving that?</p>

<bitcoin-core><proof-of-work>
Can Bitcoin(PoW) work under partial synchrony?
user10375
# Can Bitcoin(PoW) work under partial synchrony?

(Asked by: username_0 on 2018-01-15)

[This paper](http://nakamotoinstitute.org/static/docs/anonymous-byzantine-consensus.pdf) rigorously proves that Bitcoin can achieve consensus under the assumption of bounded message delivery time:

> Messages in a mailbox may be delivered in any order, and at
> any time, except there is a maximum delay of ∆

If I understand it correctly, this only proves it works in synchronous network. If so, this assumption seems relaxed to me.

[Tendermint](https://tendermint.com/static/docs/tendermint.pdf) paper claims it can work under the partial synchronous assumption (from [DLS paper](http://twiki.di.uniroma1.it/pub/SD/Diario0607/p288-dwork.pdf)):

> There is assumed to be some unknown upper bound ∆ on the time of
> messages to be delivered.

The setup is more general in that the `upper bound ∆` here is **unknown**.

Can Bitcoin protocol achieve consensus in partial synchronous network as well? Is there any theory work dedicated to proving that?

**Tags:** bitcoin-core, proof-of-work


---

## 1 answers

### Answer by username_1 on 2018-01-15. Score: 1

> If I understand it correctly, this only proves it works in synchronous network. If so, this assumption seems relaxed to me.

The Bitcoin network is not synchronous, it is asynchronous and maintains consensus.

> Can Bitcoin protocol achieve consensus in partial synchronous network as well?

Since Bitcoin is an asynchronous network and achieves consensus, it stands to reason that Bitcoin would be able to achieve consensus in a synchronous or partially synchronous network as well.

> **Comments:**
> **username_0**: I guess with plain English is not precise enough for discussion. There's so much subtle differences between different types of synchrony. Like the max message deliver delay assumption. The fact that it "works" most of the time in real life doesn't prove it will always work. Only rigorous proof can convince me.  
> **username_2**: There is no proof that Bitcoin achieves consensus in an asynchronous network (yet), so we don't *know* whether it does, or what additional assumptions are needed.  
> **username_3**: A proof for consensus under synchronous assumptions is mostly vacuous: More or less equivalent to showing a digital signature scheme is secure against forgery in a universe where the only way to generate a signature is to follow the protocol.  Formalization that show Bitcoin secure under contrived models might be useful progress, but aren't actually evidence of security in a useful sense. I am very concerned about the ethics of some parties that show Bitcoin secure in a toy formalization then argue an alternative is equally secure because it is also secure in the same toy formalization.  
> **username_4**: @G.username_3, does bitcoin not assume that all peer clocks are synchronized within 2 hours? That is my node will reject blocks 2 hours into future, so there is some synchronization assumption, right?  

---

