l edger c ombiners for f ast
play

L EDGER C OMBINERS FOR F AST S ETTLEMENT Matthias Fitzi 1 , Peter Gai - PowerPoint PPT Presentation

L EDGER C OMBINERS FOR F AST S ETTLEMENT Matthias Fitzi 1 , Peter Gai 1 , Aggelos Kiayias 1,2 , Alexander Russell 1,3 1 IOHK Research 2 University of Edinburgh 3 University of Connecticut TCC 2020 Nakamoto Ledgers in a Nutshell ? Cartoon


  1. L EDGER C OMBINERS FOR F AST S ETTLEMENT Matthias Fitzi 1 , Peter Gaži 1 , Aggelos Kiayias 1,2 , Alexander Russell 1,3 1 IOHK Research 2 University of Edinburgh 3 University of Connecticut TCC 2020

  2. Nakamoto Ledgers in a Nutshell ? Cartoon description: ● transactions-carrying blocks appended in ever-growing tree ● current state: longest chain, extended by honest parties ● block-creation rights distributed “fairly” using anti-Sybil lottery

  3. Nakamoto Ledgers in a Nutshell ? Cartoon description: ● transactions-carrying blocks appended in ever-growing tree ● current state: longest chain, extended by honest parties ● block-creation rights distributed “fairly” using anti-Sybil lottery Properties: ● sufficient fraction honest ⇒ “eventual” consensus on winning chain ● immutability measure: #blocks on top

  4. Anti-Sybil Lotteries for Nakamoto Consensus Proof of Work (PoW): [Bitcoin, Ethereum, ...] ● parties solve a computational puzzle ● success proportional to invested computation Proof of Stake (PoS): [Ouroboros, Snow White, ...] ● parties own stake on the blockchain ● success proportional to owned stake Proof of Space (PoSp): [SpaceMint, Chia, ...] ● parties dedicate storage space ● success proportional to dedicated storage

  5. Nakamoto Consensus: Advantages NC very resilient, can tolerate hostile environments: ● Dishonest Minority ○ in principle, up to 1/2 of the underlying resource can be controlled by an adversary ○ cf. classical: typically up to 1/3 ● Sleepiness/Dynamic Availability ○ fluctuating level of participation, parties come and go without notifying others, lose access to necessary resources, ... ○ cf. classical: fix party sets, typically rely on counting

  6. Settlement Time for Ledger Protocols ● a.k.a. latency time tx enters tx the system stabilized “How long does it take a transaction from being injected into the system until universally recognized as a stable ledger entry?”

  7. Latency Barrier of Nakamoto Consensus time ∊ tx

  8. Latency Barrier of Nakamoto Consensus time ∊ tx ● tx stability proportional to number of blocks on top

  9. Latency Barrier of Nakamoto Consensus time ∊ tx ● tx stability proportional to number of blocks on top Intrinsic Latency Barrier: limited block creation rate ⇒ limited settlement speed (to avoid forks)

  10. Overcoming Nakamoto Latency Barrier Overlay structures for improved latency: ● stronger assumptions ● latency improved in optimistic settings ● e.g. Hybrid Consensus [PS16], Thunderella [PS17], Afgjort [MMNT19] ● layer-2 solutions ● no longer maintains a distributed ledger of all transactions ● e.g. payment channels and state channels [PD16,DFH18,DEFM19,DEFHH19] Best latency guarantees achievable by Nakamoto? Our approach: Parallel Composition (also taken in Prism [BKTFV19])

  11. Our Contributions 1. An Abstract Model for Ledgers 2. A Combiner for Security Amplification (= Latency Reduction) 3. A Robust Ledger Combiner

  12. Abstract Ledgers ➢ ledger ● a static set of transactions T ● rank function: T ⟶ ℝ + ○ orders transactions ○ captures their stability ○ loosely related to time ○ e.g.: block timestamp

  13. Abstract Ledgers ➢ ledger ● a static set of transactions T ● rank function: T ⟶ ℝ + ○ orders transactions ○ captures their stability ○ loosely related to time ○ e.g.: block timestamp ➢ dynamic ledger ● time-indexed sequence of ledgers ● sufficient to express persistence, liveness

  14. Ledger Combiner for Security Amplification/Latency Reduction ( ) ... ⇒ m parallel, independent 1 “virtual” dynamic ledger ⇒ dynamic ledgers

  15. Ledger Combiner for Security Amplification/Latency Reduction ( ) ... ⇒ m parallel, independent 1 “virtual” dynamic ledger ⇒ dynamic ledgers rank 1 ( tx ) , … , rank m ( tx ) rank( tx ) := F(rank 1 ( tx ), …, rank m ( tx )) ⇒

  16. Ledger Combiner for Security Amplification/Latency Reduction ( ) ... ⇒ m parallel, independent 1 “virtual” dynamic ledger ⇒ dynamic ledgers Fast (m-fold) submission: settlement time t t / Θ(m) ⇒

  17. Ledger Combiner for Security Amplification/Latency Reduction ( ) ... ⇒ m parallel, independent 1 “virtual” dynamic ledger ⇒ dynamic ledgers Fast (m-fold) submission: settlement time t t / Θ(m) ⇒ Slow (single-ledger) submission: settlement time t t . O(ln m) ⇒

  18. Ledger Combiner for - weaker condition suffices: subindependence Security Amplification/Latency Reduction - achievable for PoW, PoS ( ) ... ⇒ m parallel, independent 1 “virtual” dynamic ledger ⇒ dynamic ledgers Fast (m-fold) submission: settlement time t t / Θ(m) ⇒ Slow (single-ledger) submission: settlement time t t . O(ln m) ⇒

  19. Ledger Combiner for Security Amplification/Latency Reduction ( ) ... ⇒ m parallel, independent 1 “virtual” dynamic ledger ⇒ dynamic ledgers m scales with λ: constant-time settlement with negligible error Fast (m-fold) submission: settlement time t t / Θ(m) ⇒ Slow (single-ledger) submission: settlement time t t . O(ln m) ⇒

  20. Ledger Combiner for Security Amplification/Latency Reduction ( ) ... ⇒ m parallel, independent 1 “virtual” dynamic ledger ⇒ dynamic ledgers Fast (m-fold) submission: settlement time t t / Θ(m) ⇒ tradeoff: tx fee ⇔ settlement time Slow (single-ledger) submission: settlement time t t . O(ln m) ⇒

  21. Robust Combiner for Dynamic Ledgers ( ) ... ⇒ m parallel dynamic 1 “virtual” dynamic ledger ⇒ ledgers

  22. Robust Combiner for Dynamic Ledgers ( ) ... ⇒ m parallel dynamic 1 “virtual” dynamic ledger ⇒ ledgers ● robust : some persistence+liveness guarantees maintained even if minority of ledgers fully corrupted ● illustrates versatility of our dynamic ledger notion

  23. 1. An Abstract Model for Ledgers

  24. Abstract Ledgers ➢ ledger: 𝕄 = (T, rank) ● set of transactions T ● rank function: T ⟶ ℝ + ○ transactions ordered by increasing rank

  25. Abstract Ledgers ➢ ledger: 𝕄 = (T, rank) ● set of transactions T ● rank function: T ⟶ ℝ + ➢ dynamic ledger: 𝔼 = 𝕄 (0) , 𝕄 (1) , 𝕄 (2) , ... ● time-indexed sequence of ledgers 𝕄 (0) 𝕄 (1) 𝕄 (2) 𝕄 (3) 𝕄 (4) ⋮

  26. Abstract Ledgers ➢ ledger: 𝕄 = (T, rank) ● set of transactions T ● rank function: T ⟶ ℝ + ➢ dynamic ledger: 𝔼 = 𝕄 (0) , 𝕄 (1) , 𝕄 (2) , ... ● time-indexed sequence of ledgers ● sufficient to express liveness, persistence 𝕄 (0) 𝕄 (1) 𝕄 (2) 𝕄 (3) 𝕄 (4) ⋮

  27. Dynamic Ledger Properties Dynamic ledger 𝔼 = 𝕄 (0) , 𝕄 (1) , 𝕄 (2) , ... ➢ Liveness. For any r, t 0 , t ≥ t 0 +r: tx 𝕄 (t) : t 0 t 0 + r

  28. Dynamic Ledger Properties Dynamic ledger 𝔼 = 𝕄 (0) , 𝕄 (1) , 𝕄 (2) , ... ➢ Liveness. For any r, t 0 , t ≥ t 0 +r: tx 𝕄 (t) : t 0 t 0 + r

  29. Dynamic Ledger Properties Dynamic ledger 𝔼 = 𝕄 (0) , 𝕄 (1) , 𝕄 (2) , ... ➢ Liveness. For any r, t 0 , t ≥ t 0 +r: tx 𝕄 (t) : except with error l(r). t 0 t 0 + r

  30. Dynamic Ledger Properties Dynamic ledger 𝔼 = 𝕄 (0) , 𝕄 (1) , 𝕄 (2) , ... ➢ Liveness. For any r, t 0 , t ≥ t 0 +r: tx 𝕄 (t) : except with error l(r). t 0 t 0 + r ➢ Persistence. For any r, t: t-r t 𝕄 (t) : 𝕄 (t+1) : 𝕄 (t+2) : ⋮ r

  31. Dynamic Ledger Properties Dynamic ledger 𝔼 = 𝕄 (0) , 𝕄 (1) , 𝕄 (2) , ... ➢ Liveness. For any r, t 0 , t ≥ t 0 +r: tx 𝕄 (t) : except with error l(r). t 0 t 0 + r ➢ Persistence. For any r, t: t-r t 𝕄 (t) : = 𝕄 (t+1) : = 𝕄 (t+2) : except with error p(r). ⋮ ⋮ r

  32. Dynamic Ledger Properties Dynamic ledger 𝔼 = 𝕄 (0) , 𝕄 (1) , 𝕄 (2) , ... ➢ Liveness. For any r, t 0 , t ≥ t 0 +r: tx 𝕄 (t) : except with error l(r). t 0 t 0 + r ➢ Absolute persistence. For any r, t: t-r t 𝕄 (t) : = 𝕄 (t+1) : = 𝕄 (t+2) : except with error p A (r). ⋮ ⋮ r

  33. Dynamic Ledger Properties Dynamic ledger 𝔼 = 𝕄 (0) , 𝕄 (1) , 𝕄 (2) , ... ➢ Relative persistence. For any r, s, t: t - r - s t - s t 𝕄 (t) : ⋮ 𝕄 (t’) : ⋮ r s

  34. Dynamic Ledger Properties Dynamic ledger 𝔼 = 𝕄 (0) , 𝕄 (1) , 𝕄 (2) , ... ➢ Relative persistence. For any r, s, t: t - r - s t - s t 𝕄 (t) : ⋮ ⊆ 𝕄 (t’) : ⋮ r s

  35. Dynamic Ledger Properties Dynamic ledger 𝔼 = 𝕄 (0) , 𝕄 (1) , 𝕄 (2) , ... ➢ Relative persistence. For any r, s, t: t - r - s t - s t 𝕄 (t) : ⊆ ⋮ ⊆ 𝕄 (t’) : ⋮ r s

  36. Dynamic Ledger Properties Dynamic ledger 𝔼 = 𝕄 (0) , 𝕄 (1) , 𝕄 (2) , ... ➢ Relative persistence. For any r, s, t: t - r - s t - s t 𝕄 (t) : ⊆ ⋮ ⊆ 𝕄 (t’) : ⋮ except with error p R (r,s). r s

  37. Why Relative Persistence? ● weaker than absolute persistence, occurs faster ● often sufficient for settlement!

  38. Why Relative Persistence? ● weaker than absolute persistence, occurs faster ● often sufficient for settlement! l(r) -liveness (absolute) settlement in r+s steps p A (s) -absolute persistence } ⇒ with error l(r) + p A (s)

  39. Why Relative Persistence? ● weaker than absolute persistence, occurs faster ● often sufficient for settlement! “ledger up to tx will not change” l(r) -liveness (absolute) settlement in r+s steps p A (s) -absolute persistence } ⇒ with error l(r) + p A (s)

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend