SlideShare a Scribd company logo
1 of 59
Public Blockchain
Scalability
Casey Caruso - Engineer @ Google
4/22/18 @caseykcaruso
The number of transactions
per unit of time that the system
can process.
What is Scalability?
@caseykcaruso
The Problem
@caseykcaruso
Transactions Per Second
7
@caseykcaruso
Transactions Per Second
157
@caseykcaruso
Transactions Per Second
157 2000
@caseykcaruso
The long-term goal is for the platform to
be able to process transactions “at Visa-
scale transaction levels” - Vitalik Buterin
@caseykcaruso
How does the public
blockchain work today?
@caseykcaruso
Blockchain
@caseykcaruso
Blockchain
PREV HASHPREV HASHPREV HASH
@caseykcaruso
Blockchain
TRANSACTION
TRANSACTION
PREV HASH
TRANSACTION
TRANSACTION
TRANSACTION
PREV HASH
TRANSACTION
TRANSACTION
TRANSACTION
PREV HASH
@caseykcaruso
Consensus
Mechanism for all participants to reach
agreement about the truth of the data
@caseykcaruso
Bitcoin Proof of Work (PoW) Consensus
All miners work to solve 1
puzzle at a time
A puzzle is solved
every 10 minutes
The probability of a mining a block is dependent on
computational work that is done by a miner
@caseykcaruso
MEM POOL
Bitcoin Proof of Work (PoW) Consensus
MINER
A
MINER
B
MINER
C
@caseykcaruso
Bitcoin Proof of Work (PoW) Consensus
MINER A BLOCK
TRANSACTION
TRANSACTION
TRANSACTION
MINER B BLOCK
TRANSACTION
TRANSACTION
MINER C BLOCK
TRANSACTION
TRANSACTION
TRANSACTION
@caseykcaruso
Bitcoin Proof of Work (PoW) Consensus
MINER A BLOCK
TRANSACTIONS
MINER C BLOCKMINER B BLOCK
HASH (
)
= 000x
NONCE GUESS
TRANSACTIONS
HASH (
)
= 000x
NONCE GUESS
TRANSACTIONS
HASH (
)
= 000x
NONCE GUESS
@caseykcaruso
Blockchain Scaling Trilemma
DECENTRALIZATION
SCALABILITY
@caseykcaruso
It takes a lot of work and
time to process a
transaction.
@caseykcaruso
Scalability Solutions
@caseykcaruso
Why don’t we make
bigger blocks?
@caseykcaruso
Block Size Increase
1 MB 8 MB
@caseykcaruso
Is there anything we can
take out of each block?
@caseykcaruso
Segregated Witness (SegWit)
TRANSACTION
INPUTS
SIGNATURES
OUTPUTS
STUFF
OTHER STUFF MORE STUFF
@caseykcaruso
Segregated Witness (SegWit)
TRANSACTION
INPUTS
OUTPUTS
OTHER STUFF MORE STUFF
SIGNATURES
STUFF
@caseykcaruso
Input:
Previous txid: f5d...9a6
Index: 0
scriptSig: 304...501
Output:
Value: 5000000
scriptPubKey: … OP_CHECKSIG
Segregated Witness (SegWit)
Transaction Before SegWit
@caseykcaruso
Input:
Previous txid: f5d...9a6
Index: 0
scriptSig: (empty)
Output:
Value: 5000000
scriptPubKey: … OP_CHECKSIG
Segregated Witness (SegWit)
Transaction Before SegWit Transaction After SegWit
Input:
Previous txid: f5d...9a6
Index: 0
scriptSig: 304...501
Output:
Value: 5000000
scriptPubKey: … OP_CHECKSIG
Witness data:
Input 0 scriptSig: 304...501
@caseykcaruso
Do we all have to process
all transactions?
@caseykcaruso
Layer 1 Onchain Sharding
BLOCKCHAIN
SHARDING
@caseykcaruso
Onchain Sharding
@caseykcaruso
Onchain Sharding
@caseykcaruso
Onchain Sharding
0x8 TRANSACTIONS
GROUP
1
GROUP
2
0x9 TRANSACTIONS
@caseykcaruso
What about doing things
offchain?
@caseykcaruso
Layer 2 Offchain State Channels
BLOCKCHAIN
STATE CHANNEL
@caseykcaruso
Offchain Payment Channels
Move processes off-chain, while still retaining a blockchain’s trustworthiness.
BLOCKCHAIN
BOB COFFEE SHOPIOU
@caseykcaruso
Lightning Payment Network
For BTC
Payment
Channel
On
Mainnet
@caseykcaruso
Lightning Payment Network
@caseykcaruso
Lightning Payment Network
TX BALANCE
Bob: .05 BTC
Shop: 0 BTC
S
TX BALANCE
Bob: .05 BTC
Shop: 0 BTC
B
@caseykcaruso
Lightning Payment Network
@caseykcaruso
Lightning Payment Network
@caseykcaruso
TX BALANCE
Bob: .049 BTC
Shop: .001 BTC
S
TX BALANCE
Bob: .049 BTC
Shop: .001 BTC
B
Lightning Payment Network
@caseykcaruso
Coffee On-chain Bob Shop
1st No .049 BTC .001 BTC
2nd No .048 BTC .002 BTC
3rd No .047 BTC .003 BTC
…
50th Yes 0 BTC .05 BTC
Lightning Payment Network
@caseykcaruso
TX BALANCE
Bob: 0 BTC
Shop: .05 BTC
S
TX BALANCE
Bob: 0 BTC
Shop: .05 BTC
B
Lightning Payment Network
TX
Bob: 0 BTC
Shop: .05 BTC
B S
@caseykcaruso
Lightning Payment Network
DAVE
ALICE
BOB
CAROL
@caseykcaruso
Lightning Hashed Timelock Contract (HTLC)
DAVEALICE BOB CAROL
@caseykcaruso
Lightning Hashed Timelock Contract (HTLC)
DAVE
R, h(R)
ALICE
h(R)
BOB CAROL
@caseykcaruso
Lightning Hashed Timelock Contract (HTLC)
DAVE
R, h(R)
ALICE
h(R)
BOB CAROL
STEP 1:
3 DAY
LOCK
STEP 2:
2 DAY
LOCK
STEP 3:
1 DAY
LOCK
@caseykcaruso
Raiden Payment Network
@caseykcaruso
ERC
20
Lightning for
Ethereum, aka
all ERC20
tokens.
Can we do more than
payments offchain?
@caseykcaruso
Plasma Protocol
ROOT CHAIN
(ETHEREUM)
PLASMA CONTRACT
(PRIVATE BLOCKCHAIN)
PLASMA CONTRACT
(DECENTRALIZED EXCHANGE)
PLASMA CONTRACT
(MICROPAYMENTS)
PLASMA CONTRACT
(SOCIAL NETWORK)
@caseykcaruso
It’s still a lot of work.
What about reaching
consensus a different
way?
@caseykcaruso
Proof of Stake (PoS) Consensus
All nodes who want to validate blocks must stake a
minimum amount
The probability of validating a block is dependent
on your stake and the age of your stake
@caseykcaruso
Proof of Stake (PoS) Consensus
VALIDATOR A
TRANSACTION
TRANSACTION
TRANSACTION
VALIDATOR B
TRANSACTION
TRANSACTION
VALIDATOR C
TRANSACTION
TRANSACTION
TRANSACTION
@caseykcaruso
VALIDATOR A VALIDATOR CVALIDATOR B
STAKED AMOUNT
STAKED AMOUNT
STAKED AMOUNT
Proof of Stake (PoS) Consensus
@caseykcaruso
Ethereum’s Casper PoS Protocol
Bonded
Stake
Min Stake
1000 ETH
Non
delegated
PoS
@caseykcaruso
What about not using a
blockchain at all?
@caseykcaruso
Directed Acyclic Graphs (DAGs)
A B
C
D
E
F
@caseykcaruso
Directed Acyclic Graphs (DAGs)
In dev
mode
No
miners or
blocks
Scales as
nodes are
added
@caseykcaruso
Things I didn’t cover
● The Byzantine Generals problem
● Practical Byzantine Fault Tolerant Alternative Algorithms
● SegWit 2x
● Sharding
● Federated Byzantine agreements
○ Stellar’s public algorithm
○ Ripple’s private algorithm
● Tendermint’s BPoS algorithm
● DPOS systems in depth
@caseykcaruso
THANK YOU!
@caseykcaruso

