Abstract 1 Introduction 2 Intersection Systems and Projective Spaces 3 System Design 4 Slashability 5 Availability 6 Related Work 7 Conclusion References Appendix A Projective Geometry Proofs Appendix B Chernoff Bound

Optimal Multilevel Slashing for Blockchains

Kenan Wood ORCID Davidson College, NC, USA Hammurabi Mendes ORCID Davidson College, NC, USA Jonad Pulaj ORCID Davidson College, NC, USA
Abstract

We present the notion of multilevel slashing, where proof-of-stake blockchain validators can obtain gradual levels of assurance that a certain block is bound to be finalized in a global consensus procedure, unless an increasing and optimally large number of Byzantine processes have their staked assets slashed – that is, deducted – due to provably incorrect behavior. Our construction is a highly parameterized generalization of combinatorial intersection systems based on finite projective spaces, with asymptotic high availability and optimal slashing properties. Even under weak conditions, we show that our construction has asymptotically optimal slashing properties with respect to message complexity and validator load; this result also illustrates a fundamental trade off between message complexity, load, and slashing. In addition, we show that any intersection system whose ground elements are disjoint subsets of nodes (e.g. “committees” in committee-based consensus protocols) has asymptotic high availability under similarly weak conditions. Finally, our multilevel construction gives the flexibility to blockchain validators to decide how many “levels” of finalization assurance they wish to obtain. This functionality can be seen either as (i) a form of an early, slashing-based block finalization; or (ii) a service to support reorg tolerance.

Keywords and phrases:
Blockchains, Finality, Slashablility, Committees, Availability
Copyright and License:
[Uncaptioned image] © Kenan Wood, Hammurabi Mendes, and Jonad Pulaj; licensed under Creative Commons License CC-BY 4.0
2012 ACM Subject Classification:
Theory of computation Distributed algorithms
; Mathematics of computing Discrete mathematics
Editors:
Silvia Bonomi, Letterio Galletta, Etienne Rivière, and Valerio Schiavoni

1 Introduction

Blockchains are distributed systems with the task of (i) collecting concurrent transactions that originate from its users; (ii) order these transactions into a history, which is often expressed as a linear sequence of blocks, with each block containing an internal sequence of transactions; and (iii) maintain such history stored into a permanent, distributed ledger that reflects a global system state given the history. The ledger state could represent monetary balances or even the state of replicated programs (smart contracts) that execute in a virtual machine collectively simulated by participant nodes [26, 6, 33, 16, 2, 19]. Throughout this paper, we may refer to participant nodes, processes, and blockchain validators interchangeably.

Deciding how to group transactions into blocks and how to order blocks into the blockchain ledger is an application of Byzantine consensus, typically with some other properties and requirements in place, including: (i) participants always use digital signatures when they interact with the system; (ii) participation is dynamic, meaning that nodes join and leave the system at undetermined times; and (iii) in certain cases, participation is permissionless, meaning that certain system actions (say, performing transactions or even participating in the consensus itself) require no previous global registration or identity-based approval. For example, Bitcoin participation is permissionless as any node that can produce a token demonstrating the completion of a certain computationally-expensive hashing task is allowed to participate in the consensus protocol, regardless of that node’s identity. This is called a proof-of-work blockchain. Note that any two nodes could produce the tokens mentioned above roughly at the same time, so the ledger can fork during the system execution, and participants then heuristically define the longest chain of blocks as the authoritative one. In contrast, systems such as [6, 33, 16, 2, 19] work overall as follows. Discrete time slots are defined, each associated with a committee of participants. At each slot, the corresponding committee produces or acknowledges the next block of transactions by having some well-defined fraction of its participants to attest – that is, vote – for such next block. If a Byzantine committee participant votes for two conflicting blocks (on different branches), which is prohibited by the voting mechanics, the participant is subject to slashing: the participant’s pre-deposited assets (called its stake) are penalized, and the deducted penalty is distributed to other participants in the system. Having such pre-deposited assets is a prerequisite for participating in committees (and thus in the consensus protocol), and slashing is the incentive for nodes to behave correctly. This setting characterizes a proof-of-stake blockchain.

An operational advantage of using committees rather than having a global vote procedure is that committees can initially restrict expensive communication primitives [37, 4, 7] to its own participants, and later generate a compact committee signature that indicates internal agreement on a certain next block v (say, using a threshold signature scheme such as [3, 36]). Those compact committee signatures can then be communicated globally with the intention to reach global consensus on v.

Just as in proof-of-work systems, the ledger in proof-of-stake systems can also fork because committees can be temporarily or permanently isolated from the network due to technical outages, making attestations arrive asynchronously in different parts of the network, and thus creating multiple descendants of a given block. Hence, it is common to have a heuristic-based fork-choice rule that constantly defines the “best chain” of ongoing operations111Just like Bitcoin does, except that Bitcoin’s heuristic is simply defined as the longest chain., along with a separate finalization gadget, which chooses one unique, canonical chain to be “final” [29, 5, 38]. The blockchain literature often refers to the fork-choice’s “best chain” as the available chain, because its relatively simple heuristics allow applications to identify it quickly, thus settle quickly on the current state of the system. That is in contrast with what is often referred as the final chain, which has been subject to the finalization gadget, and often depends on partially-synchronous assumptions for progress ([9, 40] among many others).

The problem we solve is that blockchain applications often need to know whether a transaction is “confirmed” (perhaps to settle a sale), which requires (a) observing a ledger block that includes such transaction; and (b) obtaining some guarantee that this block will be finalized later. However, currently, applications can either (i) quickly identify the transaction in the available chain, but have no guarantees that this chain will eventually be finalized; or (ii) slowly identify the transaction in the finalized chain, but be subject to an infeasible wait time that might completely break the application’s functional requirements (user satisfaction, quick response to financial events, etc).

Our solution creates a “sliding window” in the latency-trust spectrum in settling transactions, and the applications can tradeoff speed and certainty according to their very particular functional requirements. In other words, applications will not only have the fork-choice rule (a temporary “accounting mechanism”) or the finalization event (the permanent but slowly-moving global consensus) to deem that a particular block (or a particular transaction therein) is “confirmed”. Specifically, we create a distributed mechanism where increasing levels of trust can be obtained at increasing latency costs by querying other participant nodes as well as passively observing network events. Importantly, our design does not introduce any central control or “hotspots”, as it is defined using the highly symmetrical mathematical structure of projective spaces over finite fields.

