Ideal Broadcast
x
Cryptographic Protocols
x
Spring 2017
x
Part 8
x
x
Definition: Broadcast
Standard Model
Players
Definition
• Player set P = {P1, . . . , Pn}
(Input x1, Outputs y1, . . . , yn)
• Consistency: Every (correct) player receives the same output y.
• Validity: Sender correct ⇒ every player receives output yi = x1.
Network
• Termination: Every player eventually receives output.
• Complete
• Synchronous
• Authenticated
Sender correct:
Adversary
• Threshold t < n/3
• Active (Byzantine)
b
• Unlimited (unconditional security)
Definition: Consensus
Definition
-
Always:
b
?
?
b
b
?
-
b
?
b
b
b
Known Results (Broadcast/Consensus)
(Inputs x1, . . . , xn, Outputs y1, . . . , yn)
• Consistency: Every (correct) player receives the same output y.
Setting
• Termination: Every player eventually receives output.
information-theoretic
• Persistency: All correct players have input x ⇒ yi = x.
Pre-agreement:
b
?
b
b
b
-
Always:
b
?
b
b
b
b
?
b
b
b
Broadcast vs Consensus
Broadcast:
Consensus:
(x, ⊥, . . . , ⊥) → (y1, . . . , yn)
(x1, . . . , xn) → (y1, . . . , yn)
Broadcast from Consensus
1. P1: send x to every Pj , Pj receives xj
2. (y1, . . . , yn) = Consensus(x1, . . . , xn)
3. ∀Pj : return yj
Consensus from Broadcast
1. ∀Pi: Broadcast(xi)
2. ∀Pj : return yj = majority of received xi’s
-
b
?
b
b
b
Condition
t < n/3
Literature
[PSL80, BGP89]
cryptographic
BC: t < n
Cons: t < n/2
[DS82]
i.t., PKI
BC: t < n
Cons: t < n/2
[PW92]
Road Map
Broadcast
6
Consensus
6
King Consensus
6
Graded Consensus
6
Weak Consensus
Definition: Weak Consensus
Protocol Weak Consensus
(Inputs x1, . . . , xn, Outputs y1, . . . , yn)
Definition
WeakConsensus(x1, . . . , xn) → (y1, . . . , yn)
• Weak Consistency: ∃y ∈ {0, 1} such that ∀i : yi ∈ {y, ⊥}.
1. ∀Pi: send xi to every Pj
• Persistency: All correct players have input x ⇒ yi = x.
0 if #Zeros ≥ n − t
2. ∀Pj : yj = 1 if #Ones ≥ n − t
⊥ else
• Termination: Every player eventually receives output.
Pre-agreement:
b
?
b
b
b
Always:
b
?
b
b
b
-
b
?
b
3. ∀Pj : return yj
b ∨⊥
?
b ∨⊥
b ∨⊥
b ∨⊥
-
b
b
Definition: Graded Consensus
Definition
Protocol Graded Consensus
(Inputs x1, . . . , xn, Outputs (y1, g1), . . . , (yn, gn))
GradedConsensus(x1, . . . , xn) → ((y1, g1), . . . , (yn, gn))
• Graded Consistency: Correct Pi has gi = 1 ⇒ ∀j : yj = yi.
• Graded Persistency: All corr. players have input x ⇒ (yi, gi) = (x, 1).
• Termination: Every player eventually receives output.
Pre-agreement:
b
?
b
b
b
-
b, 1
?
b, 1
b, 1
b, 1
3. ∀Pj :
Always:
b
?
b
b
b
b, ∗
?
b, ∗
b, ∗
b, ∗
-
b
?
b
b
b
∗, 0
?
∗, 0
∗, 0
∗, 0
-
Definition: King Consensus
Definition
1 if #yj ’s ≥ n − t
0 else
4. ∀Pj : return (yj , gj )
King correct:
b
?
b
b
b
-
z
if gj = 1
3. ∀Pj : yj = j
zk else
Else:
b
?
b
b
b
b
?
b
b
b
-
?
4. ∀Pj : return yj
Consensus(x1, . . . , xn) → (y1, . . . , yn)
1. for k = 1 to t + 1 do
(x1, . . . , xn) = KingConsensusk (x1, . . . , xn)
od
2. ∀Pj : return xj
Impossibility for 3 players, 1 corrupted
Π1
0
Π3
0
Π1
0
Π3
0
Π1
0
Π3
1
Π3
1
Π2
1
Π3
1
Π2
1
Π3
Π2
gj =
2. Pk : send zk to every Pj .
• Termination: Every player eventually receives output.
-
0 if #Zeros ≥ #Ones
1 if #Zeros < #Ones
1. ((z1, g1), . . . , (zn, gn)) = GradedConsensus(x1, . . . , xn)
• Persistency: All correct players have input x ⇒ yi = x.
b
?
b
b
b
KingConsensusk (x1, . . . , xn) → (y1, . . . , yn)
(Inputs x1, . . . , xn, Outputs y1, . . . , yn)
Pre-agreement:
yj =
Protocols King Consensus (King Pk ) and Consensus
• King Consistency: King is correct ⇒ ∃y : ∀i : yi = y.
b
?
b
b
b
1. (z1, . . . , zn) = WeakConsensus(x1, . . . , xn)
2. ∀Pi: send zi to every Pj .
0
1
© Copyright 2026 Paperzz