{'fraction_non_alphanumeric': 0.04031227358943675, 'fraction_numerical': 0.009125617668368053, 'mean_word_length': 4.070667877486997, 'pattern_counts': {'":': 0, '<': 52, '<?xml version=': 0, '>': 55, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 26, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
Proof-of-Stake Longest Chain Protocols: Security vs Predictability

The Nakamoto longest chain protocol is remarkably simple and has been proven to provide security against any adversary with less than 50% of the total hashing power. Proof-of-stake (PoS) protocols are an energy efficient alternative; however existing protocols adopting Nakamoto's longest chain design achieve provable security only by allowing long-term predictability (which have serious security implications). In this paper, we prove that a natural longest chain PoS protocol with similar predictability as Nakamoto's PoW protocol can achieve security against any adversary with less than 1/(1+e) fraction of the total stake. Moreover we propose a new family of longest chain PoS protocols that achieve security against a 50% adversary, while only requiring short-term predictability. Our proofs present a new approach to analyzing the formal security of blockchains, based on a notion of adversary-proof convergence.


Introduction
Bitcoin is the original blockchain, invented by Nakamoto. At the core is the permissionless consensus problem, which Nakamoto solved with a remarkably simple but powerful scheme known as the longest chain protocol. It uses only basic cryptographic primitives (hash functions and digital signatures). In the seminal paper [23] that introduced the original Bitcoin protocol, Nakamoto also showed that the protocol is secure against one specific attack, a private doublespend attack, if the fraction of adversarial hashing power, β, is less than half the hashing power of the network. This attack is mounted by the adversary trying to grow a long chain over a long duration in private to replace the public chain. Subsequently, the security of Bitcoin against all possible attacks is proven in [15], and further extended to a more realistic network delay model in [25]. The permissionless design (robustness to Sybil attacks) of Bitcoin is achieved via a proof-of-work (PoW) mining process, but comes at the cost of large energy consumption. Recently proof-of-stake (PoS) protocols have emerged as an energy-efficient alternative. When running a lottery to win the right to propose the next valid block on the blockchain, each node wins with probability proportional its stake in the total pool. This replaces the resource intense mining process of PoW, while ensuring fair chances to contribute and claim rewards.
There are broadly two families of PoS protocols: those derived from decades of research in Byzantine Fault Tolerant (BFT) protocols and those inspired by the Nakamoto longest chain protocol. Attempts at blockchain design via the BFT approach include Algorand [9,16] and Hotstuff [32]. The adaptation of these new protocols into blockchains is an active area of research and engineering [4,16], with large scale permissionless deployment as yet untested.
Motivated and inspired by the time-tested Nakamoto longest chain protocol are the PoS designs of Snow White [6] and the Ouroboros family of protocols [2,10,19]. The inherent energy efficiency of the PoS setting comes with the cost of enlarging the space of adversarial actions. In particular, the attacker can "grind" on the various sources of the randomness, i.e., attempt multiple samples from the sources of randomness to find a favorable one. Since these multiple attempts are without any cost to the attacker this strategy is also known as a nothing-atstake (NaS) attack. One way to prevent an NaS attack is to rely on a source of randomness on which a consensus has been reached. In Snow White [6] and the Ouroboros family [2,10,19], this agreed upon randomness is derived from the stabilized segment of the blockchain from a few epochs before. Each epoch is a fixed set of consecutive PoS lottery slots that use the same source of agreed upon randomness. However, this comes at a price of allowing each individual node to simulate and predict in advance whether it is going to win the PoS lottery at a given slot and add a new block to the chain. Further, as the size of each epoch is proportional to the security parameter κ (specifically, a block is confirmed if and only if it is more than κ blocks deep in the blockchain), higher security necessarily implies that the nodes can predict further ahead into the future. This is a serious security concern, as predictability makes a protocol vulnerable against other types of attacks driven by incentives, such as predictable selfish mining or bribing attacks [7].
Nakamoto-PoS. A straightforward PoS adoption of Nakamoto protocol, which in contrast to Ouroboros and Snow White can update randomness every block, runs as follows; we term the protocol as Nakamoto-PoS. The protocol proceeds in discrete time units called slots, during which each node runs the "PoS lottery", a leader election with a winning probability proportional to the stake owned by the node -winners get to propose new blocks. Each node computes hash = H(time, secret key, parentBk.hash), where the hash function H is a verifiable random function (VRF) (formally defined in §C), which enables the nodes to run leader elections with their secret keys (the output hash is verified with the corresponding public key). The node n is elected a leader if hash is smaller than a threshold ρ × stake n , that is proportional to its stake stake n , then the node n proposes a new block consisting of time, parentBk.hash, public key and hash, and appends it to the parent block. A detailed algorithmic description of this protocol is in §G (with c = 1). Following Nakamoto's protocol, each honest node runs only one election, appending to the last block in the longest chain in its local view. Having the hash function depend on parentBk.hash ensures that every appended block provides a fresh source of randomness, for the following elections. However, there is no consensus on the randomness used and the randomness is block dependent, giving opportunities for the adversary to mount a NaS attack by trying its luck at many different blocks.
The analysis of the security of the Nakamoto-PoS protocol is first attempted in [14]. Just like Nakamoto's original analysis, their analysis is on the security against a specific attack: the private double-spend attack. Due to the NaS phenomenon, they showed the adversary can grow a private chain faster than just growing at the tip, as though its stake increases by a factor of e. This shows that the PoS longest chain protocol is secure against the private double spend against if the adversarial fraction of stake β < 1/(1+e). The question of whether the protocol is secure against all attacks, or there are attacks more serious than the private double spend attack, remains open. This is not only an academic question, as well-known blockchain protocols like GHOST [29] had been shown to be secure against the private attack, only to be shown not secure later [20,24].
Methodological Contribution. In this paper, we show that, under a formal security model ( §3), the Nakamoto-PoS protocol is indeed secure against all attacks, i.e., it has persistence and liveness whenever β < 1/(1 + e). One can view our result as analogous to what [15] proved for Nakamoto's PoW protocol. However, how we prove the result is based on an entirely different approach. Specifically, the security proofs of [15] are based on counting the number of blocks that can be mined by the adversary over a long enough duration (see Fig. 1), and showing that the longest chain is secure because the number of such adversarial blocks is less than the number of honest blocks whenever β < 0.5. This proof approach does not give non-trivial security results for the PoS protocol in question, because the number of adversarial blocks is exponentially larger than the number of honest blocks, due to the NaS phenomenon. Rather, our proof takes a dynamic view of the evolution of the blockchain, and shows that, whenever β < 1/(1 + e), there are infinite many time instances, which we call adversary-proof convergence times, in which no chains that the adversary can grow from the past can ever catch up to the longest chain any time in the future (see Fig. 1). 1 Whenever such an event occurs, the current longest chain will remain as a prefix of any future longest chain.
Although the adversary can propose an exponentially large number of blocks, perhaps surprisingly, the protocol can still tolerate a positive fraction β of ad- 1 The notion of adversary-proof convergence is not to be confused with the notion of convergence opportunities in [25]. The latter refers to times in which the honest blocks are not mined at similar time so that honest nodes may have a split view of the blockchain. It says nothing about whether the adversary can launch an attack using the blocks it mined. That is what our notion focuses on.
Main chain grows at rate ≥ # Tip of each of the adversarial NaS tree grows at rate e $ ≥ #T blocks
PoS Proof Idea PoW Proof Idea Fig. 1: Notations: λa, λ h are the rates at which the adversary and the honest nodes can mine a block on a given block, and T is the total duration. Left: In the PoW case, a counting argument shows that for the adversary to create a chain to match the longest chain, β > 1/2. This proof fails to work in the PoS case because there is no conservation of work and the total number of adversarial blocks that can be generated over a time duration T is exponentially larger than λaT . Right: Our proof technique. Race between main chain and adversarial trees: adversary-proof convergence happens at a honest block if none of the previous NaS trees can ever catch up with the main chain downstream of the honest block. Security is proven by showing these events occur at a non-zero frequency.
versarial stake. On the other hand, the fraction that can be tolerated ( 1 1+e ) is still less than the fraction for the longest chain PoW protocol ( 1 2 ). In [14] and [13], modifications of the longest chain protocol (called g-greedy and Ddistance-greedy) are proposed, based on improvements to their security against the private double-spend attack. In §A, we showed that, unlike the longest chain protocol, these protocols are subject to worse public-private attacks, and they not only do not exhibit true improvements in security than the longest chain protocol, but in many cases, they do far worse.
New PoS Protocol Contribution. Taking a different direction, we propose a new family of simple longest chain PoS protocols that we call c-Nakamoto-PoS ( §4); the fork choice rule remains the longest chain but the randomness update in the blockchain is controlled by a parameter c, the larger the value of the parameter c, the slower the randomness is updated. The common source of randomness used to elect a leader remains the same for c blocks starting from the genesis and is updated only when the current block to be generated is at a depth that is a multiple of c. When updating the randomness, the hash of that newly appended block is used as the source of randomness. The basic PoS Nakamoto protocol corresponds to c = 1, where the NaS attack is most effective. We can increase c to gracefully reduce the potency of NaS attacks and increase the security threshold. To analyze the formal security of this family of protocols, we combine our analysis for c = 1 with results from the theory of branching random walks [28]; this allows us to characterize the largest adversarial fraction β * c of stake that can be securely tolerated. As c → ∞, β * c → 1/2. We should point out that the Ouroboros family of protocols [2,10] achieves security also by an infrequent update of the randomness; however, the update is much slower than what we are considering here, at the rate of once every constant multiple of κ, the security parameter. This is needed because the epoch must be long enough for the blockchain in the previous epoch to stabilize in order to generate the common randomness for the current epoch. Here, we are considering c to be a fixed parameter independent of κ, and show that this is sufficient to thwart the NaS attack. Technically, we show that even if c is small, there is no fundamental barrier to achieving any desired level of security κ. Hence, achieving a high level of security κ should not come at the cost of longer predictable window, and in this paper we introduce a natural adoption of Nakamoto protocol to achieve this. The practical implication of this result is shown in Fig. 2, where we can see that c-Nakamoto can achieve comparable security with a much smaller prediction window than a current implementation of Orouboros as part of the Cardano project [30].
Organization. In §2 we formally define prediction windows for any PoS protocol and discuss a class of bribery attacks enabled by the predictive feature of leader elections of many PoS protocols. The seriousness of these bribery attacks is underscored by the fatal nature of the attacks (double-spends and ledger rewrites) and that they can be implemented by bribing a fraction of users possessing an arbitrarily small total stake. This sets the stage for the protocols discussed in this paper, Nakamoto-PoS and c-Nakamoto-PoS, which have low The security threshold β * c of c-Nakamoto-PoS against the prediction window, equaling to c times the inter-block time, which we set to be 20s, to match the implementation of Orouboros in Cardano. The Cardano project currently updates the common randomness every 5 days (21600 blocks, or 10κ), while the security threshold of c-Nakamoto-PoS can approach 1/2 with much higher randomness update frequency.
prediction windows and hence resistant to these bribery attacks. §3 discusses the formal security model we use to the analyze the c-Nakamoto-PoS protocols (defined formally in §4). The formal security analyses of Nakamoto-PoS and c-Nakamoto-PoS protocols are conducted in §5. This analysis, conducted in the static stake setting, is generalized to dynamic stake settings in §6.  Table 1: Our results decouple the prediction window W and the security parameter κ, achieving any combination of (W, κ). Prediction window W for other PoS protocols are strongly coupled with the security parameter κ = log(1/P failure ). The maximum threshold of adversarial stake that can be tolerated by the PoS protocols while being secure is β * . Nakamoto-PoS is the most basic way of extending Nakamoto protocol to the PoS setting. This was originally introduced in [13,14] but with an incomplete security analysis; In §5 we show β * c ≈ 1/2 − Θ( (1/c)ln c) and numerically tabulate β * c (example: β * c = 39% for c = 10). [2,10,19] are the Ouroboros family, [6] is Snow White, [14] is g-Greedy, and [13] is D-Distance-Greedy.

Predictability in PoS Protocols
In PoW protocols such as Bitcoin, no miner knows when they will get to propose the block until they solve the puzzle, and once they solve the puzzle, the block is inviolable (because the puzzle solution will become invalid, otherwise). This causality is reversed in proof-of-stake (PoS) protocols: a node eligible to propose a block knows a priori of its eligibility before proposing a block. This makes PoS protocols vulnerable to a new class of serious attacks not possible in the PoW setting. We briefly discuss these attacks here, deferring a detailed discussion to §D.
Definition 1 (W -predictable). Given a PoS protocol Π PoS , let C be a valid blockchain ending with block B with a time stamp t. We say a block B enables w-length prediction, if there exists a time t 1 > t and a block B 1 with a time stamp t 1 such that (i) B 1 can be mined by miner (using its private state and the common public state) at time t; and (ii) B 1 can be appended to C to form a valid blockchain for any valid chain C that extends C by appending w − 1 valid blocks with time stamps within the interval (t, t 1 ). By taking the maximum over the prediction length over all blocks in Π PoS , we say Π PoS is W -predictable. W is the size of the prediction window measured in units of number of blocks.
Informally, a longest-chain PoS protocol has W length prediction window if it is possible for a miner to know that it is allowed to propose a block W blocks downstream of the present blockchain. We note that our definition is similar to the definition of W -locally predictable protocols in [7], where it has been pointed out that PoS protocols trade off between predictability and nothingat-stake incentive attacks. In Table 1, we compare the prediction windows of various protocols. The longest-chain family of protocols of Ouroboros update randomness every epoch have prediction window equal to the epoch length. Furthermore, they require the epoch length to be proportional to the security parameter κ, since one error event is that a majority of block producers in an epoch are not honest (and in that case, they can bias the randomness of all future slots).
We note that in any PoS protocol with confirmation-depth κ (the number of downstream blocks required to confirm a given block), a simple bribing attack is possible, where a briber requests the previous block producers to sign an alternate block for each of their previous certificates. However, such attacks are overt and easily detectable, and can be penalized with slashing penalties. If the prediction window W is greater than the confirmation-depth κ, then the following covert (undetectable) attack becomes possible. An adversary who wants to issue a double-spend can create a website where nodes that have future proposer slots post their leadership certificates for a bribe. If the adversary gets more than κ + 1 miners to respond to this request, then the adversary can launch the following attack: (1) collect the κ + 1 leadership certificates (2) issue a transaction that gets included in the upcoming honest block, (3) let the honest chain grow for κ blocks to confirm the transaction and receive any goods in return, then (4) create a double spend against the previous transaction and (5) create a longer chain downstream of a block including the double-spend using the κ + 1 certificates. We note that this attack does not require participation from miners having a majority of the stake. Far from it, it only requires κ + 1 out of the next 2κ miners each holding a potentially infinitesimal fraction of stake. Furthermore, this attack does not require miners to double-sign blocks, making it indistinguishable from unexpected network latency and providing plausible deniability for the miners who take the bribe. Thus, it is a serious covert attack on security requiring only participants with a net infinitesimal stake to participate in it. We note that this attack is not covered in the popular adaptive adversary model [10,16], since in that model, nodes are assumed not to have any agency and remain honest till the adversary corrupts them (based only on public state).
We note that it is not possible to mitigate the prediction issue by increasing the confirmation depth beyond the prediction window (which is equal to the epoch length). This is because the guarantees of existing protocols rely on the randomness of each epoch being unbiased and this guarantee fails to hold when a majority of nodes in an epoch are bribed through the aforementioned mechanism in order to bias the randomness.
While our discussion so far focused on longest-chain PoS protocols, we note that the prediction issue is even more serious in BFT based PoS protocols. PoSbased BFT protocols that work with the same committee or same proposer for many time-slots give raise to similar prediction based attacks. Even in protocols such as Algorand [9,16], which require a new committee for each step of the BFT protocol, the entire set of committees for all steps of the BFT protocol for a given block is known once the previous block is finalized. This leads to a similar type of bribing attack where once a 2/3 majority of a BFT-step committee coordinate through a centralized website, they can sign a different block than the one the honest nodes agreed on. We note that since Algorand elects a small constant size committee (proportional to κ) for each round, a 2/3 majority of the committee can comprise a negligible total stake. Thus, in Algorand, even though the prediction window appears negligible, the confirmation delay is also small -thus leading to the same type of attack (detailed discussion deferred to §D). A formal definition of prediction window for BFT-based PoS protocols is in §D.4 where we evaluate the prediction window W for a canonical BFT based PoS protocol: Algorand [9]. There is a strong coupling between the security parameter and prediction window for Algorand, and is tabulated in Table 1.
Summary. We have demonstrated that both longest-chain and BFT based protocols are highly vulnerable to prediction-based security attacks when coordinating through an external bribing mechanism, thus compromising the persistence and liveness of the system. These attacks are covert, i.e., the deviant behavior is not detectable and punishable on the blockchain, and require only an infinitesimal fraction of the stake to collude, thus significantly weakening the security of the protocol. This motivates the study of Nakamoto-PoS (with a very small prediction window) and the design of a new PoS protocol that has a prediction window much shorter than the confirmation depth and can be secure against adversaries with up to 50% of the stake. This state of affairs, together with the security results we prove in this paper are summarized in Table 1.

Security Model
A blockchain protocol Π is directed by an environment Z(1 κ ), where κ is the security parameter. This environment (i) initiates a set of participating nodes N ; (ii) manages nodes through an adversary A which corrupts a dynamically changing subset of nodes; (iii) manages all accesses of each node from/to the environment including broadcasting and receiving messages of blocks and transactions.
The protocol Π proceeds in discrete time units called slots, each consisting of δ milliseconds (also called the slot duration), i.e. the time argument in the input to the hash function should be in δ millisecond increments. Each slot sl r is indexed by an integer r ∈ {1, 2, · · · }. A ledger associates at most one block to each slot among those generated (or proposed) by participating nodes, each running a distributed protocol. Collectively, at most one block per slot is selected to be included in the ledger according to a rule prescribed in the protocol Π. Similar to [19], we assume that the real time window for each slot satisfies that: (1)The time window of a slot is determined by a publicly-known and monotonically increasing function of current time; (2) every user has access to the current global time and any discrepancies between nodes' local time are insignificant in comparison with the slot duration.
We follow the security model of [10,15,25] with an ideal functionality F. This includes diffuse functionality and key and transaction functionality as described below. With a protocol Π, adversary A, environment Z, and security parameter κ, we denote by VIEW n,F Π,A,Z (κ) the view of a node n ∈ N who has access to an ideal functionality F.
We consider a semi-synchronous network model with bounded network delay similar to that of [10,25] that accounts for adversarially controlled message delivery and immediate node corruption. All broadcast messages are delivered by the adversary, with a bounded network delay ∆ millisecond. Let τ = ∆/δ be an integer. We model this bounded network delay by allowing the adversary to selectively delay messages sent by honest nodes, with the following restrictions: (i) the messages broadcast in slot sl r must be delivered by the beginning of slot sl r+τ ; and (ii) the adversary cannot forge or alter any message sent by an honest node. This is the so called delayed diffuse functionality (denoted by DDiffuse τ in [10]).
The dynamically changing set of honest (or uncorrupted) nodes H ⊆ N strictly follows the blockchain protocol Π. The key registration functionality (from [19]) is initialized with the nodes N and their respective stakes (stake 1 , . . . , stake |N | ) such that the fraction of the initial stake owned by node n is stake n / m∈N stake m . At the beginning of each round, the adversary can dynamically corrupt or uncorrupt any node n ∈ N , with a permission from the environment Z in the form of a message (Corrupt, n) or (Uncorrupt, n). Even the corrupted nodes form a dynamically changing set, the total proportion of the adversarial stake is upper bounded by β all the time. For the honest nodes, the functionality can sample a new public/secret key pair for each node and record them. For the corrupted nodes, if it is missing a public key, the adversary can set the node's public key, and the public keys of corrupt nodes will be marked as such. When the adversary releases the control of a corrupted node, the node retrieves the current view of the honest nodes at the beginning of the following round.
Any of the following actions are allowed to take place. (i) A node can retrieve its public/secret key pair from the functionality. (ii) A node can retrieve the whole database of public keys from the functionality. (iii) The environment can send a message (Create) to spawn a new node, whose local view only contains the genesis block, and the functionality samples its public/secret key pair. (iv) The environment can request a transaction, specifying its payer and recipient. The functionality adjusts the stakes according to the transactions that make into the current ledger, as prescribed by the protocol Π. The adversary has access to the state of a corrupt node n, and will be activated in place of node n with restrictions imposed by F. Verifiable Random Function (VRF). Verifiable Random Functions (VRF), first introduced in [21], generates a pseudorandom number with a proof of its correctness. A node with a secret key sk can call VRFprove(·, sk) to generates a pseudorandom output F sk (·) along with a proof π sk (·). Other nodes that have the proof and the corresponding public key pk can check that the output has been generated by VRF, by calling VRFverify(·, output, π sk (·), pk). An efficient implementation of VRF was introduced in [11], which formally satisfy Definition 5 in §C. This ensures that the output of a VRF is computationally indistinguishable from a random number even if the public key pk and the function VRFprove is revealed. Key Evolving Signature schemes (KES). We propose using forward secure signature schemes [5] to sign the transactions to be included in a generated block. This prevents the adversary from altering the transactions in the blocks mined in the past. Efficient Key Evolving Signature (KES) schemes have been proposed in [10,18] where keys are periodically erased and generated, while the new key is linked to the previous one. This is assumed to be available to the nodes via the ideal functionality F. This ensures immutability of the contents of the blocks.

Protocol description
We explain our protocol following terminologies from [10] and emphasize the differences as appropriate. The ideal functionality F captures the resources available to the nodes in order to securely execute the protocol. When a PoS system is launched, a collection N of nodes are initialized. Each node n ∈ N is initialized with a coin possessing stake stake n , a verification/signing key pair (KES.vk n , KES.sk n ), and a public/secret key pair (VRF.pk n , VRF.sk n ). The Key Evolving Signature key pair (KES) is used to sign and verify the content of a block, while the Verifiable Random Function key pair (VRF) is used to verify and elect leader nodes who generate new blocks. All the nodes and the adversary know all public keys {pk n = (KES.vk n , VRF.pk n )} n∈N . The genesis block contains all public keys and initial stakes of all nodes, {(pk n , stake n )} n∈N , and also contains a nonce in genesis.content.RandSource. This nonce is used as a seed for the randomness. The depth of a block in a chain is counted from the genesis (which is at depth zero). We denote the time at the inception of the genesis block as zero (milliseconds), such that the i-th slot starts at the time δ · i milliseconds (since the inception of the genesis block). Nakamoto-PoS protocol is executed by the nodes and is assumed to run indefinitely. At each slot a node starts with a local chain C, which it tries to append new blocks on.
Proposer selection. At each slot, a fresh subset of nodes are randomly elected to be the leaders, who have the right to generate new blocks. To be elected one of the leaders, each node first decides on where to append the next block, in its local view of the blocktree. This choice of a parent block is governed by the fork choice rule prescribed in the protocol. For example, in BitCoin, an honest node appends a new block to the deepest node in the local view of the blocktree. This is known as Nakamoto protocol. We propose s-truncated longest chain rule that includes the Nakamoto protocol as a special case, which we define later in this section.
A random number of leaders are elected in a single slot, and the collective average block generation rate is controlled by a global parameter ρ that is adaptively set by the ideal functionality F. The individual block generation rate is proportional to the node's stake. The stakes are updated continuously as the ledger is updated, but only a coin s blocks deep in the ledger can be used in the election (the same parameter s as used in the truncated longest chain rule), and is formally defined later in this section.
Concretely, at each slot, a node n ∈ N draws a number distributed uniformly at random in a predefined range. If this is less than the product of its stake and a parameter ρ (Algorithm 1 line 17), the node is elected one of the leaders of the slot and gains the right to generate a new block. Ideally, we want to simulate such a random trial while ensuring that the outcome (i) is verifiable by any node after the block generation; (ii) is unpredictable by any node other than node n before the generated block has been broadcast; and (iii) is independent of any other events. Verifiability in (i) is critical in ensuring consistency among untrusted pool of nodes. Without unpredictability in (ii), the adversary can easily take over the blockchain by adaptively corrupting the future leaders. Without independence in (iii), a corrupted node might be able to grind on the events that the simulator (and hence the outcome of the election) depends on, until it finds one that favors its chances of generating future blocks. Properties (ii) and (iii) are challenges unique to PoS systems, as predicting and grinding attacks are computationally costly in PoW systems.
To implement such a simulator in a distributed manner among mutually untrusting nodes, [10,16] proposed using Verifiable Random Functions (VRFs), formally defined in §C. In our proposed protocol, a node n uses its secret key VRF.sk to generate a pseudorandom hash and a proof of correctness (Algorithm 1 line 16). If node n is elected a leader and broadcasts a new block, other nodes can verify the correctness with the corresponding public key VRF.pk and the proof (which is included in the block content). This ensures unpredictability, as only node n has access to its secret key, and verifiability, as any node can access all public keys and verify that the correctness of the random leader election.
The pseudorandom hash generated by VRFprove(x, VRF.sk), depends on the external source of randomness, (x, VRF.sk), that is fed into the function. Along with the secret key VRF.sk, which we refer to as the private source of randomness, we prescribe constructing a header x that contains the time (in a multiple of δ milliseconds) and a dynamically changing common source of randomness. Including the time ensures that the hash is drawn exactly once every slot. Including the common source of randomness ensures that the random elections cannot be predicted in advance, even by the owner of the secret key. Such private predictability by the owner of the secret key leads to other security concerns that we discuss in §D.
A vanilla implementation of such a protocol might (a) update stakes immediately and (b) use the hash of the previous block (i.e. the parent of the newly generated block in the main chain as defined by the fork chain rule) as the common source of randomness. Each of these choices creates a distinct opportunity for an adversary to grind on, that could result in serious security breaches. We explain the potential threats in the following and propose how to update the randomness and the stake, respectively, to prevent each of the grinding attacks. A formal analysis of the resulting protocol is provided in §5.
Updating the common source of randomness. One way to ensure unpredictability by even the owner of the secret key is to draw randomness from the dynamically evolving blocktree. For example, we could use the hash of the parent block (i.e. the block that a newly generated block will be appended to). This hash depends only on the parent block proposer's secret key, the time, and the source of randomness included in the header of the parent block. In particular, this hash does not depend on the content of the parent block, to prevent an additional source of grinding attack. However, such a frequent update of the source creates an opportunity for the adversary to grind on. At every round, a corrupted node can run as many leader elections as the number of blocks in the blocktree, each appending to a different block as its parent. To mitigate such grinding attacks, we propose a new update rule for the source of randomness which we call c-correlation.
A parameter c ∈ Z determines how frequently we update. The common source of randomness remains the same for c blocks, and is updated only when the current block to be generated is at a depth that is a multiple of c (Algorithm 1 line 19). When updating, the hash of that newly appended block is used as the source of randomness. When c = 1, this recovers the vanilla update rule, where a grinding attack is most effective. We can increase c to gracefully increase the security threshold. A formal analysis is provided in §5. When c = ∞, every block uses the nonce at the genesis block as the common source of randomness. This makes the entire future leader elections predictable in private, by the owners of the secret keys.
Dynamic stake. The stake of a node n (or equivalently that of the coin the node possesses) is not only changing over time as transactions are added to the blocktree, but also over which chain we are referring to in the blocktree. Different chains in the tree contain different sequences of transactions, leading to different stake allocations. One needs to specify which chain we are referring to, when we access the stake of a node. Such accesses are managed by the ideal functionality F (Algorithm 1 line 12).
When running a random election to append a block to a parent block b at depth −1 in the blocktree, a coin can be used for this election of creating a block with depth if and only if the coin is in the stake at the block with depth − s on the chain leading to block b. Accordingly, a node n has a winning probability proportional to stake n (b) when mining on block b, where stake n (b) denotes the stake belonging to node n as in the (s − 1)-th block before b. Starting from an initial stake distribution stake n (b genesis ), we add to or subtract from the stake according to all transactions that (i) involve node n (or the coin that belongs to node n); (ii) are included in the chain of blocks from the genesis to the reference block b; and (iii) is included in the blockchain at least s − 1 blocks before b.
Here, s ∈ Z is a global parameter.
When s=1, the adversary can grind on (the secret key VRF.sk of) the coin. For example, once a corrupted node is elected as a leader at some time slot and proposed a new block, it can include transactions in that block to transfer all stake to a coin that has a higher chance of winning the election at later time slots. To prevent such a grinding on the coin, a natural attempt is to use the stake in the block with depth − s when trying to create a block at depth on the main chain. However, there remains a vulnerability, if we use the Nakamoto protocol from BitCoin as the fork choice rule.
Consider a corrupted node growing its own private chain from the genesis block (or any block in the blocktree). A private chain is a blockchain that the corrupted node grows privately without broadcasting it to the network until it is certain that it can take over the public blocktree. Under the Nakamoto protocol, this happens when the private chain is longer (in the number of blocks) than the longest chain in the public blocktree. Note that the public blocktree grows at a rate proportional to ρ and the total stake of the nodes that append to the public blocktree. With a grinding attack, the private chain, which is entirely composed of the blocks generated by the corrupted node, can eventually take over the public blocktree.
Initially, the private chain grows at a rate proportional to ρ and the stake controlled by the corrupted node. However, after s blocks from the launch of the private chain, the corrupted node can start grinding on the private key of the coin; once a favorable coin is found, it can transfer the stake to the favored coin by including transactions in the first ancestor block in the private chain. This is possible as all blocks in the private chain belong to the corrupted node. It can alter any content of the private chain and sign all blocks again. With such a grinding attack (which we refer to as coin grinding), the corrupted node can potentially be elected a leader every slot in the private chain, eventually overtaking the public blocktree. To prevent this private grinding attack, we propose using an s-truncation as the fork choice rule.
Fork choice rule. An honest node follows a fork choice rule prescribed in the protocol. The purpose is to reach a consensus on which chain of blocks to maintain, in a distributed manner. Eventually, such chosen chain of blocks produces a final ledger of transactions. Under the Nakamoto protocol, a node appends the next generated block to the longest chain in its local view of the blocktree. Unlike PoW systems, Nakamoto protocol can lead to serious security issues for PoS systems as discussed above. We propose using the following struncated longest chain rule, introduced in [2,14].
At any given time slot, an honest node keeps track of one main chain that it appends its next generated block to. Upon receiving a new chain of blocks, it needs to decide which chain to keep. Instead of comparing the length of those two chains, as in Nakamoto protocol, we compare the creation time of the first s blocks after the fork in truncated versions of those two chains (Algorithm 1 line 34). Let b fork be the block where those two chains fork. The honest node counts how long it takes in each chain to create, up to s blocks after the fork. The chain with shorter time for those s blocks is chosen, and the next generated block will be appended to the newest block in that selected chain. When s = ∞, the stake is fixed since the genesis block, which leads to a system that is secure but not adaptive. This is undesirable, as even a coin with no current stake can participate in block generation. We propose using an appropriate global choice of s < ∞, that scales linearly with the security parameter κ. This ensures that the protocol meets the desired level of security, while adapting to dynamic stake updates. One caveat is that we only apply this s-truncation when comparing two chains that both have at least s blocks after those two chains forked. If one of the chain has less than s blocks after forking, we use the longest chain rule to determine which chain to mine on. This is necessary in order to ensure that s-truncation is only applied to chains with enough blocks, such that our probabilistic analysis results hold.
Content of the block. Once a node is elected a leader, all unconfirmed transactions in its buffer are added to the content (Algorithm 1 line 22). Along with the transactions, the content of the block also includes the identity of the coin that won the election, and the hash and proof from VRFprove(·). This allows other nodes to verify the accuracy of the leader election. A common source of randomness RandSource is also included, to be used in the next leader election. The state variable in the content contains the hash of parent block, which ensures that the content of the parent block cannot be altered. Finally, the header and the content is signed with the forward secure signature KES.sk n .
Note that the content of the block is added after the leader election, in order to avoid any grinding on the content. However, this allows the adversary to create multiple blocks with the same header but different content. In particular, after one leader election, the adversary can create multiple blocks appending to different parent blocks, as long as those parent blocks share the same common source of randomness. Such copies of a block with the same header but different contents are known as a "forkable string" in [19] or "non-core blocks" in [14]. We show in the next section that the Nakamoto-PoS protocol is secure against all such variations of attacks.
β total proportion of the adversarial stake δ slot duration ∆ network delay κ security parameter c correlation parameter s parameter in the fork choice rule φc maximum growth rate of a private tree Table 2: The parameters used in our analysis.

Security analysis
In this section, we provide formal security analysis for the longest chain PoS protocol. We focus on c = 1, and will discuss the general c case in the last subsection and further in §F. To simplify the expressions, we will consider the regime when the time slot duration δ is very small, so that the block generation processes can be modeled as Poisson. We will also assume the stake distribution is static in this section; the case of dynamic stake is discussed in §6.
We prove liveness and persistence of the protocol through understanding when the longest chain converges as time passes, regardless of the adversarial strategy. We first analyze this convergence in the setting when the network delay ∆ = 0. This setting contains the core ideas of the proof, and allows us to explain it with the simplest notations. Then we extend it to the case of positive network delay. Finally, we use these results to prove high probability guarantees on the liveness and persistence of the protocol.

Warmup: ∆ = 0
Random processes In this setting, all the honest nodes have the same view of the blockchain, which can be modeled as a random process {(T (t), C(t)) : t ≥ 0}. T (t) is a tree and C(t) is the public longest chain at time t. The tree T (t) is interpreted as consisting of all the blocks that are generated by both the adversary and the honest nodes up until time t, including blocks that are kept in private by the adversary. Note that T (t) consists of the honest blocks, mined at the tip of the longest chain, and all the blocks that the adversary can generate, by trying and winning the election lotteries at all possible locations of the blocktree. As such T (t) captures all the resources the adversary has at its disposal to attack at time t.
The longest chain protocol in §4 results in a process described as follows.
2. T (t) evolves as follows: there are independent Poisson processes of rate λ a at each block of T (t) (we call them the adversary processes), plus an additional independent Poisson process of rate λ h (we call it the honest process) arriving at the last block of the chain C(t), i.e. an aggregate Poisson process of rate λ a + λ h at that block (the tip of the longest chain), and rate λ a at every other block of T (t). A new block is added to the tree at a certain block when a block is generated. An arrival from the honest process is called an honest block. An arrival from the adversary process is called an adversarial block. 3. The chain C(t) is updated in two possible ways : 1) an additional honest block is added to C(t) if an arrival from the honest process occurs; 2) an adversary can replace C(t − ) by another chain C(t) from T (t) which is equal or longer in length than C(t − ). 2 The adversary's decision has to be based on the current state of the process.
The longest chain protocol means that the honest nodes always propose on the tip of the current public longest chain C(t) (at rate λ h , proportional to their stake). The adversary can propose on any block (at rate λ a , again proportional to its stake). The adversary can change where the honest nodes act by broadcasting an equal or longer length chain using the blocks it has succeeded in proposing. Since the adversary can change where the honest nodes can propose even with an equal length new chain, that means the adversary is given the ability to choose where the honest nodes propose when there are more than one longest public chain.
Proving the liveness and persistence of the protocol boil down to providing a guarantee that the chain C(t) converges as t → ∞ regardless of the adversary's strategy. We will show that this happens provided that λ a < λ h /e, i.e.
Our key contribution here is defining an appropriate notion of adversary-proof convergence and analyzing how frequently it occurs.
Adversary-proof convergence We first define several basic random variables and random processes which are constituents of the processes T (·) and C(·). Then we will use them to define the notion of adversary-proof convergence event, and prove that indeed once the event occurs, convergence of the longest chain will occur regardless of what the adversarial strategy is.
3. L(t) is the length of C(t). L(0) = 0. Note that since the chain C(t) increments by 1 for every honest block generation, it follows that for all i and for all t > τ i , is the random tree process generated by the adversary starting from the i-th honest block. T i (0) consists of the i-th honest block and T i (s) consists of all adversarial blocks grown on the i-th honest block from time τ i to τ i + s. Note that the T i 's are i.i.d. copies of the pure adversarial tree T a (i.e. the tree T (t) when λ h = 0).
Note that the overall tree T (t) is the composition of the adversarial trees where the i-th honest block is the last honest block that was generated before time t. How these trees are composed to form T (t) depends on the adversarial action on when to release the private chains.
Let us define the events: and These events can be interpreted as about a fictitious system where there is a growing chain consisting of only honest blocks. The event E ij is the event that the adversarial tree rooted at the i-th honest block does not catch up with the honest chain any time after the generation of the j-th honest block. Such a tree can be interpreted as providing resource for a possible attack at the honest chain. If E ij occurs, then there is not enough resource for the i-th tree to attack after the j-th block. If F j occurs, there is not enough resource for any of the previous trees to attack the honest chain.
Even though the events are about a fictitious system with a purely honest chain and the longest chain in the actual system may consist of a mixture of adversarial and honest blocks, intuitively the actual chain can only grow faster than the fictitious honest chain, and so we have the following key lemma. This lemma justifies us giving the name adversary-proof convergence event to F j . Lemma 1. If F j occurs, then the chain C(τ j ) is a prefix of any future chain C(t), t > τ j . Equivalently, the j-th honest block will be in C(t) for all t > τ j .
Proof. We will argue by contradiction. Suppose F j occurs and let t * > τ j be the smallest t such that C(τ j ) is not a prefix of C(t). Let b h be the last honest block on C(t * ) (which must exist, because the genesis block is by definition honest.) If b h is generated at some time t 1 > τ j , then C(t − 1 ) is the prefix of C(t * ) before block b h , and does not contain C(τ j ) as a prefix, contradicting the minimality of t * . So b h must be generated before τ j , and hence b h is the i-th honest block for some i < j. The part of C(t * ) after block b h must lie entirely in the adversarial where the first inequality follows from the fact that F j holds, and the second inequality follows from the longest chain policy (eqn. (1)). From this we obtain that We will show that the adversary-proof convergence event occurs infinitely number of times if β < 1/(1+e), and will also give an estimate on how frequently that happens. This will imply persistence and liveness of the protocol with high probability guarantees.
Since the occurrence of the event F j depends on whether the adversarial trees from the previous honest blocks can catch up with the (fictitious) honest chain, we next turns to an analysis of the growth rate of an adversarial tree. 3 The adversarial tree via branching random walks The adversarial tree T a (t) is the tree T (t) when λ h = 0, i.e. honest nodes not acting. Let the depth of the tree T a (t) be denoted by D(t) and defined as the maximum depth of its blocks. The genesis block is always at depth 0 and hence T a (0) has depth zero.
We give a description of the (dual of the) adversarial tree in terms of a Branching Random Walk (BRW). Such a representation appears already in [12], but we use here the standard language from, e.g., [1,28].
Consider the collection of k tuples of positive integers, I k = {(i 1 , . . . , i k )}, and set I = ∪ k>0 I k . We consider elements of I as labelling the vertices of a rooted infinite tree, with I k labelling the vertices at generation k as follows: the vertex v = (i 1 , . . . , i k ) ∈ I k is the i k -th child of vertex (i 1 , . . . , i k−1 ) at level k − 1. An example of labelling is given in Fig. 3. For such v we also let v j = (i 1 , . . . , i j ), j = 1, . . . , k, denote the ancestor of v at level j, with v k = v. For notation convenience, we set v 0 = 0 as the root of the tree.
Next, let {E v } v∈I be an i.i.d. family of exponential random variables of pa- This creates a labelled tree, with the following interpretation: for v = (i 1 , . . . , i j ), the W v j are the waiting for v j to appear, measured from the appearance of v j−1 , and S v is the appearance time of v. A moments thought ought to convince the reader that the tree S v is a description of the adversarial tree, sorted by depth.
Note that S * k is the time of appearance of a block at level k and therefore we have S * k is the minimum of a standard BRW. Introduce, for θ < 0, the moment generating function .
In fact, much more is known, see e.g. [17].
Lemma 3. There exist explicit constants c 1 > c 2 > 0 so that the sequence Note that Lemmas 2, 3 and (6) imply in particular that D(t) ≤ eλ a t for all large t, a.s., and also that if eλ a > λ h then D(t) > λ h t for all large t, a.s..
We will need also tail estimates for the event D(t) > eλ a t + x. While such estimates can be read from [28], we bring instead a quantitative statement suited for our needs.
Proof. We use a simple upper bound. Write m = eλ a t + x. Note that by (6), For v = (i 1 , . . . , i k ), set |v| = i 1 + · · · + i k . Then, we have that S v has the same law as |v| j=1 E j . Thus, by Chebycheff's inequality, for v ∈ I m ,  Occurrence of adversary-proof convergence If the growth rate of the adversarial tree is greater than λ h , then the adversary can always attack the honest chain by growing a side chain at a rate faster than the honest chain's growth rate and replace it at will. (7) immediately shows that if λ a > λ h /e, i.e. when the adversarial fraction β > 1/(1 + e), the growth rate of the adversarial tree is at least 1, and hence the private attack is successful. This is what [14] showed. The question we want to answer is what happens when β < 1/(1 + e)? Will another attack work? We show below that in this regime, the adversaryproof convergence event F j has a non-zero probability of occurrence, and this implies that no attack works.
Lemma 5. If λ a < λ h /e, i.e. β < 1/(1 + e), then there exists a strictly positive constant p > 0 such that P (F j ) ≥ p for all j. Also, with probability 1, the event F j occurs for infinitely many j's.
The proof of this result can be found in §E.1.
Waiting time for convergence In the previous section, we established the fact that the event F j has P (F j ) > p > 0 for all j. This implies that the event F j occurs infinitely often. But how long do we need to wait for such an event to occur? We answer this question in the present section.
More specifically, we would like to get a bound on the probability that in a time interval [s, s + t], there are no adversary-proof convergence events, i.e. a bound on: Lemma 6. If λ a < λ h /e, i.e. β < 1/(1 + e) then there exist constants a 2 , A 2 so that, for any s, t ≥ 0, The bound in (12) is not optimal, see Remark 1 below.
Proof. Define R j = τ j+1 − τ j , and let (Notation as in (43).) Note that from Lemma 4 we have for some positive constants A 1 , α 1 independent of k, i. The first term in the last inequality follows from (8), and the second term follows from the fact that (λ h +λ a e)/(2λ a e) > 1 and the R i 's are iid exponential random variables of mean so that the r th sub-interval is: Now look at the first, fourth, seventh, etc sub-intervals, i.e. all the r = 1 mod 3 sub-intervals. Introduce the event that in the -th 1 mod 3th sub-interval, an adversarial tree that is rooted at a honest block arriving in that sub-interval or in the previous (0 mod 3) sub-interval catches up with a honest block in that sub-interval or in the next (2 mod 3) sub-interval. Formally, Note that for distinct , the events C 's are independent. Also, we have for large enough t. Introduce the atypical events: The events B andB are the events that an adversarial tree catches up with an honest block far ahead. Consider also the events In words, D 1 is the event of atypically many honest arrivals in (s− √ t, s+t+ √ t) while D 2 and D 3 are the events that there exists an interval of length √ t with at least one endpoint inside (s, s + t) with atypically small number of arrivals. Since the number of honest arrivals in (s, s+t) is Poisson with parameter λ h t, we have from the memoryless property of the Poisson process that P (D 1 ) ≤ e −c0t for some constant c 0 = c 0 (λ a , λ h ) > 0. On the other hand, using the memoryless property and a union bound, and decreasing c 0 if needed, we have that P (D 2 ) ≤ e −c0 √ t . Similarly, using time reversal, P (D 3 ) ≤ e −c0 √ t . Therefore, again using the memoryless property of the Poisson process, where c 1 , c 2 > 0 are constants that may depend on λ a , λ h and the last inequality is due to (14). We next claim that there exists a constant α > 0 so that, for all t large, Indeed, we have that By (14), there exists c 3 > 0 so that while the tails of the Poisson distribution yield the existence of constants c, c > 0 so that (26) Combining (25) with (26) yields that there exists a constant α > 0 so that Substituting this bound in (24) and using that i P (τ i ∈ dθ) = dθ gives for t large, proving (23).
Continuing with the proof of the lemma, we have: where the equality is due to independence, and in the last inequality we used (22) and (23). The lemma follows from (16).
Remark 1. Iterating the proof above (taking longer blocks and using the bound of Lemma 6 to improve on P (C ) in (16) by replacing p with the bound from (12)) shows that (12) can be improved to the statement that for any θ > 1 there exist constants a θ , A θ so that, for any s, t > 0,