More Related Content

What's hot

Consensus Algorithms.pptx
Consensus Algorithms.pptxConsensus Algorithms.pptx
Consensus Algorithms.pptxRajapriya82
 
Understanding Bitcoin
Understanding BitcoinUnderstanding Bitcoin
Understanding BitcoinLeslie Bayona
 
PoW vs. PoS - Key Differences
PoW vs. PoS - Key DifferencesPoW vs. PoS - Key Differences
PoW vs. PoS - Key Differences101 Blockchains
 
Introduction to Blockchain Technology
Introduction to Blockchain TechnologyIntroduction to Blockchain Technology
Introduction to Blockchain Technologysnehal_152
 
Ppt on blockchain technology
Ppt on blockchain technologyPpt on blockchain technology
Ppt on blockchain technologyRATAN AGARWALA
 
Blockchain consensus algorithms
Blockchain consensus algorithmsBlockchain consensus algorithms
Blockchain consensus algorithmsAnurag Dashputre
 
Blockchain, cryptography, and consensus
Blockchain, cryptography, and consensusBlockchain, cryptography, and consensus
Blockchain, cryptography, and consensusITU
 
Introduction to Blockchain
Introduction to BlockchainIntroduction to Blockchain
Introduction to BlockchainJordan Harris
 
Blockchain technology
Blockchain technologyBlockchain technology
Blockchain technologyAlpnaSingh5
 
