Open sbellem opened 6 years ago
small typos
4.4 Instantiating ACS Efficiently
(page 7, last paragraph before subsubsection Communication-optimal reliable broadcast)
We now briefly explain the RBC and ABA constructions before explaing the Ben-Or protocol in more detail.
"explaing" --> "explaining"
Communication-optimal reliable broadcast
(page 7, last paragraph of subsubsection Communication-optimal reliable broadcast)
If the sender is correct, the total running time is three (asynchronous) rounds; and in any case, at most two rounds elapse between when the first correct node outputs a value and the last outputs a value. The reliable broadcast algorithm shown in Figure 2.
"is" seems to be missing
The reliable broadcast algorithm is shown in Figure 2.
wondering ...
1.1 Our Contributions
Timing assumptions considered harmful.
[...]
on page 2, first paragraph
Second, even when the weak synchrony assumptions are satisfied in practice, weakly synchronous protocols degrade significantly in throughput when the underlying network is unpredictable. Ideally, we would like a protocol whose throughput closely tracks the network’s performance even under rapidly changing network conditions. Unfortunately, weakly asynchronous protocols require timeout parameters that are finicky to tune, especially in cryptocurrency application settings; and when the chosen timeout values are either too long or too short, throughput can be hampered. As a concrete example, we show that even when the weak synchrony assumptions are satisfied, such protocols are slow to recover from transient network partitions (Section 3).
"weakly asynchronous" --> "weakly synchronous" (?)
wondering ...
C. ASYNCHRONOUS BINARY BYZANTINE AGREEMENT
Realizing binary agreement from a common coin.
[...] We instantiate this primitive with a protocol based on cryptographic common coin, which essentially act as synchronizing gadgets.
"on cryptographic common coin" --> "on cryptographic common coins" (?)
7. Reference
ref [42]:
A. Mostefaoui, H. Moumen, and M. Raynal. Signature-free asynchronous byzantine consensus with t< n/3 and o (n 2) messages. In Proceedings of the 2014 ACM symposium on Principles of distributed computing, pages 2–9. ACM, 2014.
o (n 2) --> O (n^2)
3. THE GAP BETWEEN ASYNCHRONOUS AND WEAKLY SYNCHRONOUS NETWORK MODELS
In this section, we present make two counter arguments that refute the premise above.
present or make ?
page 2, left column, bottom
We provide a full-fledged implementation of HoneyBadgerBFT, which will we release as free open source software in the near future.
will we --> we will
DEFERRED PROOFS
[...]
Experiment 1. [...] The adversary selects
N - 2f
correct nodes and letS
denote the union of their proposed transactions -- recall that the ACS protocol guarantees that the agreed set contains at least transactions proposed byN - 2f
correct nodes.
contains at least transactions --> contains at least B/4
transactions (?)
Experiment 2. [...] [...] [...] If the average number of transactions across these epochs is smaller than
1/4 * B
,D
guesses that the ciphertexts are real; otherwise it guess they are random.
guess --> guesses (?)
Applicability to permissionless blockchains. [...] Several recent works have suggested the promising idea of leveraging either a slower, external blockchain such as Bitcoin or economic “proof-of-stake” assumptions involving the underlying currency itself [32, 32, 35, 37] to bootstrap faster BFT protocols, by selecting a random committee to perform BFT in every different epoch.
[32, 32, 35, 37] --> [32, 35, 37] ?
5.1 Bandwidth Breakdown and Evaluation
... Bandwidth and breakdown findings. ... ... The system’s effective throughput ... However, when when the batch size reaches 16384, ...
when when --> when
Besides all the above we need to add the improvements from #12 and an explanation of what went wrong
Dear authors, I have two technical questions after reading the conference paper. Could you help me resolve them? 1) It seems the handling (or "validation", in the application perspective) of transactions is not specified in the paper. For instance, if we deploy HB-BFT for a consortium blockchain, where do we put the validation part? My initial thought was adding validation as a predicate to the BA instances, since by do so the ACS output can be used for block packaging directly. 2) IMHO, the "censorship resistance" property achieved by TPKE is a reduced form of the strong censorship resistance property, or the "liveness"/"fairness" concept. In HB-BFT, nodes has one-to-one correspondence with the randomly sampled tx sets. The adversarial schedulor can still do "blind censoring" by focusing on attacking nodes only. Meanwhile, strong censorship resistance would achieve unanimous acceptance on all valid input txs. Thx and really appreciate your feedback!
Nice questions Yang, thanks!
Thanks for the answer Andrew! I'm getting a clear picture now. Yes the validation part is much owed to the application layer, depending on how the account/transaction/balance data structures are designed.
From @sbellem on August 23, 2017 22:44
The purpose of this issue is to communicate small improvements (such as typos) to the research paper by Miller et al. The Honey Badger of BFT Protocols.
Copied from original issue: amiller/HoneyBadgerBFT#31