Nonzero network delay: ∆ > 0
We will now extend the analysis in the above subsection to the case of non-zero delay.
In the case of zero network delay, the power of the adversary is in the adversarial blocks that it can generate by winning lotteries. We show that if β < 1/(1 + e), regardless of the adversarial strategy, there will be adversaryproof convergence events happening in the system once in a while. When the network delay is non-zero, the adversary has the additional power to delay delivery of honest blocks to create split view among the honest nodes. In the context of the security analysis of Nakamoto's PoW protocol, the limit of this power is quantified by the notion of uniquely successful round in [15] in the lock-step synchronous round-by-round model, and extended to the notion of convergence opportunity in [25] in the semi-synchronous model. (This notion is further used in [27] to provide a simpler security proof for Nakamoto's protocol.) They show that during these convergence opportunities, the adversary cannot create split view between honest nodes, because only one honest block is generated during a sufficiently long time interval. We combine our notion of adversary-proof convergence event with the notion of convergence opportunity to define a stronger notion of adversary-proof convergence event for the non-zero delay case.

Random processes
We consider the network model in §3 with bounded communication delay, where all broadcast blocks are delivered by the adversary with maximum delay ∆. With this network model, the evolution of the blockchain can be modeled as a random process {(T (t), where n is the number of honest nodes, T (t) is a tree, T (p) (t) is an induced sub-tree of T (t) in the view of the p-th honest node at time t, and C (p) (t) is the longest chain in the p-th tree. Then let C(t) be the common prefix of all the local honest chains C (p) (t) for 1 ≤ p ≤ n. The tree T (t) is interpreted as consisting of all the blocks that are generated by both the adversary and the honest nodes up until time t, including blocks that are kept in private by the adversary. The chain C (p) (t) is interpreted as the longest chain in the local view of the p-th honest node at time t. The process is described as follows.
1. T (0) = T (p) (0) = C(0) = C (p) (0), 1 ≤ p ≤ n is a single root block (the genesis block). 2. T (t) evolves as follows: there are independent Poisson processes of rate λ a at each block of T (t) (we call them the adversary processes), plus an additional independent Poisson process of rate λ (p) h (we call it the honest process) arriving at the last block of the chain C (p) (t) (the tip of the local longest chain) for each 1 ≤ p ≤ n, with n p=1 λ (p) h = λ h . A new block is added to the tree at a certain block when an arrival event occurs at that node. An arrival from the honest process is called an honest block. An arrival from the adversary process is called an adversarial block. 3. The sub-tree T (p) (t) for each 1 ≤ p ≤ n is updated in three possible ways : 1) an additional honest block can be added to T (p) (t) by the adversary if an arrival event of the honest process with the p-th honest node occurs; 2) a block (whether is honest or adversarial) must be added to C (p) (t) if it appears in T (q) for some q = p at time t − ∆; 3) the adversary can replace T (p) (t − ) by another sub-tree T (p) (t) from T (t) as long as T (p) (t − ) is an induced subgraph of the new tree T (p) (t). The adversary's decision has to be based on the current state of the process.
4. C (p) (t) is updated as follows for each 1 ≤ p ≤ n: C (p) (t) is the longest chain in the tree T (p) (t) starting from the root block at time t. If there are more than one longest chain, tie breaking is in favor of the adversary. 5. C(t) is updated as follows: C(t) is the common prefix of all the local honest chains C (p) (t) for 1 ≤ p ≤ n at time t.
The adversary can change where the honest nodes act by broadcasting an equal or longer length chain using the blocks it has succeeded in proposing. Since the adversary can change where the honest nodes can propose even with an equal length new chain, that means the adversary is given the ability to choose where the honest nodes propose when there are more than one longest public chain. Also the adversary has the ability to have one message delivered to honest nodes at different time (but all within ∆ time).
Adversary-proof convergence We first define several basic random variables and random processes which are constituents of the processes T (·) and C(·). We make use of the terminology in [27].
1. τ i = generation time of the i-th honest block; τ 0 = 0 is the mining time of the genesis block, τ i+1 − τ i is exponentially distributed with mean 1/λ h , i.i.d. across all i's. Suppose an honest block B is generated at time τ j . If τ j − τ j−1 > ∆, then we call B is a non-tailgater (otherwise, B is a tailgater).
If τ j − τ j−1 > ∆ and τ j+1 − τ j > ∆, then we call B is a loner. Note that non-tailgaters have different depths and a loner is the only honest block at its depth. 2. H h (t) = number of non-tailgaters generated from time 0 to t. 3. L (p) (t) is the length of C (p) (t) for each 1 ≤ p ≤ n. L (p) (0) = 0. Note that since every non-tailgater appears at different depth in the block tree, it follows that for all t > s + ∆, 4. T i = {T i (s) : s ≥ 0} is the random tree process generated by the adversary starting from the i-th honest block. T i (0) consists of the i-th honest block and T i (s) consists of all adversarial blocks grown on the i-th honest block from time τ i to τ i + s. Note that the T i 's are i.i.d. copies of the adversarial tree T a . 5. D i (s) is the depth of the adversarial tree T i (s).
Let us define the events: And we have the following lemma, which justifies calling the eventÛ j adversary-proof convergence event for the non-zero delay case. . Lemma 7. IfÛ j occurs, then the j-th honest block is contained in any future chain C(t) (i.e. in all local chains C (p) (t), 1 ≤ p ≤ n), t > τ j + ∆.
Proof. We will argue by contradiction. SupposeÛ j occurs and let t * > τ j + ∆ be the smallest t such that the j-th honest block is not contained in C(t). Let b h be the last honest block on C (p) (t * ) (which must exist, because the genesis block is by definition honest.) If b h is mined at some time t 1 > τ j + ∆, then C (p) (t − 1 ) is the prefix of C (p) (t * ) before block b h , and does not contain the j-th honest block, contradicting the minimality of t * . So b h must be mined before time τ j + ∆. And since the j-th honest block is a loner, we further know that b h must be mined before time τ j , hence b h is the i-th honest block for some i < j. The part of where the first inequality follows from the fact thatF j holds, and the second inequality follows from the longest chain policy (eqn. (31)). From this we obtain that which is a contradiction since Note that, Lemma 7 implies that ifÛ j occurs, then the entire chain leading to the j-th honest block from the genesis is stabilized after the j-th honest block is seen by all the honest nodes.
Occurrence of adversary-proof convergence Lemma 8. If λ a < g/e · λ h , i.e. β < g/(g + e) with g = e −λ h ∆ , then there is a p > 0 such that P (Û j ) ≥ p for all j. Also, with probability 1, the eventÛ j occurs for infinitely many j's.
The proof of this result can be found in §E.2.
Waiting time for adversary-proof convergence We have established the fact that the eventÛ j has P (Û j ) > p > 0 for all j. In analogy to the zero-delay case, we would like to get a bound on the probability that in a time interval The following lemma is analogous to Lemma 6 in the zero-delay case. Its proof is almost verbatim identical, and will not be repeated here.

Persistence and Liveness
We will now use Lemma 9 to establish the liveness and persistence of the basic longest chain PoS protocol.
In the absence of any adversary, each node will contribute to the final ledger as many blocks as their proportion of the stake. In the presence of an adversary, the chain quality property ensures that the contribution of the adversary is bounded. When β < g/(g + e), we show that these properties hold with high probability, as stated in the following theorem.
Our goal is to generate a transaction ledger that satisfies persistence and liveness as defined in [15]. Together, persistence and liveness guarantees robust transaction ledger; honest transactions will be adopted to the ledger and be immutable.
Definition 2 (from [15]). A protocol Π maintains a robust public transaction ledger if it organizes the ledger as a blockchain of transactions and it satisfies the following two properties: -(Persistence) Parameterized by τ ∈ R, if at a certain time a transaction tx appears in a block which is mined more than τ time away from the mining time of the tip of the main chain of an honest node (such transaction will be called confirmed), then tx will be confirmed by all honest nodes in the same position in the ledger. -(Liveness) Parameterized by u ∈ R, if a transaction tx is received by all honest nodes for more than time u, then all honest nodes will contain tx in the same place in the ledger forever.
The main result is that common prefix, chain quality, and chain growth imply that the transaction ledger satisfies persistence and liveness. Proof. We first prove persistence and then liveness. Proof. For a chain C t with the last block generated at time t, let C σ t be the chain resulting from pruning a chain C t up to σ, by removing the last blocks at the end of the chain that were generated after time t − σ. Note that C σ is a prefix of C, which we denote by C σ C.
Let C 1 be the main chain of an honest node P 1 at time t 1 . Suppose a transaction tx is contained in C σ 1 at round t 1 , i.e., it is confirmed by P 1 . Consider a main chain C 2 of an honest node P 2 at some time t 2 ≥ t 1 . The σ-common prefix property ensures that after pruning a longest chain, it is a prefix of all future longest chains in the local view of any honest node. Formally, it follows that C σ 1 C 2 , which completes the proof. We are left to show that the σ-common prefix defined below holds with a probability at least 1 − e −Ω( √ σ) . This is a variation of a similar property first introduced in [15] for PoW systems. Ours is closer to a local definition of k-common prefix introduced in [3], which works for a system running for an unbounded time.
Definition 3 (σ-common prefix). We say a protocol and a corresponding confirmation rule have a σ-common prefix property at time t, if in the view VIEW n,F Π,A,Z (κ) of a honest node n at time t, n adopts a longest chain C, then any longest chain C adopted by some honest node n at time t > t satisfies C σ C .
Let C t denote the longest chain adopted by an honest node with the last node generated at time t. There are a number of honest nodes generated in the interval [t−σ, t], each of which can be in C t , C t , or neither. We partition the set of honest blocks generated in that interval with three sets: , depending on which chain they belong to.
Suppose C σ t C t , and we will show that this event is unlikely. Under this assumption, we claim that none of the honest blocks generated in the interval [t − σ, t] are stable, i.e. for each honest block, there exists a time in the future (since the generation of that block) in which the block does not belong to the longest chain.
Precisely, we claim that C σ t C t implies that F c j holds for all j such that τ j ∈ [t − σ, t]. This in turn implies that P (C σ t C t ) ≤ P (∩ j:τj ∈[t−σ,t] F c j ). By Lemma 9, we know that the probability of this happening is low: e −Ω( √ σ) . This follows from the following facts. (i) the honest blocks in C t does not make it to the longest chain at time t : H j / ∈ C t for all H j ∈ H t . This follows from C σ t C t . (ii) the honest blocks in C t does not make it to the longest chain C t at time t: H j / ∈ C t for all H j ∈ H t . This also follows from C σ t C t . (iii) the rest of the honest blocks did not make it to either of the above: H j / ∈ C t ∪ C t for all H j ∈ H rest . We next prove liveness. Proof. Assume a transaction tx is received by all honest nodes at time t, then by Lemma 9, we know that with probability at least 1 − e −Ω( √ σ) , there exists one honest block B j mined at time τ j with τ j ∈ [t, t + u] and event F j occurs, i.e., the block B j and its ancestor blocks will be contained in any future longest chain. Therefore, tx must be contained in block B j or one ancestor block of B j since tx is seen by all honest nodes at time t < τ j . In either way, tx is stabilized forever. Thus, the lemma follows.