Blockchain Technology
Blockchain TechnologyBlockchain Technology
Blockchain TechnologyRashi Singh
 
Blockchain Technology Fundamentals
Blockchain Technology FundamentalsBlockchain Technology Fundamentals
Blockchain Technology FundamentalsExperfy
 
Understanding hd wallets design and implementation
Understanding hd wallets  design and implementationUnderstanding hd wallets  design and implementation
Understanding hd wallets design and implementationArcBlock
 
Blockchain in Healthcare
Blockchain in HealthcareBlockchain in Healthcare
Blockchain in HealthcareBirthVenue
 
Blockchain 101 | Blockchain Tutorial | Blockchain Smart Contracts | Blockchai...
Blockchain 101 | Blockchain Tutorial | Blockchain Smart Contracts | Blockchai...Blockchain 101 | Blockchain Tutorial | Blockchain Smart Contracts | Blockchai...
Blockchain 101 | Blockchain Tutorial | Blockchain Smart Contracts | Blockchai...Edureka!
 
Bitcoin: A Peer-to-Peer Electronic Cash System
Bitcoin: A Peer-to-Peer Electronic Cash SystemBitcoin: A Peer-to-Peer Electronic Cash System
Bitcoin: A Peer-to-Peer Electronic Cash SystemParas Jain
 

What's hot (20)

Consensus Algorithms.pptx
Consensus Algorithms.pptxConsensus Algorithms.pptx
Consensus Algorithms.pptx
 
Understanding Bitcoin
Understanding BitcoinUnderstanding Bitcoin
Understanding Bitcoin
 
Bitcoin
BitcoinBitcoin
Bitcoin
 
PoW vs. PoS - Key Differences
PoW vs. PoS - Key DifferencesPoW vs. PoS - Key Differences
PoW vs. PoS - Key Differences
 
Introduction to Blockchain Technology
Introduction to Blockchain TechnologyIntroduction to Blockchain Technology
Introduction to Blockchain Technology
 
Ppt on blockchain technology
Ppt on blockchain technologyPpt on blockchain technology
Ppt on blockchain technology
 
BLOCKCHAIN
BLOCKCHAINBLOCKCHAIN
BLOCKCHAIN
 
Blockchain consensus algorithms
Blockchain consensus algorithmsBlockchain consensus algorithms
Blockchain consensus algorithms
 
