FruitChains: A Fair Bloc ockchain Authors: Rafael Pass, Elaine Shi - - PowerPoint PPT Presentation

β–Ά
fruitchains a fair bloc ockchain
SMART_READER_LITE
LIVE PREVIEW

FruitChains: A Fair Bloc ockchain Authors: Rafael Pass, Elaine Shi - - PowerPoint PPT Presentation

FruitChains: A Fair Bloc ockchain Authors: Rafael Pass, Elaine Shi presented by Han Zhang Nakamotos Blockchain A sequence of (mined) blocks = Assumption: Majority of the computing power is controlled by ( %& , , ,


slide-1
SLIDE 1

FruitChains: A Fair Bloc

  • ckchain

Authors: Rafael Pass, Elaine Shi

presented by Han Zhang

slide-2
SLIDE 2

Nakamoto’s Blockchain

  • A sequence of (mined) blocks 𝑐 =

(β„Ž%&, Ξ·, 𝑛, β„Ž)

  • 𝑛: record
  • β„Ž%&: pointer to the (record in) previous block
  • β„Ž: pointer to the current record
  • Ξ·: nonce
  • proof-of-work, derived from the pair= β„Ž%&, 𝑛
  • Assumption: Majority of the

computing power is controlled by honest players

  • Strong assumption
  • lots of work for solve the computational

puzzles

  • Players are incentivized by
  • mining rewards and transaction fees for

every block

slide-3
SLIDE 3

Selfish Mining and Fairness

  • Minority fraction ρ < & -

⁄ of computational power in the network can contribute a significantly larger fraction of blocks than it β€œfair share” ρ

  • Assuming the adversary controls the delivery of messages on the network
  • (1 βˆ’ ρ)π‘ˆ by hones players, Οπ‘ˆ blocks are replaced by adversarial blocks
  • The expected fraction of adversarial blocks becomes N

&%N

  • ρ = 1/2,

N &%N =1, twice its fair share of the rewards

  • Chain quality
  • The chain contains a sufficient fraction of blocks contributed by honest players
  • Ideally, we can have a fair blockchain protocol with a 1 βˆ’ ρ chain quality
  • Honest players contributing a 𝜚 ≀ 1 βˆ’ ρ fraction of the computational sources get a 𝜚

fraction of the blocks and thus rewards in any sufficiently long window

slide-4
SLIDE 4

FruitChain

  • FruitChain protocol satisfies β€œclose-to-optimal” fairness
  • An adversary controls up to a ρ fraction of the computing power, and as a

consequence the adversary coalition cannot get more than 1 + δ ρ

  • Ξ΄ < 0.3
  • Ξ΄-approximately fair: honest players are guaranteed to get at least a 1 βˆ’ Ξ΄ (1 βˆ’ ρ)

fraction of the blocks in every sufficiently long window

slide-5
SLIDE 5

FruitChain

Nakamoto

  • Nakamoto: 𝑐 = β„Ž%&, Ξ·, 𝑛, β„Ž
  • Nakamoto
  • Pr 𝐼(β„Ž%&, Ξ·, 𝑐) < 𝐸[ = π‘ž
  • Blocks by blocks

FruitChain

  • Fruit mining and Block mining:
  • Fruits: 𝑔 = β„Ž%&; β„Ž_; Ξ·; 𝑒𝑗𝑕𝑓𝑑𝑒(𝐺); 𝑛; β„Ž
  • The records are put inside β€œfruits” and these fruits themselves

requires solving some proof of work

  • Blocks look like fruits: 𝑐 =

β„Ž%&; β„Ž_; Ξ·; 𝑒𝑗𝑕𝑓𝑑𝑒(𝐺); 𝑛; , 𝐺

  • Digest of some fruit-set F to be included in the block later;
  • β„Ž_ pointer that points to the block the fruit is hanging from
  • Hardness parameter π‘žg
  • Fruit mining and block mining are piggybacked by

each other

  • A fruit is required to β€œhang” from a block which isn’t too

far from the block which records the fruit

  • Recency Parameter
  • how far back a fruit is allowed to hang

Step1: Block 1 Step 3: Fruit 1 hang from Block 1 Step 2: Block 2

slide-6
SLIDE 6

FruitChain

  • In each round, , check 𝓡 steps back
  • honest players simultaneously mine for a

fruit and a block

  • 𝐼 β„Ž%&; β„Ž_; Ξ·; 𝑒𝑗𝑕𝑓𝑑𝑒(𝐺); 𝑛; β„Ž = β„Ž
  • [β„Ž]%𝓡 denotes the last 𝓡 bits of β„Ž
  • [β„Ž]𝓡 denotes the first 𝓡 bits of β„Ž
  • 𝓡 = 2, π‘‘β„Žπ‘π‘—π‘œ = 10)

Block 10: block Block 11: fruit is pointed in π‘‘β„Žπ‘π‘—π‘œ βˆ’ 𝓡=10-2=8th block Block 12: block with 𝐺 Block 13: block Block 8

slide-7
SLIDE 7

Selfish Mining

  • Selfish mining fails in FruitChain
  • Even if an adversary tries to β€œerase” some block mined by an honest

player (which contains some honest fruits)

  • An honest player will mine a new block which is stable and this

honest player will include the fruit in it

  • The time before such an β€œhonest block” arrives is short enough for

the fruit to still be β€œrecent” at the time of the honest block arriving

slide-8
SLIDE 8

FruitChain

  • Why we require fruits to be recent
  • Without it, an attacker could withhold fruits, and suddenly release

lots of them at the same time, thereby creating an very high fraction

  • f adversarial fruit in some segment of the FruitChain.
  • By requiring the fruits to be recent, we prevent the adversary from

squirreling away (too many of) it’s fruits.

slide-9
SLIDE 9

Questions…