In essence, our construction can be interpreted as an intermediary, flexible trust phase between the initial attestation tallying and the finalization. In this phase, a participant can obtain information from multiple sets of validators – which we call quorums – indicating that a block v is about to be finalized. If another participant obtains the same information for a different block v, the intersection property of our structural construction will result in a significant amount of funds being slashed from the adversary. Importantly, we give the applications the flexibility to choose the balance of trust and potential adversarial slashing with our construction.

We note that this functionality, if further integrated into a blockchain system, can also be seen as (i) a form of an early, slashing-based block finalization, as the block confirmation guarantees are now much more continuous between the quick, yet unreliable, fork-choice rule and the slow, yet reliable, finalization; or (ii) a service for reorg tolerance. Reorgs [35, 30] are situations where applications consider some chain v as the logical continuation of the blockchain ledger because a fraction of nodes attest v, but later are forced to consider v as such because a (typically larger) fraction of nodes became visible while attesting v. In our system, once applications obtain a certain number of levels of assurance that v is the next block to be finalized, a different block v that takes its place will incur significant adversarial slashing, optimal with respect to the magnitude of assurance levels originally obtained.

Our technical contributions are described below at a high level, but with pointers to the sections where we present our concrete constructions and proofs.

  1. 1.

    We design a distributed architecture to support multilevel slashing by applying projective spaces over finite fields to committee-based consensus (Section 3), a generalization of a previous approach that only used projective planes [32] in a context where slashing was irrelevant.

  2. 2.

    We define and analyze slashability – the relation of the query size/time and the magnitude of slashing associated with a level of trust. In particular, we show that our construction is optimal with respect to worst-case message complexity and validator load, demonstrating a fundamental trade off between slashability, message complexity, and load (Section 4).

  3. 3.

    We prove that a general class of similarly-designed intersection systems based on disjoint subsets of elements achieve asymptotic high availability under reasonable conditions (Section 5).

Our construction creates an intersection pattern among sets of blockchain nodes in a manner that is reminiscent of quorum systems [27, 23, 24, 8, 14] (among others, discussed in Section 6), but our purpose – and design – are not the same. Specifically, the mathematical intersections among sets of nodes intentionally uses a projective-space-based construction in order to define an additional level of transaction confirmation on top of existing blockchains that follow the availability-finality paradigm of [29]. We note that obtaining the higher-dimensional structures used to define our quorums is expensive, but can be done a priori for reasonable parameters, and later mapped to a running system, which we consider viable in practice. We discuss some practical scenarios in Section 3.

In addition to the core technical sections pointed to above, we include background on intersection systems and projective spaces in Section 2; we present our system design concretely in Section 3; we discuss related work in Section 6; and we conclude with final remarks in Section 7.

2 Intersection Systems and Projective Spaces

In this section, we present basic definitions on intersection systems and projective spaces over finite fields, used in our intersection system construction, provided in Section 3. In this paper we use the following standard combinatorial notation: for a positive integer m, we denote by [m] the set {1,,m}. For probability computations, 𝐏(A) denotes the probability of an event A and 𝐄X denotes an expectation of a random variable X.

2.1 Intersection Systems

Let us start with a definition of intersection system, below:

Definition 1 (Intersection System).

An intersection system is simply a nonempty finite collection of finite sets 𝒬 such that any two sets A,B𝒬 have a nonempty intersection. The sets in 𝒬 are called quorums, and we refer to 𝒬 as the ground set of 𝒬.

Intersection systems provide a framework for ensuring trust among decided or finalized blocks. Let be a set of n processes. Suppose the ground set of an intersection system 𝒬 is the set of processes . Then if all processes in some quorum A𝒬 attest to a block v and all processes in some quorum B𝒬 attest to vv, all processes will eventually learn this information (since every message is attached with a digital signature and the network is partially synchronous). We will therefore be able to deduce that every process in the nonempty set AB attested to different blocks and can slash these processes’ staked assets. It is important to note that honest validators (those that do not attest to different blocks) never have their stake slashed with this protocol, even if they attest to a block that is not finalized.

Now, observe that if every quorum contains an adversarial process, these processes can simply be silent forever, which means that no decision can ever be made with this protocol, even if every correct process attested to the same block. This motivates Definition 2.

Note that Definitions 2 and 6 are similar to concepts in [27], but their context is on replicated databases, not blockchain applications.

Definition 2 (Availability).

Let 𝒬 be an intersection system. Give each element of a fixed probability of availability p, so the elements are independently non-faulty with probability p and faulty (Byzantine) with probability 1p. Let Fp(𝒬) denote the probability that every quorum in 𝒬 has at least one faulty element. The quantity Ap(𝒬):=1Fp(𝒬) is called the availability of 𝒬 with respect to p.

Another potential problem is that it is possible for two processes to trust different blocks if every process in AB is Byzantine, for quorums A,B𝒬. Thus if minA,B𝒬|AB| is small, then it is possible for an adversary to make processes finalize different blocks with only a small amount of its stake being slashed. Thus, a desirable property of intersection systems is that |AB| should be large for all A,B𝒬.

Definition 3 (Slashability).

For an intersection system 𝒬, define the slashability of 𝒬 to be the quantity minA,B𝒬|AB|. The slashability of 𝒬 is denoted slash(𝒬).

This definition of slashability is most relevant when validators have uniform stake. In practice, for heterogeneous validator stakes, committee-based constructions like ours in Section 3 could be adapted using techniques such as node virtualization, where high-stake nodes “simulate” multiple nodes proportional to their stake.

In our design, the elements of the quorums are disjoint committees, which are sets of processes in .

Definition 4.

If is an intersection system whose elements are disjoint committees and r(12,1), we denote by r() the intersection system

r()={S:𝒬,Q𝒬,|QS|r|Q|}.

That is, a set of processes forms a quorum in r() if it contains at least an r-fraction of every committee inside a quorum 𝒬. The number r is said to be the threshold of r().

The following definitions have fundamental connections to slashability, as seen in Section 4. In our system, we assume that processes actively participate in obtaining quorums to reduce message complexity. In particular, committees select quorums uniformly at random to which they query messages. Thus, having small quorums is necessary, motivating the following definition.

Definition 5 (Message Complexity).