Blockchain, cryptography, and consensus
Blockchain, cryptography, and consensusBlockchain, cryptography, and consensus
Blockchain, cryptography, and consensus
 
Introduction to Blockchain
Introduction to BlockchainIntroduction to Blockchain
Introduction to Blockchain
 
Blockchain technology
Blockchain technologyBlockchain technology
Blockchain technology
 
Blockchain Technology
Blockchain TechnologyBlockchain Technology
Blockchain Technology
 
Blockchain
BlockchainBlockchain
Blockchain
 
Blockchain
BlockchainBlockchain
Blockchain
 
Blockchain Technology Fundamentals
Blockchain Technology FundamentalsBlockchain Technology Fundamentals
Blockchain Technology Fundamentals
 
Understanding hd wallets design and implementation
Understanding hd wallets  design and implementationUnderstanding hd wallets  design and implementation
Understanding hd wallets design and implementation
 
Blockchain in Healthcare
Blockchain in HealthcareBlockchain in Healthcare
Blockchain in Healthcare
 
Blockchain 101 | Blockchain Tutorial | Blockchain Smart Contracts | Blockchai...
Blockchain 101 | Blockchain Tutorial | Blockchain Smart Contracts | Blockchai...Blockchain 101 | Blockchain Tutorial | Blockchain Smart Contracts | Blockchai...
Blockchain 101 | Blockchain Tutorial | Blockchain Smart Contracts | Blockchai...
 
Bitcoin: A Peer-to-Peer Electronic Cash System
Bitcoin: A Peer-to-Peer Electronic Cash SystemBitcoin: A Peer-to-Peer Electronic Cash System
Bitcoin: A Peer-to-Peer Electronic Cash System
 
Blockchain
BlockchainBlockchain
Blockchain
 

Similar to Public Blockchain Scalability: Transactions, Consensus, and Scaling Solutions

20170620 MEETUP intro to blockchain and smart contracts (1)
20170620 MEETUP intro to blockchain and smart contracts (1)20170620 MEETUP intro to blockchain and smart contracts (1)
20170620 MEETUP intro to blockchain and smart contracts (1)Brussels Legal Hackers
 
CubeIT Bitcoin lecture
CubeIT Bitcoin lectureCubeIT Bitcoin lecture
CubeIT Bitcoin lectureMark Russell
 
Every thing bitcoin in baby language
Every thing bitcoin in baby languageEvery thing bitcoin in baby language
Every thing bitcoin in baby languageOssai Nduka
 
Blockchain 101 - public, tokenized blockchains
Blockchain 101 - public, tokenized blockchainsBlockchain 101 - public, tokenized blockchains
Blockchain 101 - public, tokenized blockchainsBrett Colbert
 
Rindi - JAX 2016 Taming the Bitcoin Blockchain
Rindi - JAX 2016 Taming the Bitcoin BlockchainRindi - JAX 2016 Taming the Bitcoin Blockchain
Rindi - JAX 2016 Taming the Bitcoin BlockchainCaterina Rindi
 
1 IN 6 NODES NOW SUPPORT BITCOIN CLASSIC
1 IN 6 NODES NOW SUPPORT BITCOIN CLASSIC1 IN 6 NODES NOW SUPPORT BITCOIN CLASSIC
1 IN 6 NODES NOW SUPPORT BITCOIN CLASSICSteven Rhyner
 
14 Jan17- Nullmeets -Blockchain concept decoded by Ninad Sarang
14 Jan17- Nullmeets -Blockchain concept decoded by Ninad Sarang14 Jan17- Nullmeets -Blockchain concept decoded by Ninad Sarang
14 Jan17- Nullmeets -Blockchain concept decoded by Ninad SarangNinad Sarang
 
Bitcoin and Other Cryptocurrencies: Illegal Money or a New Global Payment Opt...
Bitcoin and Other Cryptocurrencies: Illegal Money or a New Global Payment Opt...Bitcoin and Other Cryptocurrencies: Illegal Money or a New Global Payment Opt...
Bitcoin and Other Cryptocurrencies: Illegal Money or a New Global Payment Opt...Carola F. Berger, PhD, Dipl.-Ing., CT
 