Extending the analysis to general c
We can repeat the analysis in the previous section for the c-Nakamoto-PoS for c > 1. Like for c = 1, the analysis basically boils down to the problem of analyzing the race between the adversarial tree and the fictitious purely honest chain. In §F, we confine our analysis to a study of that race. It turns out that under ccorrelation randomness, the adversarial tree is developed by another branching random walking process, but with a slowing growth amplification factor φ c , such that φ 1 = e and φ ∞ = 1. So the security threshold is where θ * c is the unique negative solution of Eq. (39) We numerically compute the value of φ c and β * c with ∆ = 0 in the table below.  Table 3: Numerically computed growth rate φc and stake threshold β * c with ∆ = 0.
In the deployment of the Ouroboros protocol in the Cardano project 4 , each slot takes 20 seconds and each epoch is chosen to be 5 days [30], that is a common randomness will be shared by 21600 blocks. In Fig. 2, we plot the security threshold β * c against c up to c = 21600 for our c-Nakamoto-PoS. It turns out the security threshold of c-Nakamoto-PoS can approach 1/2 very closely even when c is much less than 21600, which is the current randomness update frequency in the Cardano project.
6 Security analysis of the dynamic stake protocol One major advantage of the Nakamoto protocol in the proof of work setting is its permissionless setting: anyone can join (leave) the system by simply contributing (extricating) computing power for the mining process. Under the PoS setting the stakes are used in lieu of the computing power. To support a protocol that is close to a permissionless system, we need to handle the case when the stake is dynamically varying. Unlike the case of compute power, the entry/removal of stake has to be more carefully orchestrated: if a change in the stake takes effect immediately after the transaction has been included in the blockchain, then this gives an opportunity for the adversary to grind on the secret key of the header (time, secret key, common source of randomness). Concretely, once an adversary has generated a block, it can add a transaction that moves all its stake to a new coin with a new pair of public and secret keys. The adversary can keep drawing a new coin and simulating the next leader election, until it finds one that wins. This is a serious concern as the adversary can potentially win all elections.
To prevent such a grinding on the coin, we use s-truncation introduced in [2, 14]. s-truncation has two components: using stakes from ancestor blocks and a fork choice rule. The winning probability of a leader election uses the stake computed at an ancestor block which is s blocks above the parent block that is currently being mined on. However, this allows an adversary to launch a long range attack, for any value of s < ∞. To launch a long range attack, an adversary grows a private block tree. Once it has grown for longer than s blocks, then it can grind on the coin to win the election for the next block, and add the favorable transaction to the first ancestor block. As all blocks in this private tree are adversarial, the consistency of the transactions can be maintained by re-signing all intermediate blocks. This allows the adversary to win all elections after s private blocks, and eventually take over the honest block chain.
The s-truncation longest chain rule works as follows. When presented with a chain that forks from current longest chain, a node compares the two chains according to the following rule. Both chains are truncated up to s blocks after the forking. Whichever truncated chain was created in a shorter time (and hence denser) is chosen to be mined on. This ensures that honest block chains will be chosen over privately grown adversarial chains with long range attacks. A detailed description of the c-correlation, s-truncation, Nakamoto-PoS protocol is in §4.
We extend Theorem 1 to show that the above s-truncation scheme is secure. Proof sketch. We prove it in three steps. First, we show that with static stake setting, common prefix, chain growth, and chain quality properties still hold for s-truncation protocol with s = Θ(σ). Second, we show that with dynamic stake setting and s stake update rule, the adversary can mine a private chain with consecutive s blocks that is denser than the public main chain only with a negligible probability. We show in §5 that the choice of c only determines how many fraction of adversary the system can tolerate and not the security parameter κ. On the other hand, the choice of s is critically related to the target security parameter κ as we show in §6. By decoupling these two parameters c and s in the protocol, we can achieve any level of predictability (with an appropriate choice of c), while managing to satisfy any target security parameter κ (with an appropriate choice of s).