Given an intersection system , let the maximum size of a quorum in be called the message complexity of , denoted msg().

Additionally, with this system of actively obtaining quorums, we would like to ensure that no committee is overly busy handling queries, motivating another concept:

Definition 6 (Load).

Given an intersection system , the load of some C, denoted load(C), is the probability that a quorum of selected uniformly at random contains C. The load of is defined to be the maximum load of any element of : load():=maxCload(C).

When is clear from context, we simply write load(C) instead of load(C), where C. There is a connection between the load of an element of an intersection system and the degree of that element (using terminology from graph theory).

Definition 7 (Degree).

Given an intersection system , the degree of some C in , written deg(C), is the number of quorums of containing C. The maximum degree of any element of is denoted Δ().

When is clear from context, we write deg(C) instead of deg(C), where C. The following result should be clear from the definition of load and uniform selection.

Observation 8.

If is an intersection system and C, then

load(C)=deg(C)|| and load()=Δ()||.

2.2 Projective Spaces

Projective geometry provides a rich source of intersection systems that are highly symmetric (having a transitive automorphism group). Most of the definitions and notation in this section are similar to those presented in [11]. To begin, it is known that finite fields have prime power order, and for each prime power q, there exists a unique finite field of order q, up to isomorphism. Thus, given a prime power q, we may let 𝔽q denote the finite field of order q. For the following definitions, let V be a vector space over a field 𝔽.

Definition 9 (Projective Space).

The projective space of V, denoted PG(V), is the set of 1-dimensional vector subspaces of V. In the case when 𝔽=𝔽q for a prime power q and V=𝔽k+1, we may write PG(k,q) instead of PG(V). If V is finite-dimensional, then the projective dimension of PG(V) is dimPG(V)=dimV1.

Definition 10 (Projective Subspace).

If U is a vector subspace of V, then PG(U) is a projective subspace of PG(V).

Definition 11.

If d0, let PGd(V) be the set of all projective subspaces of PG(V) with (projective) dimension d. Just as before, if 𝔽=𝔽q and V=𝔽k+1, we write this as PGd(k,q).

The following result will be useful for analyzing the slashability of our system design.

Proposition 12.

Let kd0 and let q be a prime power. Then for any S,TPGd(k,q), then ST is a projective subspace of PG(k,q) of dimension at least 2dk. If 2dk, this bound is sharp for some S,TPGd(k,q).

Proof.

Please refer to Appendix A.

Corollary 13.

If 2d>k and q is any prime power, then PGd(k,q) is an intersection system.

The following is a known result. Given nonnegative integers r,s and q2, recall the known q-Gaussian binomial coefficient by the following equality, which yields Proposition 14.

(sr)q=(qs1)(qsq)(qsqr1)(qr1)(qrq)(qrqr1).
Proposition 14.

For all kd0 and prime powers q, we have

|PGd(k,q)|=(k+1d+1)qand|PG(k,q)|=qk+11q1.

3 System Design

Consider a system of n processes ={P1,,Pn}. We assume that processes are non-faulty independently with probability p (and faulty with probability 1p); similar failure models have been used in [27, 32]. For practical applications, we use values p of the form 23+ϵ for a small ϵ, so that the probability that at least 1/3 of nodes display Byzantine behavior is negligible (so basic network primitives such as [4, 37] work). We assume authenticated channels, that is, every message sent has a digital signature for which it is computationally infeasible for an adversary to forge.

We now describe a multilevel intersection system where, each level has an intersection system of its own with ground set composed of committees in . Obtaining a quorum asserting block v within each level will increase the assurance that a v is bound to be finalized in the global consensus – that is, increase the associated slashing in case v is not finalized. We do this while allowing small quorums relative to system size (thus less communication complexity) and very high slashing relative to the size of the quorums. Our system also ensures a small load, as every committee is in the same number of quorums and no committee is particularly over-represented. Our construction is defined as follows.

  1. 1.

    Assume a set-up procedure to generate |PG(k,q)| committees that equitably partition222An equitable partition of a finite set S is a partition of S such that the sizes of the sets in the partition differ by at most 1. the set of processes , where k0 is an integer and q is a prime power such that n|PG(k,q)|. Note that when q is a prime power, this is always well-defined. Denote the set of these committees by 𝒞, so that |𝒞|=|PG(k,q)|.

  2. 2.

    Next, define a one-to-one correspondence com:PG(k,q)𝒞, and two weakly increasing sequences with length , the total number of levels:

    • (dj)j[] of integers in (k2,k);

    • (rj)j[] of real numbers in (12,p).

  3. 3.

    For each level j[], the jth level committee intersection system is defined to be

    j={com(S):SPGdj(k,q)}.
  4. 4.

    Finally, for all j[], the jth level process intersection system is defined as

    𝒬j=rj(j).
Figure 1: A tetrahedral visualization of PG(3,2), which contains 15 points, 15 planes, and 35 lines (circles are viewed as lines in projective geometry). More details in the text.

Notice that each j is indeed an intersection system as PGdj(k,q) is an intersection system by Corollary 13. In addition, observe that for all 1i<j, every quorum in 𝒬j contains a quorum in 𝒬i; since every dj-dimensional projective subspace of PG(k,q) contains a di-dimensional projective subspace (this follows from d1d2d). Thus, we say that a process trusts a block v with j degrees of assurance if that process obtains a quorum accepting v from 𝒬j.

Visualization.

To motivate the geometry of our construction with an example, in Figure 1 we give a tetrahedral visualization of PG(3,2), the smallest three-dimensional projective space. While the dimensions are low enough to allow a visualization, they only allow for a single level in our construction (with d1=2). Nevertheless, they should be useful to comprehend the system in higher dimensions. For the sake of simplicity, we disregard r and focus on 1. By definition PG2(3,2) is the set of planes in PG(3,2), where each plane is isomorphic to the Fano plane. In (i), the outer faces of the tetrahedron are each a Fano plane. In (ii), the internal “wedge” planes are represented, with two planes highlighted. In (iii), we show Fano planes that are isomorphic to the additional planes inside the tetrahedron. Mapping the points in each Fano plane to corresponding points in the tetrahedron and preserving the incidence structure recovers the original plane. Our intersection system 1 is set of all the visualized Fano planes. It is straightforward to check that any two distinct quorums intersect in a line, in other words they share three committees.

Choice of Parameters (Example).

It is crucial that parameters are chosen carefully, or the number of quorums at each level can quickly become too large. In that case, even the idea of precomputing quorums and later have them mapped to committees at runtime would be impractical. But many reasonable choices might exist: for example, consider a network of 2 million nodes, with committee sizes of about 8000 nodes. We can set k=7,q=2 and have d1=4,d2=5, and d3=6, which creates a 3-level intersection system with sizes |1|=(85)2=97155, |2|=(86)2=10795 and |3|=(87)2=255 (Proposition 14). In the first level, applications need to obtain assurances only from 4 committees forming a quorum (d1=4) out of 97155 quorums available (|1|). Any conflicting quorum intersects in 2247+11=3 committees in common (Lemma 16). If we assume that applications get threshold signatures from committees representing a fraction of r=60% of their size, this must expose 3(0.28000) Byzantine nodes to slashing333Two subsets of 60% of a ground set S must intersect in 20% of the nodes in S.. In the second level, applications get one extra committee (d2=5), essentially choosing one quorum out of 10795 options (|2|). Now, the number of committees in common jumps to 2257+11=15, thus exposing 15(0.28000) Byzantine nodes. In the third level, once again, applications get one extra committee (d3=6), essentially choosing one quorum out of 255 options (|3|). Now, the number of committees in common jumps to 2267+11=63, thus exposing 63(0.28000) Byzantine nodes. Note how applications have many quorum choices at each level.

Implementation.

While the system as described above is mathematically elegant, and achieves asymptotically optimal slashing (Section 4) and high availability (Section 5), the above example points out that the number of quorums per level may become too large. As we (reasonably) assume that there is an operational network cost to keep track of quorums (for instance, joining gossip channels in [39]), the applicability is compromised. In addition, calculating such large sets would be expensive. A probabilistic solution for reducing the number of quorums that works for reasonable choices of parameters is the following (reasonable meaning that committee size is large enough so that k,q are small enough).

The first two steps from the above construction remain the same, except, now we have additional parameters that heuristically bound the number of quorums in each level. Let (δj)j[] be a weakly increasing list of positive integers such that there exists δj distinct dj-dimensional projective subspaces of PG(k,q) with a nonempty intersection. The construction of the jth level committee intersection system is now defined as follows. Define a random map Nj:PG(k,q)2PGdj(k,q) by setting Nj(A) to be a set of δj distinct dj-dimensional projective subspaces of PG(k,q) that contain A, chosen uniformly at random444Given a set S, 2S denotes the power set of S.. Then, the jth level committee intersection system will be

j={com(S):SAPG(k,q)Nj(A)},

and the corresponding jth level process intersection system is still

𝒬j=rj(j).

With this construction, each committee is in approximately the same number of quorums in j with high probability, and we always have that the size of each quorum in j equals the size of each quorum in j. Thus the load of j is approximately equal to the load of j, and the message complexities of j and j are the same (refer to Definitions 6 and 5, and Observation 8). We also know that jj by construction, which immediately implies that the slashability of j (resp. 𝒬j) is at least that of j (resp. 𝒬j), and equal with very high probability. The availability results we prove in Section 5 only depend on 𝒞, so we obtain the same results with 𝒬j and with 𝒬j. However, the number of quorums using this method is significantly reduced. In particular, by Proposition 14,

|j| =|APG(k,q)Nj(A)|APG(k,q)|Nj(A)|=δj|𝒞|
|j| =(k+1dj+1)qq(kdj)(dj+1)qkdjdj|𝒞|djdjk|𝒞|dj1.

Depending on the application, a more dense or less dense intersection system may be desirable. For example, the density (number of quorums out of all possible) may be related to resilience to an adversary that can target specific processes, instead of a case where Byzantine failures are independent and randomly distributed. However, analysis in different failure models is outside the scope of this paper and relegated to future work.

4 Slashability

In this section, we show that our intersection system 𝒬j has asymptotically optimal slashability, over a general class of intersection systems constructed from committees. We prove a formalization of the following: The slashability of the jth-level intersection system 𝒬j=rj(j) is asymptotically optimal over all intersection systems built with the same set of committees and the same threshold (rj) with at least as good overall message complexity and load, allowing a certain trade off between the two quantities.

The proof of the statement above is given in Theorem 20, following some useful lemmas. First, let us compute the size of the quorums in j and the slashability of 𝒬j.

Consider the system with parameters as above, all viewed as a function of the number of processes n. Fix some j[] (also a function of n). For a more formalized treatment of asymptotic notations as in this section, see Section 5. Given functions f and g from to , we say f and g are asymptotically equivalent, written fg, if limnf(n)g(n)=1.

These first two lemmas compute msg(j) and slash(j).

Lemma 15.

The size of each quorum in j is precisely qdj+11q1. If q=ω(1), then this quantity is asymptotically equivalent to qdj.

Proof.

Consider any Qj. Then there exists some SPGdj(k,q) such that com(S)=Q. This implies that S is a dj-dimensional projective subspace of PG(k,q). Hence S is isomorphic to PG(dj,q), which has exactly qdj+11q1 elements, by Proposition 14. Since com is a bijection, it follows that |S|=|Q|=qdj+11q1. The second statement follows immediately.

Lemma 16.

The slashability of j is precisely q2djk+11q1. If q=ω(1), then this quantity is asymptotically equivalent to q2djk.

Proof.

Suppose Q,Rj. Then there exist S,TPGdj(k,q) where com(S)=Q and com(T)=R. By Proposition 12, ST is a projective subspace of PG(k,q) of dimension at least 2djk. By Proposition 14, this implies that |ST|q2djk+11q1. Since com is a bijection, this implies that slash(j)q2djk+11q1. However, since the bound in Proposition 12 is sharp, this shows slash(j)=q2djk+11q1. The second statement follows immediately.

Then Lemmas 15 and 16 show that if q=ω(1),

slash(j)q2djk=(qdj)2kdjmsg(j)2kdj.

Hence slash(j)msg(j)2kdj.

In the following result, we assume each committee has the same size, but loosening this restriction does not change the result and is only for simplification.

Proposition 17.

Suppose every committee in 𝒞 contains exactly c processes such that rjc. Then

slash(𝒬j)=(2rj1)cslash(j)=(2rj1)cq2djk+11q1=(2rj1)q2djk+11qk+11n.

If q=ω(1),