Symposium on Legal Regulation of Bitcoin, Blockchain & Cryptocurrencies
Symposium on Legal Regulation of Bitcoin, Blockchain & Cryptocurrencies Symposium on Legal Regulation of Bitcoin, Blockchain & Cryptocurrencies
Symposium on Legal Regulation of Bitcoin, Blockchain & Cryptocurrencies anupriti
 
Introduction to Blockchain Web3 Session
Introduction to Blockchain Web3 SessionIntroduction to Blockchain Web3 Session
Introduction to Blockchain Web3 SessionDSCIITPatna
 
Bitcoin- Technology beyond Politics
Bitcoin- Technology beyond PoliticsBitcoin- Technology beyond Politics
Bitcoin- Technology beyond PoliticsDr. Juan Trujillo
 
Blockchain for Business Yale School of Management Dr John Maheswaran
Blockchain for Business Yale School of Management Dr John MaheswaranBlockchain for Business Yale School of Management Dr John Maheswaran
Blockchain for Business Yale School of Management Dr John MaheswaranJohn M.
 
the age of cryptocurrency at Devoxx Morocco
the age of cryptocurrency at Devoxx  Moroccothe age of cryptocurrency at Devoxx  Morocco
the age of cryptocurrency at Devoxx MoroccoBellaj Badr
 
BlockChain BreakDown
BlockChain BreakDownBlockChain BreakDown
BlockChain BreakDownChris Black
 
2015 WAS DO OR DIE FOR BITCOIN MINERS BUT PROMISE LIES AHEAD
2015 WAS DO OR DIE FOR BITCOIN MINERS BUT PROMISE LIES AHEAD2015 WAS DO OR DIE FOR BITCOIN MINERS BUT PROMISE LIES AHEAD
2015 WAS DO OR DIE FOR BITCOIN MINERS BUT PROMISE LIES AHEADSteven Rhyner
 
Blockchain part 2
Blockchain part 2Blockchain part 2
Blockchain part 2Sanjay Basu
 
A primer on Bitcoin Technology
A primer on Bitcoin TechnologyA primer on Bitcoin Technology
A primer on Bitcoin TechnologySebin Benjamin
 
Intro. to Lightning Network (Bitcoin/Litecoin) - Blockchain Developers Malaysia
Intro. to Lightning Network (Bitcoin/Litecoin) - Blockchain Developers MalaysiaIntro. to Lightning Network (Bitcoin/Litecoin) - Blockchain Developers Malaysia
Intro. to Lightning Network (Bitcoin/Litecoin) - Blockchain Developers MalaysiaTM Lee
 
The future of Bitcoin & 9 ways to improve it
The future of Bitcoin & 9 ways to improve itThe future of Bitcoin & 9 ways to improve it
The future of Bitcoin & 9 ways to improve itSam Wouters
 
Blockchain. A Guide For Beginners
Blockchain. A Guide For BeginnersBlockchain. A Guide For Beginners
Blockchain. A Guide For BeginnersElifTech
 

Similar to Public Blockchain Scalability: Transactions, Consensus, and Scaling Solutions (20)

20170620 MEETUP intro to blockchain and smart contracts (1)
20170620 MEETUP intro to blockchain and smart contracts (1)20170620 MEETUP intro to blockchain and smart contracts (1)
20170620 MEETUP intro to blockchain and smart contracts (1)
 
CubeIT Bitcoin lecture
CubeIT Bitcoin lectureCubeIT Bitcoin lecture
CubeIT Bitcoin lecture
 
Every thing bitcoin in baby language
Every thing bitcoin in baby languageEvery thing bitcoin in baby language
Every thing bitcoin in baby language
 
Blockchain 101 - public, tokenized blockchains
Blockchain 101 - public, tokenized blockchainsBlockchain 101 - public, tokenized blockchains
Blockchain 101 - public, tokenized blockchains
 