Conclusion
We proposed a new family of PoS protocols and proved that our proposed PoS protocols have low predictability while guaranteeing security against adversarial nothing-at-stake attacks. We did not discuss the design of incentive systems that encourage users to follow the honest protocol. We point out that there are existing ideas that could be naturally adapted for our problem. For example, one way to minimize NaS attacks is to require users to deposit stake that can be slashed if the node has a provable deviation (for example, double-signing blocks) [6,8]. Another important idea is that fruitchain-type incentive mechanisms [26] which protect against selfish mining in PoW can be ported to PoS protocols [19]. However, as pointed out in [7], the full problem of designing PoS protocols that strongly (instead of weakly) disincentivze NaS and selfish-mining attacks remains an important direction of future research. Finally, a detailed mathematical modeling of bribing attacks that consider interaction between the blockchain and external coordination mechanisms also remains open.
PoS protocols based directly on the Nakamoto protocol, have been proposed recently (g-greedy Protocol [14] and D-distance-greedy Protocol [13]), in a series of attempts to achieve a short predictability and a provable security. However, the security analyses are subtle and we show more malignant attacks in this section on the protocols of [13,14]; thus more rigorous analysis is needed to study the security of those protocols. Both (g-greedy Protocols [14] and D-distance-greedy Protocols [13]) are extensions of Nakamoto-PoS discussed in 1, where honest nodes are encouraged to mine on multiple blocks in a single slot as well.