slash(𝒬j)(2rj1)q2dj2kn

Proof.

Suppose S,T𝒬j. Then there exists 𝒮,𝒯j such that S contains at least rjc processes from each committee in 𝒮, and similarly for T. Then for each C𝒮𝒯, we have

|STC| =|(SC)(TC)|
=|SC|+|TC||(SC)(TC)|
rjc+rjcc=(2rj1)c.

Also, |𝒮𝒯|slash(j). Hence

|ST| =C𝒞|STC|
C𝒮𝒯|STC|
(2rj1)cslash(j).

It follows that slash(𝒬j)(2rj1)cslash(j).

To prove equality, consider 𝒮,𝒯j such that |𝒮𝒯|=slash(j). In the following, we say that the identity of process Pi is i; the set of process identities is thus [n]. Let S be defined by the following: for all X𝒮, pick each of the rjc processes in X with the least identities to be in S. Define T similarly, by selecting the rjc processes of each X𝒯 with the greatest identities to be in T. Since rj>12, for all X𝒮𝒯, we have (SX)(TX)=X, so that

|STX| =|SC|+|TC||(SC)(TC)|=rjc+rjcc=(2rj1)c.

Hence

|ST|=X𝒮𝒯|STX|=(2rj1)cslash(j).

It follows that slash(𝒬j)=(2rj1)cslash(j).

Since 𝒞 is a partition of , we know c|𝒞|=n, so

c=n|𝒞|=n|PG(k,q)|=n(q1)qk+11,

by Proposition 14. Substituting this expression for c applying Lemma 16, we obtain

slash(𝒬j)=(2rj1)cq2djk+11q1=(2rj1)q2djk+11qk+11n.

The simplified asymptotic expression for slash(𝒬j) when q=ω(1) follows immediately.

Let us now show the asymptotic optimality of our system. Denote m=|𝒞|, so m is the number of committees. Recall Definitions 5 and 6. The following defines the set of intersection systems over which we prove optimality.

Definition 18.

Given r(12,1), λ(0,1), and a positive integer 1μm, let 𝕊(μ,λ,r) be the set of all intersection systems of the form r(), where is an intersection system with ground set 𝒞 such that the product of its message complexity and its load is at most μλ; that is, msg()load()μλ.

Since we will prove the optimality of 𝒬j, we are interested in the maximum slashability of any intersection system in 𝕊(msg(𝒬j),load(j),rj). A special case of an intersection system in this set is rj(), where =𝒞 and msg()msg(j) and load()load(j), although we prove optimality in a more general setting.

Lemma 19.

Suppose each committee has size c and rc is an integer. Let 1μm and λ(0,1). For all 𝒬𝕊(μ,λ,r), we have slash(𝒬)(2r1)cμλ.

Proof.

Let 𝒬𝕊(μ,λ,r); let be an intersection system such that 𝒬=r(). Then msg()load()μλ. Select 𝒜, independently and uniformly at random. Then slash()|𝒜|, so slash()𝐄|𝒜|. For each committee C, let XC be the indicator random variable for C𝒜 and C, so that |𝒜|=C𝒞XC. By linearity of expectation, 𝐄|𝒜|=C𝒞𝐄XC. A simple double counting argument shows that C𝒞deg(C)=𝒮|𝒮|msg()||, therefore, by Observation 8, we have C𝒞load(C)msg(). Also, load(C)load() for all C𝒞. Since for all C𝒞, the events C𝒜 and C are independent with probability load(C), it follows that 𝐄XC=𝐏(C𝒜,C)=𝐏(C𝒜)𝐏(C)=load(C)2. Hence,

slash() 𝐄|𝒜|=C𝒞load(C)2C𝒞load()load(C)load()msg()μλ.

By the proof of Proposition 17, slash(𝒬)=(2r1)cslash()(2r1)cλμ.

We now come to our main result with respect to slashability, which is a formalization of the informal statements outlined in the beginning of this section.

Theorem 20.

Suppose each committee in 𝒞 contains c processes and rjc. Then 𝒬j𝕊(msg(j),load(j),rj) and if q=ω(1), then

slash(𝒬j)max{slash(𝒬):𝒬𝕊(msg(j),load(j),rj)}.

Proof.

It is clear by definition that 𝒬j𝕊(msg(j),load(j),rj). Suppose q=ω(1). It is also easy to see that

limnslash(𝒬j)max{slash(𝒬):𝒬𝕊(msg(j),load(j),rj)}1.

By Proposition 14, msg(j)=qdj+11q1. Since every committee in 𝒞 has the degree Δ(j) in j and every quorum has size msg(j), we also have

mΔ(j)=C𝒞degj(C)=Qj|Q|=|j|msg(j).

It follows by Observation 8 that load(j)=Δ(j)|j|=msg(j)m.

Also, by Proposition 14, m=|𝒞|=|PG(k,q)|=qk+11q1. By Proposition 17, slash(𝒬j)=(2rj1)cq2djk+11q1. By Lemma 19, we then have

slash(𝒬j)max{slash(𝒬):𝒬𝕊(msg(j),load(j),rj)} (2rj1)cq2djk+11q1(2rj1)cmsg(j)load(j)
=q2djk+11q1msg(j)2m
=q2djk+11q1qk+11q1(qdj+11q1)2
=(q2djk+11)(qk+11)(qdj+11)21,

as n, where the last 1 denotes the constant function on that is always equal to the number 1. It follows that slash(𝒬j)max{slash(𝒬):𝒬𝕊(msg(j),load(j),rj)}.

5 Availability

In this section we demonstrate that under only mild assumptions, any multilevel intersection system that generalizes our approach has an asymptotically high availability (including the case when the number of levels is 1). We consider the results of this section relevant on their own, thus the results will be presented with a more general notation (from Section 2), rather than relying on specific notation from of our concrete construction in Section 3. With inspiration from some proof ideas seen in [32], we prove a formalized version of the following: Suppose processes are available with probability p. Suppose 𝒞 is a partition of the processes into committees and is any intersection system with ground set 𝒞. If 12<r<p and the smallest committee has size Ω(logn), then the intersection system r() has availability converging to 1.