Rindi - JAX 2016 Taming the Bitcoin Blockchain
Rindi - JAX 2016 Taming the Bitcoin BlockchainRindi - JAX 2016 Taming the Bitcoin Blockchain
Rindi - JAX 2016 Taming the Bitcoin Blockchain
 
1 IN 6 NODES NOW SUPPORT BITCOIN CLASSIC
1 IN 6 NODES NOW SUPPORT BITCOIN CLASSIC1 IN 6 NODES NOW SUPPORT BITCOIN CLASSIC
1 IN 6 NODES NOW SUPPORT BITCOIN CLASSIC
 
14 Jan17- Nullmeets -Blockchain concept decoded by Ninad Sarang
14 Jan17- Nullmeets -Blockchain concept decoded by Ninad Sarang14 Jan17- Nullmeets -Blockchain concept decoded by Ninad Sarang
14 Jan17- Nullmeets -Blockchain concept decoded by Ninad Sarang
 
Bitcoin and Other Cryptocurrencies: Illegal Money or a New Global Payment Opt...
Bitcoin and Other Cryptocurrencies: Illegal Money or a New Global Payment Opt...Bitcoin and Other Cryptocurrencies: Illegal Money or a New Global Payment Opt...
Bitcoin and Other Cryptocurrencies: Illegal Money or a New Global Payment Opt...
 
Symposium on Legal Regulation of Bitcoin, Blockchain & Cryptocurrencies
Symposium on Legal Regulation of Bitcoin, Blockchain & Cryptocurrencies Symposium on Legal Regulation of Bitcoin, Blockchain & Cryptocurrencies
Symposium on Legal Regulation of Bitcoin, Blockchain & Cryptocurrencies
 
Introduction to Blockchain Web3 Session
Introduction to Blockchain Web3 SessionIntroduction to Blockchain Web3 Session
Introduction to Blockchain Web3 Session
 
Bitcoin- Technology beyond Politics
Bitcoin- Technology beyond PoliticsBitcoin- Technology beyond Politics
Bitcoin- Technology beyond Politics
 
Blockchain for Business Yale School of Management Dr John Maheswaran
Blockchain for Business Yale School of Management Dr John MaheswaranBlockchain for Business Yale School of Management Dr John Maheswaran
Blockchain for Business Yale School of Management Dr John Maheswaran
 
the age of cryptocurrency at Devoxx Morocco
the age of cryptocurrency at Devoxx  Moroccothe age of cryptocurrency at Devoxx  Morocco
the age of cryptocurrency at Devoxx Morocco
 
BlockChain BreakDown
BlockChain BreakDownBlockChain BreakDown
BlockChain BreakDown
 
2015 WAS DO OR DIE FOR BITCOIN MINERS BUT PROMISE LIES AHEAD
2015 WAS DO OR DIE FOR BITCOIN MINERS BUT PROMISE LIES AHEAD2015 WAS DO OR DIE FOR BITCOIN MINERS BUT PROMISE LIES AHEAD
2015 WAS DO OR DIE FOR BITCOIN MINERS BUT PROMISE LIES AHEAD
 
Blockchain part 2
Blockchain part 2Blockchain part 2
Blockchain part 2
 
A primer on Bitcoin Technology
A primer on Bitcoin TechnologyA primer on Bitcoin Technology
A primer on Bitcoin Technology
 
Intro. to Lightning Network (Bitcoin/Litecoin) - Blockchain Developers Malaysia
Intro. to Lightning Network (Bitcoin/Litecoin) - Blockchain Developers MalaysiaIntro. to Lightning Network (Bitcoin/Litecoin) - Blockchain Developers Malaysia
Intro. to Lightning Network (Bitcoin/Litecoin) - Blockchain Developers Malaysia
 
The future of Bitcoin & 9 ways to improve it
The future of Bitcoin & 9 ways to improve itThe future of Bitcoin & 9 ways to improve it
The future of Bitcoin & 9 ways to improve it
 
Blockchain. A Guide For Beginners
Blockchain. A Guide For BeginnersBlockchain. A Guide For Beginners
Blockchain. A Guide For Beginners
 

Recently uploaded

Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Scott Keck-Warren
 