A.1 g-greedy Protocol [14] (F -height-greedy Protocol [13])
g-greedy Protocol. In an attempt to increase the amount of adversarial stake that can be tolerated by the basic protocol closer to 1/2, [14] proposes a family of protocols called g-greedy, parameterized by a non-negative integer g, which is called as F -height-greedy in [13]. Under the g-greedy protocol, the honest nodes are prescribed to run multiple leader elections in an attempt to outgrow the private NaS tree. In an honest node's view, if the longest chain is at height blocks, then the node mines on any block that is higher than − g blocks (illustrated by the blocks inside the dotted box in Fig. 4). When g = ∞, each honest node works on every block, and when g = 0, the node works on all blocks at the same height as the tip of the longest chain in the current view. Note that 0-greedy differs from the basic Nakamoto's protocol above, which chooses one block to mine on when there are multiple longest chains. However, the g-greedy protocol also has prediction window W = 1. Private Attack on g-greedy Protocol. A notorious attack in longest chain blockchain protocols is the private attack: the adversary privately mines a chain that is longer than the longest chain in the honest view. Roughly speaking, by the law of large numbers, adversary will fail with the private attack eventually if the growth rate of the adversarial chain is strictly lower than the honest chain. The security guarantee for g-greedy protocol in [14] is based on this argument.   [14] 0  Table 4: Expected growth rate of honest tree for g-greedy protocol under private adversarial behavior. The largest adversarial stake that can be tolerated under the private attack is denoted by βg. The claims of [14] are corrected and compared with our calculations.
How about the expected growth rate R g (1 − β) of the honest tree under the g-greedy protocol and private behavior by the adversary? It is clear that R g is monotonically increasing in g. The limiting largest expected growth rate is achieved at g = ∞, where the protocol is the same as the NaS attack. Thus the expected growth rate R g (1 − β) = (1 − β)e for g = ∞. One suspects that the protocol for g = 0 is similar to simply growing only one of the longest chains. If the mining rate is slow enough (mining is considered to occur in discrete rounds which are spaced enough apart relative to the network broadcast propagation delay; detailed model in §3), then the expected growth rate of the honest tree (essentially a chain) is simply 1 − β. This is the expected growth rate of the honest tree with g = 0.
The expected growth rate for a general g is significantly involved. In Lemma 4.6 of [14], a heuristic argument is conducted to estimate the expected growth rate for g = 2 to be R 2 (1 − β) = 2. 1(1 − β). This heuristic argument can be extended to other values of g (see §B.1) as summarized in Table 5. We note that R 8 = 2.7414, which is at odds with the observation that R g increases monotonically and R ∞ = e. This shows that the heuristic argument in Lemma 4.6 of [14] is flawed. It is clear that the expected growth rate is related to the solution to the following set of recursive differential equations: dx (t) = 0 for 0 ≤ < m − g for some fixed m. Now R g is the largest value of m t such that x m (t) decreases exponentially in t. A closed form solution to R g is challenging; although a numerical solution is readily achieved and tabulated in Table 4.
We can make the following conclusion from Table 4: the g-greedy protocol of [14] is robust to the purely private NaS attack as long as the adversarial stake is such that R g (1 − β) > R NaS β = eβ. As g grows large, this threshold on the adversarial stake approaches 1 2 ; for instance, for g = 5, robustness to private NaS attack is achieved as long as the adversarial stake is less than 47.86%. The caveat is that this security statement is misleading since only one specific attack (the private NaS attack) has been studied. A different attack strategy could prove more malignant, as we show next. Balance Attack on g-greedy Protocol. We describe an adversarial action that is a combination of private and public behaviors below; we term this as a balance attack for reasons that will become obvious shortly; this attack has some commonalities with the balance attack on the GHOST protocol in [20]. The key idea of the balance attack is to reveal some privately mined blocks at an appropriate time to balance the length of two longest chains each sharing a common ancestor in the distant past.
The balance attack aims to have two longest chains of equally long length, forking all the way from the genesis block. Fig. 6 depicts the balance attack in action, as it progresses over time. At any time, the adversary will try to mine on every block including public blocks and private blocks, while honest nodes follow g-greedy protocol. Once the adversary succeeds in creating a new block, it will first keep the block in private as shown in step 1 and step 3 of Fig. 6. Whenever the adversary owns a private chain that has the same length as the longest public chain, it will reveal the private chain so that there will be two public chain with the same length as shown in step 2 and step 4 of Fig. 6. If the adversary can keep up this kind of balance attack, then it has successfully prevented any block from irreversible no matter how deep the block is buried in the longest chain. To succeed with the balance attack, the adversary only needs to mine a few blocks as most blocks in the two main chain may be mined by honest nodes under g-greedy protocol. A formal pseudocode describing the balance attack algorithm is available in §B.2.
The balance attack is hard to analyze theoretically, but its efficacy can be evaluated via simulations. The simulation starts with a fork with length 1 (i.e., two independent public trees). The honest nodes follow g-greedy protocol with stake proportion 1 − β while adversary will always mine on every block in his private view. Whenever the two public trees have different heights, the adversary will immediately reveal the private blocks appending to the shorter public tree to re-balance their heights if he can. We set f ∆ = 0.1 in each round and simulated various pairs of (g, β) for 2000 rounds. Note that the simulation can be made more accurate with a finer discretization and a longer run-time. The depth of the longest fork and its associated cumulative probability is plotted in Fig. 7 for fixed parameters g, β. We see that in each instance, the probability of a fork of any length is larger for the balance attack than the private NaS attack; this implies that the balance attack stochastically dominates the private attack. For example, when g = 2, β = 0.38, the adversary is able to cause a fork from genesis, which is longer than 100 blocks, with a probability around 20%, while the private attack can only achieve it with probability less than 0.1%. In this instance, the balance attack is significantly more powerful than the private attack. Fig. 7: Comparison of CDF of the longest fork from genesis caused by private attack and balance attack for various pairs of (g, β). The balance attack is a stochastically dominating strategy for g ≥ 1.
We see that virulence of the balance attack increases, dramatically, with g. In  Fig. 8, the blue lines plot the largest value of β the balance attacking adversary can have while allowing a fork of a large fixed length (50,100,200 blocks) with significantly high probability (25%, 25%, 10% respectively). The orange line plots the corresponding largest value of β using the private NaS attack. The experiments conclusively demonstrate the fatal nature of the balance attack as g increases: the private NaS attack gets weaker while the balance attack gets dramatically stronger. For g = 6, the balance attack is successful in creating a very long fork (200 blocks deep) with a high probability (10%) using only 3% of the stake. A.2 D-distance-greedy Protocol [13] D-distance-greedy Protocol. In an attempt to make the g-greedy protocol of [14] robust against the balance attack, recent work [13] has updated the protocol to a new variant called the D-distance-greedy protocol described as below. The reason g-greedy protocol is so vulnerable against balance attack is that honest nodes are mining on both sides of two, for example, chains that forked many blocks deep. This makes it easy for the adversary to keep those chains balanced, especially when g is large. The protocol in [13] is aimed to prevent honest nodes from mining on both chains as follows.
We first define the distance between two chains in a tree. For two chains C a with length a and C b with length b , let C be the common prefix of C a and C b with length , then the distance between C a and C b is defined as max( a − , b − ). D-distance-greedy protocol prescribes every honest node to first select one of the longest chains (the tie breaking could be random) and attempt to extend a set of chains in which all chains have distance no more than D from the longest chain (illustrated by the blocks with green diamonds in Fig. 9). If there are two chains that forked at more than D blocks deep from the tip of the chain, then each honest node will mine on one side of those two chains. Again, the prediction window remains the same: W = 1.
The intuition behind this protocol is the following: 1. Although we are limiting the mining strategy of honest nodes to small distance blocks, the growth of the longest chain is still high. Using a heuristic argument, [13] claims that the expected growth rate A D (1−β) of the longest chain following the D-distance greedy protocol, is ( . Note that as D increases, the expected growth rate of the honest tree, according to this calculation, approaches e(1 − β). Based on this calculation, the anticipated threshold of largest adversarial stake that can be tolerated under a private attack, β D = A D A D +e , approaches the ideal threshold of β = 0.5. 2. Second, limiting the honest strategy to only grow on nodes that are near the tip of the longest chain might, at the outset, seems to render the balance attack of §A.1 ineffective. Indeed, an argument is made in [13] to imply the security of the D-distance-greedy protocol against all possible adversarial strategies as long as the adversarial stake is less than β D .
In this section, we show that both these results of [13] are inaccurate. We do this by focusing on the case of D = 1 first. Specifically: 1. For D = 1, we show that the precise expected growth of the longest chain of the honest block tree is A 1 (1 − β) = 1−β e−2 ≈ 1.3922(1 − β) and not √ 2(1 − β). This implies that, even if the adversary is controlling a smaller fraction of stake, say β = 0.339, than the threshold β D=1 = 0.3422 claimed in [13], the simple private attack can succeed with probability close to one. A formal statement and proof is in §B.3; a precise calculation of the growth rate for general D appears to be a challenging mathematical problem. 2. More critically, we show that a balance attack similar to the one from §A. 1 can still be effective on the D-distance-greedy protocol -and the efficacy is primarily achieved by slowing down the growth rate of the honest strategy. The D-distance-greedy protocol is not secure against balance attack, even if the adversary controls less than β D = A D A D +e fraction of the stake, with the correct A D we compute in §B.3. The actual security threshold on β is strictly smaller; the private attack considered in [13] is strictly weaker than a standard adversary studied in the literature which can perform the balance attack. This is described in detail next.
For general D larger than one, a balance attack can successfully slow down the growth rate of honest nodes, but a precise computation of the slowed down growth rate is a challenging problem. We discuss security implications for large D at the end of this section. [13] expects that the security of the protocol increases as D increases, eventually achieving the ideal threshold of β = 0.5. Contrarily, we find that for a large enough D, the D-distance-greedy protocol becomes insecure; none of the blocks can be confirmed, regardless of how deep the block is in the current block chain. This is also true for the g-greedy protocol with a large enough g. This follows from the fact that when every node is mining on every block, the entire block tree becomes unstable: the prefix of the longest chain keeps changing indefinitely. Hence, even if the conjectured growth rate of were true for large D, the desired threshold of β = 0.5 cannot be achieved. Balance Attack on D-distance-greedy Protocol. We consider the same balance attack, now on 1-distance-greedy protocol. Here we assume that, when two chains with equal length are broadcast in the network, honest nodes will split into two groups with equal stake proportion, where each group picks one chain as the longest chain and mines on the corresponding tree under 1-distance-greedy protocol. This balance attack is described formally in §B.5.
Perhaps surprisingly, this balance attack can slow down the growth rate of the honest block tree: we show the growth rate of the longest chain to beÃ 1 β). A formal statement and proof of this result is in §B.4. We note that this result is against the grain of the Nakamoto longest chain protocol, where no adversary strategy can slow down the growth rate of the block tree, even though the honest nodes can be potentially split into working on two different chains of equally long length. Thus when the proportion of adversarial stake β falls in the interval (Ã 1 A1+e , A1 A1+e ), the adversarial private tree will be ahead of the public longest chain, and the balance attack in conjunction with the private attack is fatal (i.e., any confirmed block can be reversed no matter how deep the block is buried in the longest chain).
We illustrate the high level idea of the slow-down effect of 1-distance-greedy protocol with Fig. 10. The scenario at the top of Fig. 10 is a pure honest tree with one block at height − 1 and two blocks at height , and honest nodes will mine on all these three blocks with rate 1 − β; while the scenario at the bottom is two trees balanced by the adversary, where child-blocks of every block are generated as a Poisson point process with rate 0.5(1 − β) since honest nodes are split. Note that the number of blocks at height and + 1 increases with the same rates in these two scenarios (1 − β) and 2(1 − β) respectively). However, when the number of blocks at height increases by one in both scenarios, the growth rate of blocks at height + 1 becomes 3(1 − β) in the top scenario but only 2.5(1 − β) in the bottom. Since only half of honest nodes will benefit from, or mine on the new block due to splitting, the growth rate of the public longest chain is slowed down. Formal analysis of this slow-down effect will be provided in §B.4.
We also use simulation to verify the analysis above. The simulation starts with a fork with length 2 (i.e., two independent public trees). The honest nodes follow 1-distance-greedy protocol with stake proportion 1 − β while adversary will always mine on every block in his private view. Whenever the two public trees have different heights, the adversary will immediately reveal a private chain appending to the shorter public tree to re-balance their heights if he can. For simplicity, when two chains with equal length are revealed in the public view, honest nodes will split into two groups with equal stake proportion. We set f ∆ = 0.1 in each round and simulated the case β = 0.32 and β = 0.33 for 10000 rounds and 20000 rounds respectively. Note that the simulation can be made more accurate with a finer discretization and a longer run-time. The depth of the longest fork and its associated cumulative probability is plotted in Fig. 11 for fixed parameters β = 0.32 and β = 0.33. One can see that the success probability (1 minus the probability in the plots) of private attack will converge to 0 as for longer fork, while the success probability of balance attack will saturate to some constant, which indicates that, using the balance attack, the adversary can succeed in creating a fork of any length with some non-negligible probability. This simulation results immediately verify the slow-down effect of 1-distance-greedy. When the growth rate of the public longest chain is slowed down due to splitting for some time, the adversarial private tree will be ahead of the public longest chain, and the balance attack can continue to succeed easily in the future and create forks with any length. For general D-distance-greedy, the growth rate of the honest chain can also be slowed down from A D (1−β) by splitting the honest nodes. However, this balance attack of keeping two chains of balanced lengths is a sub-optimal strategy (for the adversary). The adversary can maintain multiple balanced chains, splitting honest nodes as much as possible. Under such an attack, we conjecture that the growth rate of the public longest chain can be slowed down all the way to 1 − β, eliminating amplification entirely. However, how large β needs to be to make this attack successful remains an open question, and we defer it as a future research direction.
In order to fix the slow-down effect for 1-distance greedy protocol, we introduce the following refined tie breaking rule. Recall that 1-distance greedy protocol prescribes an honest node to mine on one of the longest chains (chosen randomly when there are multiple), and also simultaneously mine on its parent block and all its sibling blocks.
Definition 4 (no-slow-down tie breaking rule for 1-distance greedy protocol). When there are multiple longest chains with equal lengths, mine on one node that has the largest number of sibling blocks, and simultaneously mine on its parent block and all its sibling blocks. Further ties can be broken arbitrarily.
For example, let h denote the height of the longest chain. If there are two nodes at height h − 1, one with two children blocks and another with three children blocks, then honest nodes will mine on the three sibling blocks at height h and its parent. If there are three nodes at height h − 1, one with two children blocks and the rest with three children blocks each, then each honest node will mine on one set of three sibling blocks and its parent (chosen arbitrarily). If this finer tie breaking rule is adopted, then we can prove the following "no-slow-down lemma" for 1-distance greedy protocol.
Lemma 12 (no-slow-down lemma for 1-distance greedy). Under the synchronous network setting with bounded message delay from [13], an adversary cannot slow down the honest chain growth. That is, no matter what the adversary does, the honest nodes will grow a chain that is at least as long as if the adversary does not generate any blocks.
Proof. By the analysis in §B.3, for 1-distance greedy protocol, the growth rate of the longest chain in the honest tree depends only on the number of sibling blocks on the tip, then the adversary cannot slow down the honest chain under this tie breaking rule since honest nodes are always choosing the longest chain with the largest potential growth rate. To be more specific, whenever the adversary publishes a block B and some honest nodes start to mine on B under this no slow-down tie breaking rule, which means that either B is on a deeper level or the number of sibling blocks of B is no less than the number of sibling blocks of the main chain which is chosen before B is revealed, in both case the growth of the honest tree will not be slowed down.
Thus the chain growth property for 1-distance greedy protocol can be guaranteed under the tie breaking rule with the no slow-down lemma proved above. This is not true for the random tie breaking rule, as we shows with balance attack in §B.4. Beyond the no-slow-down lemma, a rigorous analysis of common prefix property for 1-distance greedy protocol still remains a challenging research problem.
When there are multiple longest chains to be mined on, no-slow-down lemma holds as long as the honest nodes can choose the one that will ensure fastest expected growth. However, it is not straightforward how to selecting the fastest growing chain under D-distance-greedy, especially for large D. For large D, it becomes computationally intractable to break ties in order to eliminate the slowdown effect completely.
B Notes and Proofs for §A B.1 R g calculation according to [14] We recall that R g (1 − β) is the expected growth rate of the longest chain of the tree grown by honest nodes (adversaries are acting purely privately) using the g-greedy protocol. We also recall that R g is increasing monotonically in g and that R ∞ = e, where e is the base of the natural logarithm. In [14], the authors claim that R 2 = 2.1 by assuming that all chains grow with at the same steady rate as the longest chain and then investigating the average case. One can generalize their methodology for arbitrary g as follows: suppose the length of the longest chain at round r is , let x i with 0 ≤ i ≤ g be the number of chains with length − i. For simplicity, x 0 is set to be 1. Then using the arguments in Lemma 4.6 in [14], we obtain the following g + 1 equations with g + 1 unknowns {x i : 1 ≤ i ≤ g} and R g .
By solving these equations numerically, we obtain the value of R g as shown in Table 5. It turns out that R g > e for g ≥ 8 which is in contradiction to the fact that R g is monotonically increasing and the limiting value is R ∞ = e. This shows that the method in [14] to estimate the growth rate of the longest chain is flawed.  Table 5: Chain growth rate for g-greedy protocol using the method of [14]. There is an inconsistency in the calculation for g ≥ 8.

