Technical Whitepaper

C Deferred Proofs

C.1 Proof of Theorem 1

Proof. Without loss of generality we will assume that all i’s above are integers, to avoid unnecessary rounding-related discussions. This assumption is without loss of generality as removing it might result in the samplers adding at most a constant number of parties on the sampled sets which will not change any of our asymptotic statement about the (relative) set sizes; furthermore, even if those additional parties are all corrupted, the asymptotic fraction of corrupted over honest parties will not change, since, as we prove, the sets are all super-constant with overwhelming probability and our corruption bound ensures that the adversary is far from the majority by an at least ϵδ fraction of the selected parties.

We consider two cases: Case 1: L noes not reset, and Case 2: L resets. In Case 1 the output Psel is selected by means of invocation of algorithm Amax. Hence, by Lemma 1, if the reputation system is ϵf-feasible, then a fraction 12 + ϵf of the parties in Psel will be honest except with negligible probability. Note that in this case, the number of selected parties is |Psel| = log 1+ϵn with probability 1. Note that Amax is only invoked if a reset occurs, i.e., if in some step there are no sufficiently many parties to select from; this never occurs if every set ˆPi has at least γlog 1+ϵn and, therefore, c-fairness does not apply in this case. In Case 1, The lottery is never reset. This case is the bulk of the proof. Conditioned on the lottery never being reset to its default, we prove the following lemmas:

For each i [m] : let Xi denote the random variable corresponding to the number of parties from ˆPi selected in the lottery and let xi := Exp(Xi)

Lemma 3. For each i [m]:

1.
                 ∑m
                        xi := Exp (Xi) = αi ⋅ ∑jℓj----
                                          j=i   q=1 αq
2.
For any constant λi (0,1):
Pr[|(1- λi)xi ≤ Xi ≤ (1 + λi)xi] ≥ 1- μi(k),

Proof. Let ˆPi = {Pˆi1,,ˆPim i}. For each ˆPiρ ˆPi and denote by χiρ,j the indicator random variable which is 1 if Pˆiρ is selected in the jth iteration of Step 4(b)i, i.e., if ˆPiρ Qj, and 0 otherwise. The j-th iteration of Step 4(b)i chooses every party in q=1jPˆq with probability ∑j-ℓi--
                          q=1αq independently of whether or not any other party in q=1jˆPq is chosen. Indeed, observe that in the jth iteration of Step 4(b)i, the lottery L samples always from the set q=1jPˆq with replacement and conflicts are resolved later. Because, out of the q=1jαq parties in q=1jˆPq, αi parties are from from Pˆi, Pr[χiρ,j = 1] = αi∑jℓiαq
                         q=1 independent of whether or not any other party is chosen in Qj. Hence, each χiρ,j corresponds to a Bernoulli trial with the above success probability and by application of the Chernoff bound for the r.v. Xi,j := ρ=1miχi ρ,j corresponding to the number of parties from ˆPi that are selected in Qj:

                    ---ℓj---
                        xi,j := Exp(Xi,j) = αi ⋅∑j α
                                              q=1 q
(11)

and for any λi,j (0,1) and some negligible function μi,j:

Pr[|(1- λi,j)xi,j ≤ Xi,j ≤ (1+ λi,j)xi,j] ≥ 1- μi,j(k),
(12)

Next we observe that although some of the parties in Qj  ˆ
                        Pi selected in Step 4(b)i might have been already selected and included in Psel (those are the parties in Qcoli,j), by selecting exactly |Qcoli,j| parties without replacement from Pˆi, we ensure that the total number of parties selected in the jth iteration of Step 4(b) is exactly Xi,j.

To complete the proof we observe that Xi = j=1mXi,j, hence by the linearity of expectation Equation 11 implies that

                  ∑m ---ℓj---
                        xi := Exp (Xi ) = αi ⋅ ∑j   αq
                                          j=i  q=1

and Equation 12 implies that for any (λi,1,i,m) (0,1)m

  ⌊                                        ⌋
                                ∑m          ∑m           ∑m
                        Pr⌈ |(1-    λi,j)xi,j ≤   Xi,j ≤ (1 +  λi,j)xi,j⌉ ≥ 1- μi(k),
                                j=1         j=1          j=1
