Background Will Martino (me) Focus mostly on consensus + formal verification At JPM: Juno Lead SEC: Founding Tech Lead for the Distributed Ledger Technology Working Group Kadena Founded in 2016 by the former Lead Engineers for JP Morgan Blockchain group Announcing our public blockchain project (Launch ETA Q4 18) 1
Kadena Stack Public Blockchain Enterprise Blockchain Consensus Mechanism Chainweb ScalableBFT Smart Contracts Development Tooling Pact Smart Contract Language Atom/Emacs Integration Unit Tests Local Dev Server Opt-In Hindley-Milner Type Interference Formal Verification 2
Chainweb Overview Chainweb Parallel-, egalitarian-chain PoW protocol Same energy, higher throughput, lower latency Key Features 1. Peer chains cross reference each other s previous Merkle roots 2. Trustless destructive cross-chain coin transfers through SPV at the smart contract level 3
Background Similar/Prior Art Blockrope/Betacoin Cross-referencing chains twisted together GHOST/Decor+ Including orphaned header s for increased security/lower confirmation times 4
Chainweb Trustless Cross- Chain Destructive Coin Transfers Two-Step Delete coins on Chain A. Specify: Delete Acct on Chain 1 & Amount Create Chain & Create Acct Create requires a Merkle proof of deletion Smart contract runs SPV, gets Amount and Acct from proof Consume Delete s Transaction ID 5
Cross-Chain Destructive Coin Transfers Create Chain Fork Point A Fork Point B Fork Point C Fork Point D CREATE Existing Header Reference CREATE DELETE SPV Path Delete Chain DELETE Block Height 0 1 2 3 Chain 1 (Create Chain) Chain 2 (Delete Chain) Alice: 0 Alice: 0 Alice: 0 Alice: 10 Alice: 10 Alice: 0 Alice: 0 Alice: 0 6
Chainweb Valid Peer Header Reference My parent and my peer reference refer to my grandparent Chain 1' Chain 1 Chain 2 My parent and my peer reference refer to my peer s grandparent Chain 1 Chain 2 Chain 2' 7
Traditional Blockchain 8
Two Chain Configuration 9
Three Chain Configuration 10
Chainweb Graph Theory Terms Vertex: node in the graph Edge: path in the graph Degree: number of edges a vertex has Order: number of vertices in a graph Diameter: the length of the longest, shortest path between vertices 11
Chainweb Braiding Parallel Chains Base Graph as Braid Pattern Every vertex is a chain Every edge dictates what peer s previous Merkle roots are required, in addition to their own previous root, when constructing a new header We use known solutions to the degree-diameter problem for our base graphs 12
Ten Chain Configuration 13
Twenty Chain Configurations 14
Chainweb Throughput All Known Degree-Diameter Solutions Work Assuming 10 tx per sec per chain Range from 10 to 10,000,000,000 chains We aim to launch between 1k-10k tx per sec Congestion Free Crypto Kitties only clogs a subset of chains 15
Past and Future Merkle Cones 16
Chainweb Network Advancement Merkle Cones What a reorg impacts Dictate the limit of how far ahead/behind chains can get Hashrate naturally pools to the lagging chain Merkle Mass (" # ) Merkle cones have mass, buries a block in cryptographic assurance Increases exponentially from 1 to order 17
Chainweb Security Hypothesis Graph degree (d) 3 diameter (Δ) 2 order (Ω) 10 degree (d) 3 diameter (Δ) 3 order (Ω) 20 degree (d) 4 diameter (Δ) 7 order (Ω) 1320 Full Braid Attack q=0.2 z=δ 1.743 10-6 q=0.3 z=δ 0.00248 q=0.2 z=δ 1.11 10-16 q=0.3 z=δ 3.7 10-8 q=0.2 z=δ 9.992 10-15 q=0.3 z=δ 4.519 10-14 Once a block s future Merkle cone is formed, a transaction is confirmed Calculations Work in progress & looking for collaborators: Attacking the full braid Closed Form Merkle Cone Attack Monte Carlo Simulation 18
Chainweb Considerations Configurable Confirmation Latency Block Time * Base Graph Diameter Bandwidth Heavy: Whole Chainweb Block Stream Light: Single Chain Block Stream Light: Chainweb Network Headers Stream Assurance is captured in the header stream 19
Chainweb Considerations Subset Replication and Mining Possible to mine a subset of the network The Role of Large Mining Pools Hashrate load balancers Header stream network providers Layer consensus providers 20
Chainweb Considerations Cross-Chain Account to Account Transfers Take the same amount of time (diameter) as a same-chain transfer Well formed Delete is enough, Create at your leisure Load Balancing Smart Contracts Cross-chain transfer tools work for contract assets as well 21
Thank You! Will Martino will@kadena.io http://kadena.io 22