B.2 Pseudo Code for the Balance Attack on g-greedy Protocol
In the main text we have described the balance attack informally along with accompanying examples depicted in Fig. 6. Here we provide a formal pseudocode describing the balance attack algorithm for completeness.

B.3 Growth rate of 1-distance-greedy Protocol
In this section we calculate the expected growth rate of honest tree under 1distance-greedy protocol with a continuous time Markov chain.
The honest nodes grow a tree starting with the genesis block as root at time t = 0. At any time t, the honest nodes independently mines on a set of blocks according to 1-distance-greedy protocol. From the point of view of a fixed block, its child-blocks are generated as a Poisson point process with rate 1 − β i.e., the time interval between the child-blocks is an exponential random variable with rate 1 − β.
Let W (t) be the number of blocks on the tip of the tree. For very small values of h, we have

It follows that the infinitesimal generator of W (t) is
let π = (π 1 , π 2 , · · · ) be the stationary distribution, then it satisfies πA = 0. By solving the equations, we have π 1 = 1 2(e−2) and π n = 2π1 (n+1)! for n ≥ 1. Then the expected number of blocks on the tip of the honest tree can be computed as Let T be the time for the height of the honest tree to grow by one, then we have Let f T (t) be the probability density function of random variable T , F T (t) be the cumulative distribution function of T , and F c T (t) = 1 − F T (t), then we know f T (t) = −Ḟ c T (t). Equation (40) can be represented aṡ with F c T (0) = 1, and the solution of this differential equation is F c T (t) = e E[W (t)](1−β) , then we have .
Therefore we can conclude that the growth rate of the honest tree

B.4 Growth rate of 1-distance-greedy Protocol under Balance Attack
In this section we calculate the expected growth rate of honest tree in 1-distancegreedy protocol under the balance attack in §A.2 (see pseudocode in §B.5).
We start with two chains of equal length and the distance between them is greater than 1. In this situation, honest nodes will split into two groups with equal stake proportion to mine on different chains under 1-distance-greedy protocol. We first consider the steady state behavior where the adversary has "sufficient" number of private chains under each public chain, that is, whenever the length of one public chain grows by one, the adversary can immediately reveal one block for the other chain to re-balance these two chains and keep the honest nodes split. We analyze the transient stage, i.e., getting to steady state from genesis after the steady state analysis.
Let U (t) and V (t) be the number of blocks on the tip of the two trees. For very small values of h, we have

It follows that the infinitesimal generator of Z(t) is
let π = (π 2 , π 3 , · · · ) be the stationary distribution, then it satisfies πA = 0. By solving the equations, we have π 2 = 2 3e 2 −19 and π n = 3π12 n+1 (n+2)! for n ≥ 1. Then the expected number of blocks on the tip of the honest tree can be computed as Let T be the time for the height of the honest tree to grow by one. Then, similar to the analysis in §B.3, we have that E[T ] = 2/(E[Z(t)](1 − β)) Thus the growth rate of the honest treeÃ 1 This implies that the growth rate of the public longest chain will be slowed down due to the balance attack. Therefore, when the adversary with β smaller but close to A 1 /(A 1 + e) succeeds in balancing the two chains for some time, the private chains will grow faster than the public chain, which gives the adversary a lot of future blocks in the "bank" to continue the balance attack.

B.5 Pseudo Code for the Balance Attack on 1-distance-greedy Protocol
Here we provide a formal pseudocode describing the balance attack algorithm on 1-distance-greedy protocol for completeness.

D Prediction inspired bribing attacks
Proof-of-work (PoW) protocols such as Nakamoto's protocol for Bitcoin achieve high security while maintaining a high unpredictability as to which miners can propose future blocks. A very attractive feature of this PoW protocol is that nodes that mine a valid block have no further ability to update the block after they have solved the mining puzzle, since the nonce seals the block making it tamper-proof. Thus no node knows whether they have the power to propose the block till they solve the puzzle, and once they solve the puzzle, they have no future rights to alter the content.
This causality is reversed in proof-of-stake (PoS) protocols: usually, the node that is eligible to propose a block knows a priori of its eligibility before proposing a block. This makes PoS protocols vulnerable to a new class of serious attacks not found in the PoW setting. We will show that a set of miners controlling an infinitesimal fraction of the stake can potentially completely undermine the security of the protocol. We demonstrate that the longer the prediction window, the more serious the attack space is. This raises an important questions as to whether it is possible to design a secure proof-of-stake protocol which has minimal prediction window.
We point out that an existing work [7] has already raised this issue that PoS protocols are forced make a tradeoff between predictability and NaS attacks. While that work mainly concerned itself with incentive attacks, our concern here is adversarial attacks that compromise consensus. We point out that even in the adversarial setting, all provably secure PoS protocols have a long prediction window; the main contribution of this paper is to design such a protocol and show its security up to 50% of adversarial stake. A popular model that has been proposed to capture the effect of future prediction in the PoS setting is the so-called adaptive adversary model [10,16].

D.1 Adaptive Adversaries and the VRF Attack
In the adaptive adversary model, a node remains honest unless corrupted by an adversary (who can change who they are corrupting based on the public state). The adversary has a bound on how many nodes it can corrupt at any given time. To defend against an adaptive adversary model, many protocols have moved from global predictability of future block proposers (i.e., everyone knows who the future block leaders are) [19] to local predictability (i.e., each miner knows when in the future they will propose a block) [10,16]. The local predictability is achieved using a Verifiable Random Function (VRF) [22] based leader-election.
However, the adaptive adversary model assumes that miners do not have any independent agency but rather only get corrupted based on an adversary's instructions. An adversary can easily circumvent this assumption by establishing a website where it can offer a bribe to anyone who posts their credentials for proposing blocks in an upcoming epoch of time. Thus even when the node's future proposer status is not public knowledge, this bribing website can solicit such information and help launch serious attacks (see Fig. 12).

D.2 Longest Chain protocols
We first consider longest-chain PoS protocols, in order to demonstrate our prediction attacks. We begin with a definition of prediction window of a protocol.
Definition 6 (W -predictable). Given a PoS protocol Π PoS , let C be a valid blockchain ending with block B with a time stamp t. We say a block B is w(B)predictable, if there exists a time t 1 > t and a block B 1 with a time stamp t 1 such that (i) B 1 can be mined by miner (using its private state and the common public state) at time t; and (ii) B 1 can be appended to C to form a valid blockchain for any valid chain C that extends C by appending w − 1 valid blocks with time stamps within the interval (t, t 1 ). By taking the maximum over the prediction parameter over all blocks in Π PoS , i.e., let W = max B w(B), we say Π PoS is Wpredictable. W is the size of the prediction window measured in units of number of blocks.
We note that our definition is similar to the definition of W -locally predictable protocols in [7]. We note furthermore that longest chain protocols also have a κ-deep confirmation policy, where a block embedded deep enough is deemed to be confirmed.

D.3 Prediction Attack on W -predictable protocols
Let us consider a W -predictable protocol, where the prediction window W is longer than the confirmation window κ. We note that the prediction window of many existing protocols are quite large, as demonstrated in Table 1 and therefore this is a reasonable assumption. We will consider the alternative case (W << κ in the upcoming subsection).
Consider block B that has been mined at time t (assume that B is Wpredictable, since such a block exists by definition). The adversary launches a prediction attack by launching a website where it announces a reward for miners which possess a future block proposal slot. Some of the leaders respond to this call (these are shown with a red outer circle in Fig. 13). We note that while the adversary requires κ + 1 leaders out of 2κ + 1 slots to respond to the bribe, the total stake represented by these bribed leaders can be a very tiny fraction of the total stake. The adversary bribes these leaders to sign a forked version of the blockchain that it hoards till the block s is confirmed by a κ-deep honest chain. After that point, the adversary releases the hoarded blockchain to all the users thus switching the longest chain and confirming a block s (which contains a double spend) instead of s. We note that this attack is indistinguishable from network delay since none of the bribed leaders sign multiple blocks with a single leadership certificate -thus nodes that participate in the bribing attack have plausible deniability.
Bribing can enlarge prediction window We note that the previous attack applies whenever the prediction window W is larger than the confirmation depth κ, this attack can be launched. However, here we will briefly note that even when W is smaller than κ, the protocols still have a prediction problem. This is because in longest-chain PoS protocols such as Ouroboros, Praos, Snow White, the randomness is updated every epoch and a key assumption for the updated randomness to be unbiased is that a majority of the previous leaders were honest. However, by bribing the previous leaders, the adversary can bias the randomness (for example, by choosing a subset of proposers), thus leading itself to more favorable leadership slots in the upcoming epoch (and effectively enlarging the prediction window). These protocols offer no protection against these bribed randomness grinding attacks and hence their security parameter is limited to be of the same order as the epoch size. We note that while our proposed protocol has a similar structure as Ouroboros, our analysis proves security against adversarial randomness grinding (the so-called NaS attack).

