Speculative Byzantine Fault Tolerance By Ocan Gillaux University of - - PowerPoint PPT Presentation

speculative byzantine fault tolerance
SMART_READER_LITE
LIVE PREVIEW

Speculative Byzantine Fault Tolerance By Ocan Gillaux University of - - PowerPoint PPT Presentation

Speculative Byzantine Fault Tolerance By Ocan Gillaux University of Stavanger, MID110, April 2010 Plan Zyzzyva: Last word of dictionary Requirements & Introduction Byzantine problem Zyzzyva Protocol Evaluation


slide-1
SLIDE 1

Speculative Byzantine Fault Tolerance

By Océan Gillaux University of Stavanger, MID110, April 2010

slide-2
SLIDE 2

Plan

 Zyzzyva: Last word of dictionary  Requirements & Introduction  Byzantine problem  Zyzzyva Protocol  Evaluation  Conclusion

slide-3
SLIDE 3

Requirements

 Fault Tolerance ?

 Servers Problems:

○ Hardware ○ Software ○ Hacking

 Access 24/7

 Application see centralized services

slide-4
SLIDE 4

Solution

Client Server Request Reply Request Replies Zyzzyva  Add Servers

 Problem reliability: Byzantine General’s

problem

slide-5
SLIDE 5

Byzantine General's problem

 Captain 2 is a liar  Minimum 2m+1 loyal for 1 liar

General Captain 2 Captain 1

slide-6
SLIDE 6

Security

 We admit that adversary cannot break

cryptographic techniques

 Zyzzyva uses the concept of

private/public key

slide-7
SLIDE 7

Introduction: Byzantine Fault Tolerance

Client

Primary Replica Replica Replica Request Reply Agreement Execution

slide-8
SLIDE 8

Introduction: Byzantine Fault Tolerance

 Long phase of agreement  Cost important  Many messages

slide-9
SLIDE 9

Introduction: Zyzzyva

Client Primary Replica Replica Replica Request Reply Speculative execution

slide-10
SLIDE 10

Introduction: Zyzzyva

 Replica make speculation to send the

response:

 It is faster

 The client verifies if the reply is stable

slide-11
SLIDE 11

Zyzzyva Protocol

 3 sub-protocols

 Agreement protocol  View-change protocol  Checkpoint protocol

slide-12
SLIDE 12

Agreement Protocol

 How the client check stable reply?

 History included in the message  Matching responses

slide-13
SLIDE 13

Execution with 3f+1

Client Primary Replica Replica Replica Request: RC

R1k=R2k= ? H1k=H2k=?

Speculative execution <Rc,k>

Replies: <R1k, H1k> … <R4k, H4k>

slide-14
SLIDE 14

One faulty: 2f+1 replies

Client Primary Replica Replica Replica Request: Rc 2f+1 Speculative execution <Rc,k> <R1k, H1k>… Commit C:<H1k,..,H3k> 2f+1 Done

slide-15
SLIDE 15

Less 2f+1 responses

Client Primary Replica Replica Replica Request: Rc <2f+1 Speculative execution <Rc,k> <R1k, H1k>… Rc

slide-16
SLIDE 16

Checkpoint Protocol

 History is important

 Manage the history  Replica maintains only 1 checkpoint  Only last information could be necessary

slide-17
SLIDE 17

View Change

 Election new Primary AND guarantees

the history

 Concept “I hate the primary”

 Replica can make a mutiny  View-change message

slide-18
SLIDE 18

Client

 Important Roles in Zyzzyva

 Can a faulty client block zyzzyva?

○ Not commit message ○ Only affect own process

 Can a faulty client compromised zyzzyva?

○ Commit bad history ○ Security encryption

slide-19
SLIDE 19

Optimization

 Replacing signatures with MACs  Separating agreement from execution  Request Batching  Zyzzyva5

slide-20
SLIDE 20

Zyzzyva5: 5f+1

Client Primary Replica Request: Rc 4f+1 Speculative execution <Rc,k> Donne <R1k, H1k>… Replica Replica Replica Replica

slide-21
SLIDE 21

Evaluation

slide-22
SLIDE 22

Evaluation

slide-23
SLIDE 23

Conclusion

 In exploiting speculation, Zyzzyva has a

good performance over existing BFT

  • services. Zyzzyva approaches the

theoretical lower bounds for any BFT.

slide-24
SLIDE 24

Thank you Questions ?