The formal statement and proof of this statement is concluded in Corollary 24, following some useful lemmas below. Lets start by formalizing our assumptions. For each n1, let 𝒞n be a partition of an n-element set of processes, and let n be an intersection system with ground set 𝒞n. Let p be the probability a process is available in its steady-state, with p>1/2. For each n1, let rn(12,p) so that (rn)n is weakly increasing and r:=supnrn<p.555Note that the r’s presented in this section are not related to the different r-values used to define our multilevel intersection system in Section 3. Finally, define cn=minC𝒞n|C|; that is, cn the smallest size of any set within the partition 𝒞n (that, more generally, models committees).

Now let us bound the probability that a committee of size c does not have at least rc available processes. Denote this probability by Fp(c;r). Define the function a1(x)=(px)22px for x[0,r].

Lemma 21.

Suppose 0<r<p<1. We have Fp(c;r)ea1(r)c.

Proof.

Let Z be the number of unavailable processes in a committee of size c. It is easy to see that Z is a binomial random variable with parameters c and q=1p. Then we have

Fp(c;r)=𝐏(Z>crc)𝐏(Z1rqcq)=𝐏(Z(1+1rqq)cq).

Using δ=1rqq=prq in Lemma 25 from Appendix B (δ>0 since r<p), we obtain

Fp(c;r)exp(12+prq(prq)2cq)=exp((pr)22prc)

Lemma 22.

For all positive integers n, we have

Ap(rn(n)) 1ncnea1(r)cn.

Proof.

Recall r=supnrn<p. Fix some positive integer n. For each C𝒞n, let EC be the event that at least rn|C| of the processes in C are available. Then each EC is independent since the sets in 𝒞n are pairwise disjoint. Hence, by Lemma 21,

Ap(rn(n)) 𝐏(C𝒞nEC)=C𝒞n𝐏(EC)
=C𝒞n(1Fp(|C|;rn))C𝒞n(1exp(a1(rn)|C|)).

A straightforward computation shows that for x[0,r], we have a1(x)=(xp)(43px)(2px)2; since 0xr<p, we have xp<0, 43px>0, and (2px)2>0, which implies a1(x)<0 on [0,r]. Thus a1(x) is decreasing on [0,r]. Since rnr<p, this shows a1(rn)a1(r). Also, |C|cn for all C𝒞n implies |𝒞n|ncn. Putting these results together, we obtain

Ap(rn(n)) C𝒞n(1exp(a1(r)cn))=(1ea1(r)cn)|𝒞n|(1ea1(r)cn)ncn.

Recall that for all k1 and 0yx1, the following known inequality k(xy)xkyk holds. Using k=ncn (which is at least 1 since cnn), x=1, y=1ea1(r)cn yields ncn(1(1ea1(r)cn))1(1ea1(r)cn)ncn, which, following algebraic manipulations, implies the desired bound.

Now we are ready to prove our main theorem. We say a property R(n) that is true or false for every positive integer n holds for sufficiently large n if there exists a positive integer N such that nN implies R(n) is true.

Theorem 23.

Suppose a>0 such that for all sufficiently large n, we have cnalogn. If a=b+1a1(r)=2pr(pr)2(b+1) for some constant b, then

Ap(rn(n))11anblogn=1O(1nblogn).

Proof.

Using the bound in Lemma 22, for sufficiently large n, we obtain

Ap(rn(n)) 1ncnea1(r)cn1nalognea1(r)alogn
=1nalognna1(r)a=11ana1(r)a1logn=11anblogn.

This immediately leads to the following corollary.

Corollary 24.

Suppose a and b are constants satisfying the hypotheses of Theorem 23. If b0, then limnAp(rn(n))=1.

6 Related Work

It is common practice [6, 33, 16, 2, 19] for proof-of-stake blockchains to employ fork-choice rules in order to define an available chain, and rely in an additional “finalization gadget” to execute global consensus. In particular, we note the role of Casper in Ethereum [5], and point to a well-documented conceptual separation of available vs. final chains in [29]. The later paper also points to the fact that this separation, besides practical, is also more general in the sense that a diverse set of consensus algorithms [9, 40, 10] (among others) could be applicable. Reorg attacks [35, 30] are also related to our work as our multilevel construction can precisely quantify a lower bound on slashing if a reorg were to take place – so our work could be seen as a tool to mitigate the functional effects of reorgs.

As noted in the introduction, our work is reminiscent to (and certainly it is inspired by) previous work in quorum systems. Quorum systems are set structures whose elements are typically distributed processes (say, servers in a distributed system), so that any two such sets (called quorums) intersect in at least one process. The idea is that applications can obtain an acknowledgment of an operation from all members of a chosen quorum, so that any two such acknowledgements are consistent, due to the intersecting property. Quorum systems have been studied extensively [27, 24, 15], with applications to consensus [25], database synchronization [1], finite-state-machine replication [17], mutual exclusion [22], among many others.

We are interested in some crucial metrics, such as server load and system availability, that are also found in the extensive literature of quorum systems, for example in [27, 31]. We note that quorum system design is also quite diverse, being highly impacted by its target applications. For abstract-data-type replication, ADT-specific information can play a role [17, 18]. Another interesting application showing high impact on quorum design is federated Byzantine consensus: in this case, non-uniform quorum systems, where each participant has its own notion of membership, are studied in [15], with ideas originating from practical systems such as the Stellar consensus protocol [25]. An additional important considerations for quorum design are whether the system allows dynamic participation [28, 8].

Block designs are well-studied structures in combinatorics [12] which provide a rich family of parameterized quorum systems [13]. A well-known family of block designs corresponds to finite projective planes and their respective quorum systems. One of its earliest applications in distributed systems is an algorithm that uses O(n) messages to create mutual exclusion in a network, where n is the number or nodes [22]. Although finite projective planes that yield small quorums are desirable due to reduction in communication complexity, asymptotically their availability goes to zero [32, 20]. However, a construction with finite projective planes where points are disjoint subsets that cover the ground set and quorums are achieved on an r fraction of elements in the subsets yields asymptotic high availability [32]. A novel way of leveraging projective spaces in quorum systems for the in-network data storage paradigm is introduced and explored in [34, 21], where a 2D network is “lifted” onto a sphere using a projective map to enable more flexible quorums.

7 Conclusion