The Future of Software Development - Devin AI Innovative Approach.pdf
The Future of Software Development - Devin AI Innovative Approach.pdfThe Future of Software Development - Devin AI Innovative Approach.pdf
The Future of Software Development - Devin AI Innovative Approach.pdfSeasiaInfotech2
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr BaganFwdays
 
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostLeverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostZilliz
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsMark Billinghurst
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupFlorian Wilhelm
 
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Manik S Magar
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfAddepto
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 3652toLead Limited
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek SchlawackFwdays
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebUiPathCommunity
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfAlex Barbosa Coqueiro
 
Search Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfSearch Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfRankYa
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxNavinnSomaal
 
My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024The Digital Insurer
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machinePadma Pradeep
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsRizwan Syed
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Commit University
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024Stephanie Beckett
 

Recently uploaded (20)

Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024
 
The Future of Software Development - Devin AI Innovative Approach.pdf
The Future of Software Development - Devin AI Innovative Approach.pdfThe Future of Software Development - Devin AI Innovative Approach.pdf
The Future of Software Development - Devin AI Innovative Approach.pdf
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
 
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostLeverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR Systems
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project Setup
 
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptxE-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
 
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdf
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio Web
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdf
 
Search Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfSearch Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdf
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptx
 
My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machine
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL Certs
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024
 

Public Blockchain Scalability: Transactions, Consensus, and Scaling Solutions