(13)

for some negligible function μi (recall that constant-term sums and products of constantly many negligible functions are also negligible). Hence, by setting λi,j = λi∕m (recall that m = O(1) hence λi∕m is a constant) we derive the second property of the lemma.

Given the above lemma, it is easy to verify that the xi’s and the j’s satisfy the following system of linear equations:

(x1,...,xm)T = B ⋅(ℓ1,...,ℓm)T
(14)

Where B is an m × m matrix with the (i,j) position being

     {
                               ∑j-αi- , if i ≥ j
                        Bi,j =    q=1αq
                               0, otherwise

The above system of m equations has 2m unknowns. We add the following m equations:

  • For each i [m - 1] :
    xi := ci ⋅xi+1
    (15)

  • ∑m
                           xi = log1+ ϵk
                        i=1
    (16)

This yields 2m linear equations. By solving the above system of equations we can compute:

For each i = 1,,m - 1:

      ∑i            ∏m         ∏m
                        ℓ = ∑---j=∏1αj---αi+1--j=icj---αi--j=i+1cj-log1+ϵn
                        i     mj=1  jq=1 cq         αi+1αi
and
        ∑m
                        ℓ  := -----j=1-αj---1- log1+ϵn
                         m   ∑mj=1∏jq=1cqαm

We next observe that for each j [m] : i=1mBi,j = 1 which implies that

∑m      m∑
                           ℓj =    xi Eq. =16log1+ ϵk
                        j=1     i=1
(17)

It is also easy to verify that B is invertible, hence

(ℓ ,...,ℓ )T = B-1(x ,...,x  )T
                          1     m          1     m
(18)

We are now ready to prove properties 1 and 2 in the theorem. We start with Property 1:

Claim. With overwhelming probability (in the security parameter k) : |Psel| = Θ(log 1+ϵn)

Proof. Let Lj denote the random variable corresponding to |Qj|, i.e., the total number of parties added to Psel in the jth iteration of Step 4. Lemma 2 implies that that for each j [m]:

Exp (|Lj|) = ℓj
(19)

and for any constant ζj (0,1) and some negligible function μˆj:

Pr[|(1- ζj)ℓj ≤ Lj ≤ (1+ ζj)ℓj] ≥ 1 -μˆj(k),
(20)

Let Psel denote the r.v. corresponding to the selected party set. By definition of the protocol: Psel := j=1mLj. Hence from the linearity of expectation and Equation 19 we have

            m
                        Exp(|P   |) = ∑  ℓ Eq=.17log1+ϵk
                              sel    j=1  j

Similarly, from Equation 20 we get

   ⌊                                        ⌋
                                ∑m    ∑m     ∑m          ∑m    ∑m
                        Pr ⌈|(1-    ζj)   ℓj ≤   Lj ≤ (1+    ζj)   ℓj⌉ ≥ 1 - ˆμ(k ),
                                j=1   j=1    j=1         j=1   j=1
(21)

for some negligible function ˆμ, which, for any given ζ, by setting each j [m] : ζj = ζ∕m, and setting ˆμ() = j=1mˆμ() (which is also negligible when each μˆj is negligible) and j=1mj = log 1+ϵk derives

  [                                   ]
                        Pr |(1 - ζ)log1+ϵk ≤ |Psel| ≤ (1 + ζ)log1+ϵk ≥ 1- ˆμ(k),
(22)

which implies that with overwhelming probability |Psel| = Θ(log 1+ϵk).

We next proceed to Property 2:

Lemma 4. With overwhelming probability (in the security parameter k) for some constant ϵδ > 0 adversary A corrupts at most an 12 - ϵδ fraction of the parties in Psel.

Proof. The reputation system Rep assigns to each party ˆPi a reputation Ri [0,1] which corresponds to the probability that ˆPi is honest. (Recall that we for this proof we consider static reputation systems.) By the independent reputations assumption, this probability is independent of whether or not any other party in ˆP becomes corrupted. This induces a probabilistic adversary A who corrupts each reputation party ˆPi independently with probability 1 - Ri. We wish to prove that this adversary corrupts at most a 12 - ϵδ fraction of the parties in Psel. We will prove this by considering an adversary Awhich is stronger than A, i.e, where Pr[Acorrupts more than 12 - ϵ parties in Psel] Pr[A corrupts more than 12 - ϵ parties in Psel], and proving that this adversary Acorrupts more than 12-ϵ parties with only negligible probability.

Here is how Ais defined: For each Pˆi (recall that this includes parties with reputation between (i-m1 + δ,mi + δ]), Acorrupts Pˆi with probability 1 - (i-m-1 + δ). Note that for each party Pˆ Pˆ : Pr[A corrupts ˆP] Pr[A corrupts Pˆ] and this probabilities are independent of whether A(resp. A) corrupts any other party. This ensures the above property between Aand A. Hence, it suffices to prove the lemma for Awhich is what we do in the following.

Claim. In the ith iteration of Step 4, let Ci,j denote the random variable corresponding to the number of corrupted parties in Qi,j := (Qi ˆ
                        Pj) Qi,j+, i.e., the number of parties from ˆ
                        Pj that are newly added to Psel and are corrupted by A. Then for some negligible function μ for any constant 0 δ< m--i
                         m:

         m - i   ′
                        Pr[Ci,j < (-m--- δ )|Qi,j|] > 1- μ(k).

Proof. We consider three cases: Case 1: Qcoli,j = o(|Qi,j|); Case 2: Qcoli,j = ω(|Qi,j|); and Case 3: Qcoli,j = Θ(|Qi,j|). For Case 1: Since Qcoli,j = o(|Qi,j|), this implies that |(QiPˆj)\Pj| = O(|Qi|). Hence Equation 20 implies that with overwhelming probability |(QiPˆj)\Pj| = O(log 1+ϵk). However, since each party in Qi is chosen independently and the reputation is static, i.e., corruptions are defined before selecting the parties to join Qi, every party in (Qi ˆPj) \Pj is corrupted by Awith probability 1 - (im- + δ). But then an invocation of the Chernoff bound yields that with overwhelming probability, for any δ′′ > 0 the fraction of corrupted parties in (Qi ˆPj) \Pj will be at most m-i-
                        m - δ + δ′′. Additionally since Qcol i,j = o(|Qi,j|), this implies that for any constant δ′′′(0,1) and for sufficiently large k |Qcoli,j| < δ′′′|Qi,j|. Hence, even if we allow the adversary Ato corrupt all parties in Qcoli,j, for δ + δ′′′-δ′′ < ϵδ we will have that with overwhelming probability the fraction of corrupted parties in Qi,j will be at most m- i
                        -m-- - ϵδ. For Case 2: Since Qcoli,j = ω(|Qi,j|), this implies that |Qi,j+| = O(|Qi|). Hence Equation 20 implies that with overwhelming probability |Qi,j+| = O(log 1+ϵk). However, unlike the case above each party in Qi,j+ is not chosen independently, but rather a set of parties is chosen randomly. This corresponds to sampling with replacement and we can no longe use the Chernoff bound. But since the reputation is static, i.e., corruptions are defined before selecting the above set, we can make direct use of Hoeffding's inequality [53] (see Appendix D), to prove that with overwhelming probability, the fraction of corrupted parties in Qi,j+ will be at most mm-i - δ + δ′′. Additionally since Qcol i,j = ω(|Qi,j|), this implies that for any constant δ′′′(0,1) and for sufficiently large k |(Qi ˆPj) \Pj| < δ′′′|Qi,j|. Hence, even if we allow the adversary Ato corrupt all parties in (Qi Pˆj) \Pj, for δ + δ′′′- δ′′ < ϵδ we again will have that with overwhelming probability the fraction of corrupted parties in Qi,j will be at most m-m-i - ϵδ. Finally in Case 3, Qcoli,j = Θ(|Qi,j|) impies that |(Qi ˆPj) \Pj| = O(log 1+ϵk) and |Qi,j+| = O(log 1+ϵk). Hence by using both arguments from the above two cases we can prove that (1) with overwhelming probability the fraction of corrupted parties in (Qi ˆPj) \Pj will be at most (m-m-i -ϵδ2)|(Qi Pˆj) \Pj| and (2) with overwhelming probability the fraction of corrupted parties in Qi,j+ will be at most (m-mi- - ϵδ2) of the size of Qj+. Therefore by a union bound, the fraction of corrupted parties in Qi,j will be at most m-mi- - ϵδ.

Next, we observe by inspection of the protocol that |Qi,j| = Xi,j. Since from for any constant λi,j > 0, Equation 12 implies that

Pr[Xi,j ≤ (1 +λi,j)xi,j] ≥ 1- μˆi,j(k),
for some negligible function ˆμi,j, and i,m, and λi,j are all constants, this implies that for any sufficiently small positive constant δ, and for some negligible function μi,j:
Pr[C   < (m---i- δ′)x  ] ≥ 1 - μ ′(k).
                            i,j    m        i,j        i,j
(23)

But then from a union bound we can deduce that there exists a negligible function ˜μi such that:

Pr[∀j : C  < (m--- i - δ′)x ] ≥ 1- ˜μ (k).
                                i,j     m        i,j       i
(24)

which implies that

   m        m
                           ∑       ∑   m---i   ′           ′′
                        Pr[   Ci,j <   (  m  - δ )xi,j] ≥ 1 - μi(k),
                           j=1      j=1
(25)

for some negligible μi′′. Denote by Ci the total number of corrupted parties from  ˆ
                        Pi chosen in the lottery. By inspection of the protocol:

     m∑
                        Ci =    Ci,j
                             j=1

Hence Equation 25 can be rewritten as follows

Pr[C  < (m--- i - δ′)x ] ≥ 1- μ′′(k)
                            i     m        i       i
(26)

Wlog assume that m is even (the case when m is odd is analogous):

For each i ∈{2,,m∕2 - 1} the above implies that the majority of the parties in Ci is honest with overwhelming probability. Hence, but a union bound, the majority of the parties in i=2m∕2-1Qi is honest with overwhelming probability. To complete the proof it suffices to prove that a (12 -ϵδ)-fraction of the parties in Q1 (j=m∕2mQj) is honest with overwhelming probability. To this direction we observe that from Equation 26, with overwhelming probability, Pr[C1 < (1m- - δ)x1]. By an easy calculation, it follows that for any δand any c such that i=m∕2mc1i-1 m-2m-2 - δ(which can be equivalently written as cm1-1 m2-m2- - δ) the total number of parties in i=m∕2mQj is less than (m-2m-2 - δ)x1. But if this is the case then then even if we allow the adversary to corrupt all parties in every Qj (note that this is an even stronger adversary than A), still with overwhelming probability the total number corr1 of corrupted parties in Q1 (i=m∕2mQj) will be:

           m---2
                        corr1 = C1 + 2m  x1
                               -1   m---2   ′
                            < (m  +  2m  - δ )x1
                            = (1∕2- δ′)x1
(27)

Hence with overwhelming probability, the fraction R of corrupted parties in Q1 (i=m∕2mQj) will be

      (1∕2- δ′)x1
                        R < x--+-∑m-----x-< 1∕2- δ′
                              1    i=m ∕2 i
(28)

We next argue the following which will ensure that under Condition 2 of the protocol, i.e., that every set Pˆi has at least γ log 1+ϵn parties, with overwhelming probability the lottery never resets and hence all the claims in this second case hold. This follows directly from the fact that the total number of parties selected in the lottery will be less than γ log 1+ϵn with overwhelming probability; hence, none of the invocation of Step 4 exceeds the size of the corresponding sets and therefore the lottery never resets.

To complete the proof we show the c-fairness property of L in this case. The c-Representation Fairness follows directly from Lemma 3 and Equation 15. The non-discrimination property follows from the fact that our lottery picks each party in every ˆPi with exactly the same probability as any other party. The c-Selection Fairness is proved as follows: Since by the non-discrimination property every party has the same probability of being picked, each party in each Psel ˆPi is chosen with probability pi =     ˆ
                        |Pse|Pl∩ˆP|i|
                           i. However from Lemma 3 we know that with overwhelming probability, for any constant λi (0,1):

(1 - λi)xi ≤ |Psel ∩Pˆi| ≤ (1 +λi)xi

This means that with overwhelming probability, for all i = 1,,m - 1:

-pi- ≥ --(1--λi)xi---⋅ αi+1
                        pi+1   (1+ λi+1)xi+1   αi
                               -(1--λi)- -xi-  αi+1
                             = (1+ λi+1) ⋅xi+1 ⋅ αi
                                (1- λ )     α
                             = ------i--⋅ci ⋅-i+1
                               (1+ λi+1)     αi
                             ≥ -(1--λi)-c
                               (1+ λi+1)
(29)

Where the last inequality follows by the definition of ci. For any constant c< c, by choosing λi and λi+1 such that (1-λi)--
                        (1+λi+1) c∕c we can ensure that -pi-
                        pi+1 c. In Case 2 the lottery is reset and the output Psel is selected by means of invocation of algorithm Amax. This is the simpler case since Lemma 1 ensures that if the reputation system is ϵf-feasible, then a fraction 12 + ϵf of the parties in Psel will be honest except with negligible probability. Note that Amax is only invoked if a reset occurs, i.e., if in some step there are no sufficiently many parties to select from; this occurs only if any every set ˆPi does not have sufficiently many parties to choose from. But the above analysis, for δ < γ - 1, the sampling algorithms choose at most (1 + δ)log 1+ϵn with overwhelming probability. Hence when each Pˆi has size at least γ log 1+ϵn, with overwhelming probability no reset occurs. In this case, by inspection of the protocol one can verify that the number of selected parties is |Psel| = log 1+ϵn.

C.2 Proof of Theorem 2

Proof (sketch). Assume that every party has received the same genesis block. This block includes the identifiers (public keys) of all parties currently in Pˆ and their reputations (recall that for this proof, we assume static reputations) along with the randomness that seeds the lottery. Note that in the static adversary considered here, this randomness is independent from the randomness that samples the corrupted set. Since CBA is selected by means of L, and the lottery is ϵ-feasible, Theorem 1 ensures that the majority of the parties in CBA is honest. This means that we can use a Byzantine broadcast protocol to have any party ˆPi CBA consistently broadcast any messages to all the parties in CBA, i.e., in such a way that the following properties hold:

  • (consistency) All partiers in CBA output the same message (string) Y as their output of the protocol with sender ˆPi.
  • (validity) If ˆPi is honest, then Y is the string that Pˆi intended to broadcast (i.e., his input).

Thus validity implies that for every honest  ˆ
                        Pi CBC, if Ti is the set of valid transactions that ˆ
                        Pi has seen at round ρ, then every (honest) party in CBA will output Ti along with a uniformly random string ri. Furthermore, by consistency, we know that for every (honest or corrupted) ˆPj the broadcast output with sender Pˆj is the same for all parties in CBA. Hence the union T of all transactions broadcasted by parties in CBC will be the same for all CBA members, and the same holds for the concatenation of all random nonces r broadcasted in the current round. Additionally, because the history of the blockchain is the same for every party (in the first round this is the genesis block and in every subsequent round it is the sequence of the blocks until round ρ - 1), TH is the same for every party in CBA; hence every ˆPi CBA will compute the same Y = Tˆ in Step 4 of the protocol. Consequently, in Step 5, all honest parties in CBA will sign the same (Y,h,ρ) and send it to the parties in CBC. Since the majority of the parties in CBA is honest, this implies that in Step 6, every party in CBC will receive (Y,h,ρ) signed by at least the |CBA|2 honest parties. Hence, if there is any honest party in CBC the transaction pool T of that party broadcasted and included in Tˆ and will be certifies by by at least ⌈|CBA|2signatures from parties in CBA; this T will be adopted by all parties as the next block, since, as we show below, the adversary is unable to make any party accept any other block. Indeed, with overwhelming probability (i.e., unless the adversary forges an honest party’s signature) for any (Y ,h)(Y,h,ρ) the adversary will be able to produce at most ⌈|CBA|2⌉- 1 signatures on (Y ,h) from parties in CBA. Hence the no value other than (Y,h,ρ) might be accepted by any party.