In this work, we propose an application of combinatorial designs using projective spaces over finite fields to provide gradual levels of consensus – that is, getting gradual assurance that a certain block is bound to be finalized in a global consensus procedure. We combine our design with a committee-based approach, in order to provide high availability. In fact, we prove not only that our construction is subject to high availability, but we show that any approach that uses our “sliding window” of obtaining attestations in the range strictly between 12 and the individual process availability also forms a highly available intersection system. In addition, we demonstrate that our construction has optimal slashability – the extent we penalize an adversary’s assets upon protocol non-compliance – compared to other systems that operate under similar load and message complexity.

We consider the potential applicability of our system very exciting, as we envision that highly-connected participant nodes can even buy and sell “trust certificates” associated with assurances that a block is bound to be finalized. That is, nodes obtain collections of individual and threshold signatures that form multiple quorums, and then offer these trust certificates as insurance to blockchain applications.

Having a more gradual consensus – a “sliding window” of trust – can enable large improvements in blockchain usability, providing services such as early slashing-based finalization, reorg tolerance, and even supporting transaction insurance for reorgs. We are excited to spearhead initial theoretical work in this direction.

References

  • [1] A. El Abbadi and S. Toueg. Maintaining availability in partitioned replicated databases. ACM Trans. Database Syst., 14(2):264–290, June 1989. doi:10.1145/63500.63501.
  • [2] Lacramioara Astefanoaei, Pierre Chambart, Antonella Del Pozzo, Edward Tate, Sara Tucci Piergiovanni, and Eugen Zalinescu. Tenderbake - classical BFT style consensus for public blockchains. CoRR, abs/2001.11965, 2020. arXiv:2001.11965.
  • [3] Alexandra Boldyreva. Threshold signatures, multisignatures and blind signatures based on the gap-diffie-hellman-group signature scheme. In Yvo G. Desmedt, editor, Public Key Cryptography — PKC 2003, pages 31–46, Berlin, Heidelberg, 2002. Springer Berlin Heidelberg.
  • [4] G. Bracha. Asynchronous Byzantine agreement protocols. Information and Computation, 75(2):130–143, November 1987. doi:10.1016/0890-5401(87)90054-X.
  • [5] Vitalik Buterin and Virgil Griffith. Casper the friendly finality gadget. CoRR, abs/1710.09437, 2017. arXiv:1710.09437.
  • [6] Vitalik Buterin, Diego Hernandez, Thor Kamphefner, Khiem Pham, Zhi Qiao, Danny Ryan, Juhyeok Sin, Ying Wang, and Yan X. Zhang. Combining GHOST and casper. CoRR, abs/2003.03052, 2020. arXiv:2003.03052.
  • [7] Christian Cachin, Rachid Guerraoui, and Luís Rodrigues. Introduction to Reliable and Secure Distributed Programming. Springer, 2 edition, February 2011.
  • [8] Christian Cachin, Giuliano Losa, and Luca Zanolini. Quorum Systems in Permissionless Networks. In Eshcar Hillel, Roberto Palmieri, and Etienne Rivière, editors, 26th International Conference on Principles of Distributed Systems (OPODIS 2022), volume 253 of Leibniz International Proceedings in Informatics (LIPIcs), pages 17:1–17:22, Dagstuhl, Germany, 2023. Schloss Dagstuhl – Leibniz-Zentrum für Informatik. doi:10.4230/LIPIcs.OPODIS.2022.17.
  • [9] Miguel Castro and Barbara Liskov. Practical byzantine fault tolerance. In Proceedings of the Third Symposium on Operating Systems Design and Implementation, OSDI ’99, pages 173–186, USA, 1999. USENIX Association. URL: https://dl.acm.org/citation.cfm?id=296824.
  • [10] Benjamin Y. Chan and Elaine Shi. Streamlet: Textbook streamlined blockchains. In Proceedings of the 2nd ACM Conference on Advances in Financial Technologies, AFT ’20, pages 1–11, New York, NY, USA, 2020. Association for Computing Machinery. doi:10.1145/3419614.3423256.
  • [11] David C Clark. Applications of finite geometries to designs and codes. Michigan Technological University, 2012.
  • [12] Charles J Colbourn. CRC handbook of combinatorial designs. CRC press, 2010.
  • [13] Charles J Colbourn, Jeffrey H Dinitz, and Douglas R Stinson. Quorum systems constructed from combinatorial designs. Information and Computation, 169(2):160–173, 2001. doi:10.1006/INCO.2001.3044.
  • [14] Hector Garcia-Molina and Daniel Barbara. How to assign votes in a distributed system. J. ACM, 32(4):841–860, October 1985. doi:10.1145/4221.4223.
  • [15] Álvaro García-Pérez and Alexey Gotsman. Federated Byzantine Quorum Systems. In Jiannong Cao, Faith Ellen, Luis Rodrigues, and Bernardo Ferreira, editors, 22nd International Conference on Principles of Distributed Systems (OPODIS 2018), volume 125 of Leibniz International Proceedings in Informatics (LIPIcs), pages 17:1–17:16, Dagstuhl, Germany, 2019. Schloss Dagstuhl – Leibniz-Zentrum für Informatik. doi:10.4230/LIPIcs.OPODIS.2018.17.
  • [16] Yossi Gilad, Rotem Hemo, Silvio Micali, Georgios Vlachos, and Nickolai Zeldovich. Algorand: Scaling byzantine agreements for cryptocurrencies. In Proceedings of the 26th Symposium on Operating Systems Principles, SOSP ’17, pages 51–68, New York, NY, USA, 2017. Association for Computing Machinery. doi:10.1145/3132747.3132757.
  • [17] Maurice Herlihy. A quorum-consensus replication method for abstract data types. ACM Trans. Comput. Syst., 4(1):32–53, February 1986. doi:10.1145/6306.6308.
  • [18] Maurice Herlihy. Dynamic quorum adjustment for partitioned data. ACM Trans. Database Syst., 12(2):170–194, June 1987. doi:10.1145/22952.22953.
  • [19] Aggelos Kiayias, Alexander Russell, Bernardo David, and Roman Oliynykov. Ouroboros: A provably secure proof-of-stake blockchain protocol. In Jonathan Katz and Hovav Shacham, editors, Advances in Cryptology – CRYPTO 2017, pages 357–388, Cham, 2017. Springer International Publishing. doi:10.1007/978-3-319-63688-7_12.
  • [20] Akhil Kumar and Shun Yan Cheung. A high availability N hierarchical grid algorithm for replicated data. Information Processing Letters, 40(6):311–316, 1991.
  • [21] Jun Luo and Ying He. Geoquorum: Load balancing and energy efficient data access in wireless sensor networks. In 2011 Proceedings IEEE INFOCOM, pages 616–620. IEEE, 2011. doi:10.1109/INFCOM.2011.5935238.
  • [22] Mamoru Maekawa. A N algorithm for mutual exclusion in decentralized systems. ACM Transactions on Computer Systems (TOCS), 3(2):145–159, 1985.
  • [23] Dahlia Malkhi and Michael Reiter. Byzantine quorum systems. Distributed computing, 11(4):203–213, 1998. doi:10.1007/S004460050050.
  • [24] Dahlia Malkhi, Michael Reiter, and Rebecca Wright. Probabilistic quorum systems. In Proceedings of the Sixteenth Annual ACM Symposium on Principles of Distributed Computing, PODC ’97, pages 267–273, New York, NY, USA, 1997. Association for Computing Machinery. doi:10.1145/259380.259458.
  • [25] David Mazières. The stellar consensus protocol: A federated model for internet-level consensus. Technical report, StellarDevelopmentFoundation, 2016.
  • [26] Satoshi Nakamoto. Bitcoin: A peer-to-peer electronic cash system. https://bitcoin.org/bitcoin.pdf, 2008. Accessed: 2024-09-05.
  • [27] M. Naor and A. Wool. The load, capacity and availability of quorum systems. In Proceedings 35th Annual Symposium on Foundations of Computer Science, pages 214–225, 1994. doi:10.1109/SFCS.1994.365692.
  • [28] Moni Naor and Udi Wieder. Scalable and dynamic quorum systems. Distributed Computing, 17(4):311–322, 2005. doi:10.1007/s00446-004-0114-3.
  • [29] Joachim Neu, Ertem Nusret Tas, and David Tse. Ebb-and-flow protocols: A resolution of the availability-finality dilemma. In 2021 IEEE Symposium on Security and Privacy (SP), pages 446–465, 2021. doi:10.1109/SP40001.2021.00045.
  • [30] Joachim Neu, Ertem Nusret Tas, and David Tse. Two more attacks on proof-of-stake ghost/ethereum. In Proceedings of the 2022 ACM Workshop on Developments in Consensus, pages 43–52, 2022. doi:10.1145/3560829.3563560.
  • [31] David Peleg and Avishai Wool. The availability of quorum systems. Information and Computation, 123(2):210–223, 1995. doi:10.1006/INCO.1995.1169.
  • [32] Sampath Rangarajan, Sanjeev Setia, and Satish K Tripathi. A fault-tolerant algorithm for replicated data management. IEEE Transactions on parallel and distributed systems, 6(12):1271–1282, 1995. doi:10.1109/71.476168.
  • [33] Team Rocket, Maofan Yin, Kevin Sekniqi, Robbert van Renesse, and Emin Gün Sirer. Scalable and probabilistic leaderless BFT consensus through metastability. CoRR, abs/1906.08936, 2019. arXiv:1906.08936.
  • [34] Rik Sarkar, Xianjin Zhu, and Jie Gao. Double rulings for information brokerage in sensor networks. In Proceedings of the 12th annual international conference on mobile computing and networking, pages 286–297, 2006. doi:10.1145/1161089.1161122.
  • [35] Caspar Schwarz-Schilling, Joachim Neu, Barnabé Monnot, Aditya Asgaonkar, Ertem Nusret Tas, and David Tse. Three attacks on proof-of-stake ethereum. In International Conference on Financial Cryptography and Data Security, pages 560–576. Springer, 2022. doi:10.1007/978-3-031-18283-9_28.
  • [36] Victor Shoup. Practical threshold signatures. In Bart Preneel, editor, Advances in Cryptology – EUROCRYPT 2000, pages 207–220, Berlin, Heidelberg, 2000. Springer Berlin Heidelberg. doi:10.1007/3-540-45539-6_15.
  • [37] T. Srikanth and S. Toueg. Simulating authenticated broadcasts to derive simple fault-tolerant algorithms. Distributed Computing, 2(2):80–94, June 1987. doi:10.1007/BF01667080.
  • [38] Alistair Stewart and Eleftherios Kokoris-Kogia. GRANDPA: a byzantine finality gadget. CoRR, abs/2007.01560, 2020. arXiv:2007.01560.
  • [39] Dimitris Vyzovitis, Yusef Napora, Dirk McCormick, David Dias, and Yiannis Psaras. Gossipsub: Attack-resilient message propagation in the filecoin and eth2.0 networks, 2020. arXiv:2007.02754.
  • [40] Maofan Yin, Dahlia Malkhi, Michael K. Reiter, Guy Golan Gueta, and Ittai Abraham. Hotstuff: Bft consensus with linearity and responsiveness. In Proceedings of the 2019 ACM Symposium on Principles of Distributed Computing, PODC ’19, pages 347–356, New York, NY, USA, 2019. Association for Computing Machinery. doi:10.1145/3293611.3331591.