Editor's Notes

  1. Show of hands - who is technical? Goal is to explain the evolution of public blockchain scalability
  2. There are a lot of ways to define scalability so for the purposes of the conversation let’s define it as “”
  3. Bitcoin, the most used blockchain can handle 7 https://altcointoday.com/bitcoin-ethereum-vs-visa-paypal-transactions-per-second/
  4. Ethereum the second most popular blockchain can handle 20 https://altcointoday.com/bitcoin-ethereum-vs-visa-paypal-transactions-per-second/
  5. Ethereum the second most popular blockchain can handle 20 https://altcointoday.com/bitcoin-ethereum-vs-visa-paypal-transactions-per-second/
  6. People may think ethereum and visa are not similar solutions but vitalik himself said to long-term goal is visa-scale so how are we going to get there
  7. the Blockchain is a sequence of blocks
  8. Each block is cryptographically linked to the previous block by references the previous block’s hash Blockchain is a linked list
  9. Each block is full of transactions and 1 MB in size
  10. In order to add the next block, we need consensus Consensus is used to make sure all nodes know which block is next and have a updated version of the blockchain
  11. At a high level ---
  12. Now this is how this actually works - unverified transactions taken from mem pool Miners - which are computers running special software
  13. Miners build up blocks of transactions
  14. This is the puzzle solving step Miners start guessing a nonce, which is a random number, in hopes that the hash of the transactions + the nonce equal a certain output Every miner is trying to get the same output Finding a nonce that equals such output takes about 10 minutes and is the main bottleneck of this system Costly and long process Once a miner guesses correctly they broadcast to the network and sends to full nodes - a full nodes verify Full nodes download every block and transaction and check them against Bitcoin's consensus rules. Light nodes don’t store the whole blockchain - they query full nodes Full nodes store the whole blockchain Miners can connect and trust full nodes
  15. So PoW is very secure and decentralized but its not very scalable It’s often debated what we should be optimizing for in a consensus alg. Bitcoin core devs want to optimize for the decentralization Newer kids on the block, like stellar, want to optimize for scalability and forgo decentralization. In general, most scalability solutions can’t obtain all three of these aspects - so we call it the scaling trilemma We have Scalability - being able to process x transactions Security - being secure against x% attackers Decentralization - system being able to run where each participant only has access to x resources
  16. If blocks take so much work and time to make, logically the first question is... Why don’t we make the blocks bigger so we can fit more transactions in each block?
  17. In 2010, Satoshi introduced a block size limit of 1 MB (hidden in two commits) One of the biggest cons is centralization - As the block size increases, it becomes more expensive and more difficult to operate a full node because of the data storage and bandwidth required so you are essentially limiting who can participate Bitcoin cash ended up doing a hard fork and now has 8MB blocks OLD on a subset computer that can handle such large computations This will be not only challenging data storage, but might actually be beyond the bandwidth capacity/datacap of some full node maintainers. On
  18. If we can't make it bigger, is there anything we can take out so more transactions can fit?
  19. Solution called segwit v1 was activated last year, soft fork Look at whats in a transaction the digital signature accounted for 60% of the transactions So segwit says - lets take the signatures out since only needed at validation
  20. Signatures get moved
  21. Looking at some pseudo code here - we see the digital signature (`scriptSig`) in the input section
  22. With segwit, we take that scriptsig out and move it away Note that only white boxes count towards the block size so this frees up more space Even more importantly segwit makes the tx-id independent from the signature which fixes something called the malleability bug This makes doing payment channels a lot easier
  23. After we optimized what was in a block by looking at the transaction, we thought more about transactions and specifically questioned why everyone is looking at every transaction. Could we divide and conquer?
  24. This is called a layer 1 solution - because it is implemented at the base-level protocol of ethereum itself
  25. sharding the blockchain requires us to create a network where every node only processes a small portion of all transactions Allowing miners or validators to work in parellel
  26. sharding the blockchain requires us to create a network where every node only processes a small portion of all transactions Allowing miners or validators to work in parellel
  27. Implementation varies but one way this could work is by having all transactions that end in 8 route to one group all transactions ending in 9 to another This solution looks promising, Shard communication is difficult but all in all this solution will definitely be implemented in the future
  28. Zooming out, away from transactions and blocks, thinking about the chain - is there a way we could do stuff offchain? Can we transact off the blockchain?
  29. Layer 2 solutions - solutions are built “on top of” the main-chains
  30. Let’s say bob goes to the same coffee shop every day, putting that coffee transaction on the blockchain every day really is overkill (especially with fees) So the thought here is let’s do those transactions off the blockchain It can be thought of as a set of IOUs or a bar tab between two people and then you use setlle on chain as needed
  31. Want to talk about lightning, at a high level Lightning just works for BTC But it's one of the only solution Payment channel that is on mainnet and it really works Huge fan of lightning Just for payments
  32. The first step in the lightning network process is both parties depositing, or locking up, a certain amount amount This is a called a funding transaction and happens onchain
  33. Exchange coffee
  34. Called a commitment transaction
  35. Exchange coffee
  36. Called a commitment transaction
  37. The most updated balance is put on the blockchain as a transaction
  38. routing
  39. Let’s say alice wants to pay dave and she is going to go through bob and carol In order to allow for multiple hops you need a Hashed Timelock contract (HTLC)
  40. Dave, the recipient, creates “pre-image” R, hashes R, and passes H(R) to alice
  41. The number of hops is then calculated and deprecating HTLCs are set between each party Carol asks Dave if he knows R, Dave has 1 day to show Carol he knows R, Carol has then one more day to show Bob and one more day to show alice
  42. Same thing for this discussion but of course it will be possible will all erc20 tokens
  43. We are very happy with the promise of payment channels so how about extending this to more than payments? So increasing blocks, changing blocks, doing things offchain, Layer 2 solution still , built “on top of” the ethereum main-chain.
  44. Plasma is a protocol of smart contracts that can be used on top of a root blockchain, such as Ethereum, to create sidechains Aims to scale transactions by creating nestable side chains that only interact with the main chain every once in a while Cons Merging children chains is still in development Still in development 51% attack, through PoW is more possible because there is more compute power for each child chain which then can affect the whole chain .
  45. Even if we make bigger blocks, optimize the blocks, do things offchain, we still need to settle on chain and THAT is still a bottleneck Can we reach consnenus in a different way?
  46. At a high level --- replace the hash function calculation with a simple digital signature which proves ownership of the stake. the creator of a new block is chosen in a deterministic way, depending on its wealth
  47. Min stake which reduces num of validators Bonded to solve “nothing at stake problem” Non-delagated - but some want delegated to prevent the rich from getting richer
  48. Final question - what about not using a block at all
  49. Directed, no loops and it’s a web