D.4 Prediction Attack on BFT-based PoS protocols
While we have focused on longest chain PoS protocols in the previous section, here we consider the other large family of PoS protocols that are based on Byzantine Fault Tolerant consensus (BFT). Some PoS-based BFT protocols work with the same committee for many time-slots thus giving raise to prediction based attacks. Furthermore, in many BFT protocols, a single leader proposes blocks till evicted for wrong-doing [32], thus making the prediction problem worse. Among BFT-based PoS protocols, the one with the least prediction window is Algo- rand [9,16]. We will demonstrate a fatal prediction attack on Algorand (other BFT protocols which are even more predictable are naturally attacked as well). In Algorand, at each round, a set of leaders and many sets of committees are elected using VRF from the previous finalized block. The leaders and committee members can construct their membership certificates from the previous finalized block's randomness, and others do not know their identities till they reveal themselves. The BFT consensus process proceeds in steps and each step is run by a different committee -a block is considered finalized if it is voted on by a 2/3-majority of committee members at any step.
This feature is used to prove that Algorand is secure against adaptive adversaries. However, we show that Algorand is not immune to the bribing-based prediction attack (similar to the one for longest-chain protocols). Since the pro-tocol does not use a sequence of blocks for confirmation, the prediction window defined for longest-chain protocols is not the appropriate measure for predictionattacks in this protocol. Rather, the appropriate measure is what fraction of the committee participants are locally known when a block is proposed. For Algorand, all of the committee participants are known to themselves.
Suppose in a given round, there are two leaders blocks B and B (the latter block may contain a double-spend relative to B). The adversary solicits using a website the committee members to post their certificates. If the adversary is able to obtain a 2/3-quorum in any step, then the adversary can use that quorum to sign a different certificate than the one the honest nodes signed. In particular, the adversary waits for a honest quorum to sign a certificate for B in order to confirm the transaction and then signs a bribed quorum from a different step to certify B . This enables the adversary to reverse a confirmation. We note that none of the bribed miners have to double sign a block since they would not have been elected in other steps of the quorum.
We note that establishing a stalling-attack is even easier in this model -the adversary needs a 1/3-fraction of committee members in a step to remain silent in order to stall the progress of Algorand. Given that miners are randomly sampled, this quorum may hold a very small fraction of stake (which the adversary may compensate for using its bribe). This stalling attack can be used to launch extortion attacks demanding a large amount of money to un-stall the network.

D.5 Summary of Prediction Attacks
We have demonstrated that both longest-chain and BFT based protocols are highly vulnerable to prediction-based security attacks (compromising the safety and liveness of the system). This motivates the design of a new PoS protocol that can only be predicted with a look ahead window, much shorter than the confirmation window.

E Proofs for §5
E.1 Proof of Lemma 5 In this proof, we renormalize time such that λ h = 1, and we set λ a = λ to simplify notations.
The random processes of interest start from time 0. To look at the system in stationarity, let us extend them to −∞ < t < ∞. More specifically, define τ −1 , τ −2 , . . . such that together with τ 0 , τ 1 , . . . we have a double-sided infinite Poisson process of rate 1. Also, for each i < 0, we define an independent copy of a random adversarial tree T i with the same distribution as T 0 .
These extensions allow us to extend the definition of E ij to all i, j, −∞ < i < j < ∞, and define E j to be: Note that E j ⊂ F j , so to prove that F j occurs for infinite many j's with probability 1, it suffices to prove that E j occurs for infinite many j's with probability 1. This is proved in the following.
Define R j = τ j+1 − τ j and Consider the i.i.d. process {Z j } −∞<j<∞ . Now, This means that p = P (E j ) does not depend on j. Since {Z j } is i.i.d. and in particularly ergodic, with probability 1, the long term fraction of j's for which E j occurs is p, which is nonzero if p = 0. This is the last step to prove. Let and then Let us fix a particular n > 0, and define: G n = event that R m < 1 n for m = −n, −n + 1, . . . , −1, 0, +1, . . . , n − 1 (45) Then where a n := The last inequality (49) comes from the fact P (B ik |G n ) = P (B −k,−i |G n ).
Using (8), we can bound P (B ik |G n ). Consider three cases: Case 1: −n ≤ i < 0 < k ≤ n: For k − i < 4 √ n, we have that where Γ λ ∼ Exp(λ). For k − i ≥ 4 √ n, we have that where the last inequality follows from (8). Summing these terms, we have: n+1+2eλ :=ā n which is bounded and moreoverā n → 0 as n → ∞. Case 2: −n ≤ i < 0 < n < k: for some positive constants A 1 , α independent of n, k, i. The first term in the last inequality follows from (8), and the second term follows from the fact that (1 + λe)/(2λe) > 1 and the R i 's have mean 1. Summing these terms, we have: which is bounded and moreoverb n → 0 as n → ∞. Case 3: i < −n < n < k: for some positive constants A 2 , α independent of n, k, i. The first term in the last inequality follows from (8), and the second term follows from the fact that (1 + λe)/(2λe) > 1 and the R i 's have mean 1.
Summing these terms, we have: which is bounded and moreoverc n → 0 as n → ∞. Substituting these bounds in (49) we finally get: By setting n sufficiently large such thatā n ,b n andc n are sufficiently small, we conclude that P (E 0 ) > 0.

E.2 Proof of Lemma 8
In this proof, we fix g = e −λ h ∆ and renormalize time such that λ h = 1, and we set λ a = λ to simplify notations. The random processes of interest start from time 0. To look at the system in stationarity, let us extend them to −∞ < t < ∞. More specifically, define τ −1 , τ −2 , . . . such that together with τ 0 , τ 1 , . . . we have a double-sided infinite Poisson process of rate 1. Also, for each i < 0, we define an independent copy of a random adversarial tree T i with the same distribution as T 0 .
These extensions allow us to extend the definition ofÊ ij to all i, j, −∞ < i < j < ∞, and defineÊ j andV j to be: Note thatV j ⊂Û j , so to prove thatÛ j occurs for infinite many j's with probability 1, it suffices to prove thatV j occurs for infinite many j's with probability 1. This is proved in the following.
Define R j = τ j+1 − τ j and Consider the i.i.d. process {Z j } −∞<j<∞ . Now, HenceÊ j ∩ U j = i<jÊ ij ∩ U j has a time-invariant dependence on {Z i }, which means that p = P (V j ) does not depend on j. Since {Z j } is i.i.d. and in particularly ergodic, with probability 1, the long term fraction of j's for whichV j occurs is p, which is nonzero if p = 0. This is the last step to prove.
Let X j be a Bernoulli random variable such that X j = 1 if and only if R j−1 > ∆, i.e., the j-th honest block is a non-tailgater. Since R j 's are i.i.d exponential random variables with mean 1, we have that X j 's are also i.i.d and P (X j = 1) = g. By the definition of H h (·), we have H h (τ k−1 ) − H h (τ i ) = k−1 j=i+1 X j , then for some positive constants A 2 , α 2 independent of n, k, i. The last inequality follows from the Chernoff bound. Meanwhile, we have where the first term in the last inequality follows from (8), and the second term can also be bounded: for some positive constants A 3 , α 3 independent of n, k, i. The last inequality follows from the fact that (g + λe)/(2λe) > 1 and the R i 's have mean 1, while P (U 0 , W ε ik ) is a event with high probability as we showed in (66). (k−i−1) + A 3 e −α3(k−i−1) :=b n which is bounded and moreoverb n → 0 as n → ∞ when we set ε to be small enough such that (1 − 2ε)g − λe > 0.
Substituting these bounds in (63) we finally get: By setting n sufficiently large such thatā n andb n are sufficiently small, we conclude that P (V 0 ) > 0.
F Growth rate of c-correlated adversary tree We set λ a = λ in this section to simplify notations. The adversary is growing a private chain over the genesis block, under the c-correlation. As illustrated in Fig. 16, the common source of randomness at a block is only updated when the depth is a multiple of c (Algorithm 1 line: 19). We refer to such a block b with depth(b)%c = 0 as a godfather-block.

RandSource(b) :=
VRFprove RandSource(parent(b)), time, VRF.sk(b) , if depth b %c = 0, RandSource(parent(b)), otherwise The randomness of a block changes only at godfather-blocks. In other words, for n ∈ Z, blocks along a chain at depths nc, nc + 1, nc + 2, · · · , nc + c − 1 share a common random number. Two blocks are called siblings-blocks if they have the same parent block. Given this shared randomness, the adversary now has a freedom to choose where to place the newly generated blocks. The next theorem provides a dominant strategy, that creates the fastest growing private tree.
Lemma 13. Under c-correlation, the optimal adversarial strategy to grow the tree fast is to only fork at the parents of godfather-blocks.
Proof. Note that under the security model, several types of grinding attacks are plausible. First, at depth multiple of c, the adversary can grind on the header of the parent of the godfather block, and run an independent election in every round. Secondly, for blocks sharing the same source of randomness, once an adversary is elected a leader, it can generate multiple blocks of the same header but appending on different blocks. However, adding multiple blocks with the same header cannot make the tree any higher than the optimal scheme. with c = 5 under the optimal strategy to grow the private NaS tree. Blocks forking from the same godfather-block share the same common source of randomness, as shown by the colors. To grow the tree fast, it is optimal to grow a single chain until the next godfather block. Circles with black outlines indicate blocks that are currently mined on.
Sibling non-godfather blocks share a common source of randomness and thus "mining events" on these blocks are completely dependent. Specifically, for sibling non-godfather blocks, there is only one leader election in each round. As a result, for a particular non-godfather block b, the child-block of b's any younger sibling (a sibling block mined after block b) should share the same header and identical source of randomness with one of b's child-block. Thus it is not necessary for a non-godfather block to have sibling blocks, that is, mining a sibling to a non-godfather block does not increase the growth rate of the longest chain in the adversarial block tree. However, sibling god-father blocks have independent sources of randomness and thus mining multiple such block increase the growth rate of the longest chain.
Here we use the representation in Fig. 16, whose growth rate is the same as the full NaS adversarial tree as shown in Lemma 13. We can transform the tree T (a) (t) in Fig. 16 into a new random tree T 0 (t). Every c generations in T (a) (t) we can view as a single generation in T 0 (t); in the example of Fig. 16, we have depth 0, 5, 10 etc (i.e., all the godfather depths) as the generations in T 0 (t). T 0 (t) corresponds to a branching random walk. For example, the genesis block B 0 is the root of T 0 (t) at depth 0 with arrival time 0. The children blocks of B 0 in T 0 (t) are the descendant blocks at depth 5 in T (a) (t). We can order these children blocks in their arrival times. Consider block B 1 to be the first such block, then the arrival time of block B 1 is where X i is the inter-arrival time between block at depth i − 1 and block at depth i in T (a) (t). Note that all the X i 's are exponential with parameter λ, and they are all independent. Similarly, the arrival time S i of the i-th child of root in T 0 (t) is a sum of i + c − 1 i.i.d exponential random variables with parameter λ.
Let the depth of the tree T a (t) and T 0 (t) be denoted by D a (t) and D(t) respectively defined as the maximum depth of the blocks in the tree. Similar to §5, each vertices at generation k can be labelled as a k tuple of positive integers (i 1 , . . . , i k ) with i j ≥ c for 1 ≤ j ≤ k: the vertex v = (i 1 , . . . , i k ) ∈ I k is the (i k − c + 1)-th child of vertex (i 1 , . . . , i k−1 ) at level k − 1. Let I k = {(i 1 , . . . , i k ) : i j ≥ c for 1 ≤ j ≤ k}, and set I = ∪ k>0 I k . For such v we also let v j = (i 1 , . . . , i j ), j = 1, . . . , k, denote the ancestor of v at level j, with v k = v. For notation convenience, we set v 0 = 0 as the root of the tree.
Next, let {E v } v∈I be an i.i.d. family of exponential random variables of parameter λ. For v = (i 1 , . . . , i k ) ∈ I k , let W v = j≤i k E (i1,...,i k−1 ,j) and let S v = j≤k W v j . This creates a labelled tree, with the following interpretation: for v = (i 1 , . . . , i j ), the W v j are the waiting for v j to appear, measured from the appearance of v j−1 , and S v is the appearance time of v.
Let S * k = min v∈I k S v . Note that S * k is the time of appearance of a block at level k and therefore we have S * k is the minimum of a standard BRW. Introduce, for θ c < 0, the moment generating function .
An important role is played by θ * c , which is the negative solution to the equation Λ c (θ c ) = θ cΛc (θ c ) and let η c satisfy that Indeed, see [28,Theorem 1.3], we have the following.
In fact, much more is known, see e.g. [17].
Note that Propositions 1,2 and (68) imply in particular that D a (t) ≤ cη c λt for all large t, a.s., and also that if cη c λ > 1 then D a (t) > t for all large t, a.s..
Let us define φ c := cη c , then φ c λ is the growth rate of private c-correlated NaS tree. One can check that φ c is the solution to the same equation as in [31], where the same problem is solved with a differential equation approach. [31] also proves the uniqueness of φ c and provides an approximation for large c: We will need also tail estimates for the event D(t) > η c λt + x. While such estimates can be read from [28], we bring instead a quantitative statement suited for our needs.
Proof. We use a simple upper bound. Write m = η c λt + x. Note that by (68), For v = (i 1 , . . . , i k ), set |v| = i 1 + · · · + i k . Then, we have that S v has the same law as |v| j=1 E j . Thus, by Chebycheff's inequality, for v ∈ I m ,