Appendix A Projective Geometry Proofs

Proof of Proposition 12.

Suppose S,TPGd(k,q). Then there exists (d+1)-dimensional vector subspaces U,W𝔽qk+1 such that S=PG(U) and T=PG(W). It follows that ST=PG(UW), so ST is indeed a projective subspace of PG(k,q). Since U+W is a subspace of 𝔽qk+1, U+W has dimension at most k+1, which shows

dim(ST) =dimPG(UW)=dim(UW)1
=dimU+dimWdim(U+W)1
dimU+dimW(k+1)1
=2(d+1)k2=2dk.

To show that this bound is sharp for some choice of S and T, suppose 2dk and consider any basis v1,,vk+1 of 𝔽qk+1. Let

U=span(v1,,vd+1)andW=span(vk+1,vk,,vkd+1).

Clearly both U and W are vector spaces of dimension d+1. Also,

UW=span(vkd+1,,vd+1),

which is a vector space of dimension (d+1)(kd+1)+1=2dk+1. Hence, PG(U),PG(W)PGd(k,q) and PG(U)PG(W)=PG(UW) is a projective subspace of PG(k,q) with projective dimension dim(UW)1=2dk, as desired.

Appendix B Chernoff Bound

Lemma 25 (Chernoff Bound).

Let Z be a binomial random variable with parameters n and q. If δ>0, then

𝐏(Z(1+δ)nq)exp(δ2nq2+δ).