SlideShare a Scribd company logo
1 of 30
Pisa Bitcoin Meetup
Segregated Witness and Bitcoin Scaling Debate
Diego Dal Canto
Navacchio 24 Luglio 2017
Credits
• Coindesk
• Cointelegraph
• Bitcoin Magazine
• We use coin
• Bitcoin wiki
Agenda
• Bitcoin transactions
• Bitcoin Improvement Proposals
• Segregated witness
• The scaling debate
Input
Output
There are no bitcoins, only records of bitcoin transactions
Instructions on how to
unlock the input, only the
owner can generate it
The sender creates a new lock that only the receiver can unlock
proving that he owns the private key corresponding to his public key
and generating a new scriptSig
Stack Script Description
Empty.
<sig> <pubKey> OP_DUP OP_HASH160 <pubKeyHash>
OP_EQUALVERIFY OP_CHECKSIG
scriptSig and scriptPubKey are combined.
<sig> <pubKey>
OP_DUP OP_HASH160 <pubKeyHash> OP_EQUALVERIFY
OP_CHECKSIG
Constants are added to the stack.
<sig> <pubKey> <pubKey>
OP_HASH160 <pubKeyHash> OP_EQUALVERIFY
OP_CHECKSIG
Top stack item is duplicated.
<sig> <pubKey> <pubHashA> <pubKeyHash> OP_EQUALVERIFY OP_CHECKSIG Top stack item is hashed.
<sig> <pubKey> <pubHashA>
<pubKeyHash>
OP_EQUALVERIFY OP_CHECKSIG Constant added.
<sig> <pubKey> OP_CHECKSIG Equality is checked between the top two stack items.
true Empty. Signature is checked for top two stack items.
Transaction confirmation
Transaction malleability
• The ability of someone to change (mutate) unconfirmed transactions without making them
invalid, which changes the transaction’s txid, making child transactions invalid.
• Although the modifications are non-functional—so they do not change what inputs the
transaction uses nor what outputs it pays—they do change the computed hash of the
transaction.
• Since each transaction links to previous
transactions using hashes as a transaction
identifier (txid), a modified transaction will not
have the txid its creator expected.
• This isn’t a problem for most Bitcoin transactions
which are designed to be added to the block
chain immediately. But it does become a problem
when the output from a transaction is spent before
that transaction is added to the block chain.
Segregated witness
• Signatures are not transmitted as part of the
transaction
• They are transmitted alongside the transaction in a
separate data structure:
• Nodes that wish to validate transactions can chose to do so
(download and store the witness repository)
• Nodes that do not wish to validate transactions can choose
to do so as well (do not need to download data)
• Discovered in 2015 that this could be implemented as a
Soft Fork by Bitcoin Core and Blockstream developer
Pieter Wuille
Benefits of Segregated witness
• Separations of signatures from transactions fixes transaction malleability
• Once a transaction is included in a block, the signature is irrelevant (can save up
to 75% of blockchain)
• Miners will want to get transactions with witness in order to maintan
consistency, nodes instead can better scale the blockchain since signatures only
need to be validated when a transaction is first presented for inclusion on the
blockchain. No need to carry it around by nodes that are not interested in
validating the transaction further
• Up until now block version and transaction version have been used, not the
script language version. Segwith introduces the ability to upgrade the scripting
language (script versioning) enabling new features like confidential transaction
adding a fully fungible transaction layer
Protocol upgrade, soft and hard forks
In a pure distributed system no actor has
the full control
• Users (give value/use)
• Miners (chose which coin to mine)
• Developers (guide the debate)
• Nodes (decide which client to run)
• Exchanges (create markets)
Set of rules
Example:
Old Blocksize limit 1 MB
New Blocksize limit 0.5 MB
• Old versions accept new ones
• Protocol upgrade
Example:
Blocksize limit 1 MB
New Blocksize limit 2 MB
• Old versions do not accept
new ones
• Protocol replacement
• Currency split risk
A system designed to be hard to control
How to upgrade a software in a fully distributed network?
BIP = Bitcoin Improvement Proposal
• BIP141 = The current implementation of Segregated Witness. BIP141 is activated through the activation method defined by
BIP9. This means that 95% of all blocks within a two-week period need to include a piece of data: “bit 1.” This indicates that
a miner is ready for the upgrade. As such, SegWit would be activated if the vast majority of miners are ready for it.
• BIP148 = User Activated Soft Fork, On August 1st, anyone running Bitcoin software that implemented BIP148 will start
rejecting all blocks that do not include bit 1, the SegWit signalling data. If BIP148 is not supported by a majority of miners
(by hash power), Bitcoin’s blockchain could split in two. In that case, there would effectively be two types of Bitcoin, where
one activated BIP148 and the other did not. This may resolve over time — or it may not
• SegWit2x = Is the scaling agreement reached by a number of Bitcoin companies and over 80 percent of miners (by hash
power), drafted just before the Consensus 2017 Conference. SegWit2x would only require 80 percent of support, moreover
its readiness would be signaled using another piece of activation data: “bit 4” instead of “bit 1.”
• BIP91 = Is a proposal by engineer James Hilliard which was specifically designed to prevent a coin-split by making SegWit2x
and BIP148 compatible. Upon activation of BIP91, all BIP91 nodes will reject any blocks that do not signal support for
SegWit through bit 1. As such, if a majority of miners (by hash power) run BIP91, the longest valid Bitcoin chain will consist
of SegWit-signaling blocks only, and all regular BIP141 SegWit nodes will activate the protocol upgrade. Where BIP91 differs
from BIP148 is that it doesn’t have a set activation date, but is instead triggered by hash power. BIP91 nodes will reject any
non-SegWit signalling blocks if, and only if, 80 percent of blocks first indicate within two days that’s what they’ll do. This
indication is done with bit 4. If this is done before August 1st, it’s also compatible with BIP148, since BIP148 nodes would
reject non-bit 1 blocks just the same.
How consensus is measured
Developes
The corporate takeover of bitcoin in one commit
Users / Bitcoin Companies
A P2P protocol for cheap transactions, seriously?
Node clients
Node clients
Bitcoin Unlimited
Overview
Bitcoin Unlimited is a fork of the Bitcoin Core
reference client with the intention of providing a voice
to all stakeholders in the Bitcoin ecosystem. The
project seeks to remove existing practical barriers to
stakeholders expressing their views in these ways.
Protocol Scaling Plan
• BUIP001 Fixed block limit made obsolete
• BU follows the blockchain with most PoW as per
the original Nakamoto Consensus
• Separation of the mining block size (default 1MB)
from the non-mining block acceptance size (default
16MB)
• Block size limits and acceptance depth individually
configurable
Bitcoin Core
Overview
Bitcoin Core (formerly Bitcoin-Qt) is the third
Bitcoin client, developed by Wladimir J. van der
Laan based on the original reference code
by Satoshi Nakamoto. It has been bundled with
bitcoind since version 0.5. Bitcoin-Qt has been
rebranded to Bitcoin Core since version
0.9.0.54
Protocol Scaling Plan
SegWit + Lightning Network, Schnorr
signatures, MAST.
Bitcoin UASF
Overview
Clone of Bitcoin Core for user activation of the Segwit
softfork
UASF: the Independence day
Miners
Miners
Block signaling
Block signaling

More Related Content

What's hot

Bitcoin, Banking and the Blockchain
Bitcoin, Banking and the BlockchainBitcoin, Banking and the Blockchain
Bitcoin, Banking and the Blockchainseancarmody
 
The Lightning Network - A gentle introduction
The Lightning Network - A gentle introductionThe Lightning Network - A gentle introduction
The Lightning Network - A gentle introductionRoland Stadler
 
Security in the blockchain
Security in the blockchainSecurity in the blockchain
Security in the blockchainBellaj Badr
 
Bitcoin & Ethereum Address
Bitcoin & Ethereum AddressBitcoin & Ethereum Address
Bitcoin & Ethereum AddressPo Wei Chen
 
Introduction to Consensus techniques
Introduction to Consensus techniques Introduction to Consensus techniques
Introduction to Consensus techniques Vasiliy Suvorov
 
Vilnius blockchain club 20170413 consensus
Vilnius blockchain club 20170413 consensusVilnius blockchain club 20170413 consensus
Vilnius blockchain club 20170413 consensusAudrius Ramoska
 
Bitcoin - An introduction to a decentralised and anonymous currency
Bitcoin - An introduction to a decentralised and anonymous currencyBitcoin - An introduction to a decentralised and anonymous currency
Bitcoin - An introduction to a decentralised and anonymous currencyAndyBrodieLocima
 
How to Create AltCoin(Alternative Cryptocurrency)?
How to Create AltCoin(Alternative Cryptocurrency)?How to Create AltCoin(Alternative Cryptocurrency)?
How to Create AltCoin(Alternative Cryptocurrency)?Abdullah Khan Zehady
 
Architecture of the Hyperledger Blockchain Fabric - Christian Cachin - IBM Re...
Architecture of the Hyperledger Blockchain Fabric - Christian Cachin - IBM Re...Architecture of the Hyperledger Blockchain Fabric - Christian Cachin - IBM Re...
Architecture of the Hyperledger Blockchain Fabric - Christian Cachin - IBM Re...Romeo Kienzler
 
RSK (Rootstock) - Smarter Bitcoin
RSK (Rootstock) - Smarter BitcoinRSK (Rootstock) - Smarter Bitcoin
RSK (Rootstock) - Smarter BitcoinBlockchainHub Graz
 
Alternative Consensus & Enterprise Blockchain
Alternative Consensus & Enterprise BlockchainAlternative Consensus & Enterprise Blockchain
Alternative Consensus & Enterprise BlockchainTobias Disse
 
Blockchain 101
Blockchain 101Blockchain 101
Blockchain 101Oded Noam
 
EUIPO DPM knowledge share: Blockchain and IP
EUIPO DPM knowledge share: Blockchain and IPEUIPO DPM knowledge share: Blockchain and IP
EUIPO DPM knowledge share: Blockchain and IPAudrius Ramoska
 
Blockchain Technology - The Next Superpower By Priyank Vaghela
Blockchain Technology - The Next Superpower By Priyank VaghelaBlockchain Technology - The Next Superpower By Priyank Vaghela
Blockchain Technology - The Next Superpower By Priyank VaghelaPriyankVaghela
 
On Private Blockchains, Technically
On Private Blockchains, TechnicallyOn Private Blockchains, Technically
On Private Blockchains, TechnicallyAlex Chepurnoy
 
Bitcoin Status Report - On-Chain Scaling Aug 2016
Bitcoin Status Report - On-Chain Scaling Aug 2016Bitcoin Status Report - On-Chain Scaling Aug 2016
Bitcoin Status Report - On-Chain Scaling Aug 2016Jeff Garzik
 
Front-End Development for dApps on Tezos
Front-End Development for dApps on TezosFront-End Development for dApps on Tezos
Front-End Development for dApps on TezosNeven6
 

What's hot (20)

Pi network
Pi networkPi network
Pi network
 
Bitcoin, Banking and the Blockchain
Bitcoin, Banking and the BlockchainBitcoin, Banking and the Blockchain
Bitcoin, Banking and the Blockchain
 
The Lightning Network - A gentle introduction
The Lightning Network - A gentle introductionThe Lightning Network - A gentle introduction
The Lightning Network - A gentle introduction
 
Security in the blockchain
Security in the blockchainSecurity in the blockchain
Security in the blockchain
 
Bitcoin & Ethereum Address
Bitcoin & Ethereum AddressBitcoin & Ethereum Address
Bitcoin & Ethereum Address
 
Introduction to Consensus techniques
Introduction to Consensus techniques Introduction to Consensus techniques
Introduction to Consensus techniques
 
Vilnius blockchain club 20170413 consensus
Vilnius blockchain club 20170413 consensusVilnius blockchain club 20170413 consensus
Vilnius blockchain club 20170413 consensus
 
Altcoins
AltcoinsAltcoins
Altcoins
 
Bitcoin - An introduction to a decentralised and anonymous currency
Bitcoin - An introduction to a decentralised and anonymous currencyBitcoin - An introduction to a decentralised and anonymous currency
Bitcoin - An introduction to a decentralised and anonymous currency
 
How to Create AltCoin(Alternative Cryptocurrency)?
How to Create AltCoin(Alternative Cryptocurrency)?How to Create AltCoin(Alternative Cryptocurrency)?
How to Create AltCoin(Alternative Cryptocurrency)?
 
Architecture of the Hyperledger Blockchain Fabric - Christian Cachin - IBM Re...
Architecture of the Hyperledger Blockchain Fabric - Christian Cachin - IBM Re...Architecture of the Hyperledger Blockchain Fabric - Christian Cachin - IBM Re...
Architecture of the Hyperledger Blockchain Fabric - Christian Cachin - IBM Re...
 
RSK (Rootstock) - Smarter Bitcoin
RSK (Rootstock) - Smarter BitcoinRSK (Rootstock) - Smarter Bitcoin
RSK (Rootstock) - Smarter Bitcoin
 
Alternative Consensus & Enterprise Blockchain
Alternative Consensus & Enterprise BlockchainAlternative Consensus & Enterprise Blockchain
Alternative Consensus & Enterprise Blockchain
 
Blockchain 101
Blockchain 101Blockchain 101
Blockchain 101
 
EUIPO DPM knowledge share: Blockchain and IP
EUIPO DPM knowledge share: Blockchain and IPEUIPO DPM knowledge share: Blockchain and IP
EUIPO DPM knowledge share: Blockchain and IP
 
Blockchain Technology - The Next Superpower By Priyank Vaghela
Blockchain Technology - The Next Superpower By Priyank VaghelaBlockchain Technology - The Next Superpower By Priyank Vaghela
Blockchain Technology - The Next Superpower By Priyank Vaghela
 
On Private Blockchains, Technically
On Private Blockchains, TechnicallyOn Private Blockchains, Technically
On Private Blockchains, Technically
 
Bitcoin Status Report - On-Chain Scaling Aug 2016
Bitcoin Status Report - On-Chain Scaling Aug 2016Bitcoin Status Report - On-Chain Scaling Aug 2016
Bitcoin Status Report - On-Chain Scaling Aug 2016
 
Ethereum Intro
Ethereum IntroEthereum Intro
Ethereum Intro
 
Front-End Development for dApps on Tezos
Front-End Development for dApps on TezosFront-End Development for dApps on Tezos
Front-End Development for dApps on Tezos
 

Similar to Segregated witness and bitcoin scaling debate

Introduction to Segwit
Introduction to SegwitIntroduction to Segwit
Introduction to SegwitPriyab Satoshi
 
Blockchain (and Bitcoin)
Blockchain (and Bitcoin) Blockchain (and Bitcoin)
Blockchain (and Bitcoin) Nitin Jain
 
Bitcoin Decision Point - April 2017
Bitcoin Decision Point - April 2017Bitcoin Decision Point - April 2017
Bitcoin Decision Point - April 2017Jeff Garzik
 
Blockchain & Cryptocurrencies Intro - July 2017
Blockchain & Cryptocurrencies Intro - July 2017Blockchain & Cryptocurrencies Intro - July 2017
Blockchain & Cryptocurrencies Intro - July 2017🔗Audrey Chaing
 
Bitcoin Explained
Bitcoin ExplainedBitcoin Explained
Bitcoin ExplainedAlex Sousa
 
Bitcoin and the future of cryptocurrency
Bitcoin and the future of cryptocurrencyBitcoin and the future of cryptocurrency
Bitcoin and the future of cryptocurrencyBen Hall
 
Ethereum Blockchain with Smart contract and ERC20
Ethereum Blockchain with Smart contract and ERC20Ethereum Blockchain with Smart contract and ERC20
Ethereum Blockchain with Smart contract and ERC20Truong Nguyen
 
OVERVIEW ON CRYPTOCURRENCY
OVERVIEW ON CRYPTOCURRENCYOVERVIEW ON CRYPTOCURRENCY
OVERVIEW ON CRYPTOCURRENCYdrrammohan
 
Blockchain, bitcoin, ethereum and ICOs
Blockchain, bitcoin, ethereum and ICOsBlockchain, bitcoin, ethereum and ICOs
Blockchain, bitcoin, ethereum and ICOsBogdan Fiedur
 
Blockchain Fundamentals - Day 3 - PoW consensus and ICOs (new style)
Blockchain Fundamentals - Day 3 -  PoW consensus and ICOs (new style)Blockchain Fundamentals - Day 3 -  PoW consensus and ICOs (new style)
Blockchain Fundamentals - Day 3 - PoW consensus and ICOs (new style)Chhay Lin Lim
 
Report on Bitcoin- The cryptocurrency (November 2017)
Report on Bitcoin- The cryptocurrency (November 2017)Report on Bitcoin- The cryptocurrency (November 2017)
Report on Bitcoin- The cryptocurrency (November 2017)AJSH & Co LLP
 
Paradigm shift: from the bitcoin Blockchain to Networked Computing
Paradigm shift: from the bitcoin Blockchain to Networked ComputingParadigm shift: from the bitcoin Blockchain to Networked Computing
Paradigm shift: from the bitcoin Blockchain to Networked Computingkumar641
 
blockchain and iot: Opportunities and Challanges
blockchain and iot: Opportunities and Challangesblockchain and iot: Opportunities and Challanges
blockchain and iot: Opportunities and ChallangesChetan Kumar S
 
Bitcoin for programmers - part 1 version 2
Bitcoin for programmers - part 1 version 2Bitcoin for programmers - part 1 version 2
Bitcoin for programmers - part 1 version 2Wojciech Langiewicz
 
A Primer on Blockchain and its Potential, with a Focus on the GCC
A Primer on Blockchain and its Potential, with a Focus on the GCCA Primer on Blockchain and its Potential, with a Focus on the GCC
A Primer on Blockchain and its Potential, with a Focus on the GCCZeyad T. Al Mudhaf
 
An in depth presentation of Cryptocurrency.
An in depth presentation of Cryptocurrency.An in depth presentation of Cryptocurrency.
An in depth presentation of Cryptocurrency.SanjeebSamanta1
 

Similar to Segregated witness and bitcoin scaling debate (20)

Introduction to Segwit
Introduction to SegwitIntroduction to Segwit
Introduction to Segwit
 
Blockchain (and Bitcoin)
Blockchain (and Bitcoin) Blockchain (and Bitcoin)
Blockchain (and Bitcoin)
 
Bitcoin Decision Point - April 2017
Bitcoin Decision Point - April 2017Bitcoin Decision Point - April 2017
Bitcoin Decision Point - April 2017
 
Blockchain & Cryptocurrencies Intro - July 2017
Blockchain & Cryptocurrencies Intro - July 2017Blockchain & Cryptocurrencies Intro - July 2017
Blockchain & Cryptocurrencies Intro - July 2017
 
Bitcoin Explained
Bitcoin ExplainedBitcoin Explained
Bitcoin Explained
 
Bitcoin and the future of cryptocurrency
Bitcoin and the future of cryptocurrencyBitcoin and the future of cryptocurrency
Bitcoin and the future of cryptocurrency
 
Ethereum Blockchain with Smart contract and ERC20
Ethereum Blockchain with Smart contract and ERC20Ethereum Blockchain with Smart contract and ERC20
Ethereum Blockchain with Smart contract and ERC20
 
OVERVIEW ON CRYPTOCURRENCY
OVERVIEW ON CRYPTOCURRENCYOVERVIEW ON CRYPTOCURRENCY
OVERVIEW ON CRYPTOCURRENCY
 
Blockchain, bitcoin, ethereum and ICOs
Blockchain, bitcoin, ethereum and ICOsBlockchain, bitcoin, ethereum and ICOs
Blockchain, bitcoin, ethereum and ICOs
 
Bitcoin
BitcoinBitcoin
Bitcoin
 
BITCOIN EXPLAINED
BITCOIN EXPLAINEDBITCOIN EXPLAINED
BITCOIN EXPLAINED
 
Bitcoin 2.0
Bitcoin 2.0 Bitcoin 2.0
Bitcoin 2.0
 
Blockchain Fundamentals - Day 3 - PoW consensus and ICOs (new style)
Blockchain Fundamentals - Day 3 -  PoW consensus and ICOs (new style)Blockchain Fundamentals - Day 3 -  PoW consensus and ICOs (new style)
Blockchain Fundamentals - Day 3 - PoW consensus and ICOs (new style)
 
Report on Bitcoin- The cryptocurrency (November 2017)
Report on Bitcoin- The cryptocurrency (November 2017)Report on Bitcoin- The cryptocurrency (November 2017)
Report on Bitcoin- The cryptocurrency (November 2017)
 
Bitcoin
BitcoinBitcoin
Bitcoin
 
Paradigm shift: from the bitcoin Blockchain to Networked Computing
Paradigm shift: from the bitcoin Blockchain to Networked ComputingParadigm shift: from the bitcoin Blockchain to Networked Computing
Paradigm shift: from the bitcoin Blockchain to Networked Computing
 
blockchain and iot: Opportunities and Challanges
blockchain and iot: Opportunities and Challangesblockchain and iot: Opportunities and Challanges
blockchain and iot: Opportunities and Challanges
 
Bitcoin for programmers - part 1 version 2
Bitcoin for programmers - part 1 version 2Bitcoin for programmers - part 1 version 2
Bitcoin for programmers - part 1 version 2
 
A Primer on Blockchain and its Potential, with a Focus on the GCC
A Primer on Blockchain and its Potential, with a Focus on the GCCA Primer on Blockchain and its Potential, with a Focus on the GCC
A Primer on Blockchain and its Potential, with a Focus on the GCC
 
An in depth presentation of Cryptocurrency.
An in depth presentation of Cryptocurrency.An in depth presentation of Cryptocurrency.
An in depth presentation of Cryptocurrency.
 

Recently uploaded

Advancing Engineering with AI through the Next Generation of Strategic Projec...
Advancing Engineering with AI through the Next Generation of Strategic Projec...Advancing Engineering with AI through the Next Generation of Strategic Projec...
Advancing Engineering with AI through the Next Generation of Strategic Projec...OnePlan Solutions
 
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASEBATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASEOrtus Solutions, Corp
 
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...kellynguyen01
 
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...ICS
 
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsUnveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsAlberto González Trastoy
 
Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)OPEN KNOWLEDGE GmbH
 
cybersecurity notes for mca students for learning
cybersecurity notes for mca students for learningcybersecurity notes for mca students for learning
cybersecurity notes for mca students for learningVitsRangannavar
 
Asset Management Software - Infographic
Asset Management Software - InfographicAsset Management Software - Infographic
Asset Management Software - InfographicHr365.us smith
 
DNT_Corporate presentation know about us
DNT_Corporate presentation know about usDNT_Corporate presentation know about us
DNT_Corporate presentation know about usDynamic Netsoft
 
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...gurkirankumar98700
 
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...soniya singh
 
EY_Graph Database Powered Sustainability
EY_Graph Database Powered SustainabilityEY_Graph Database Powered Sustainability
EY_Graph Database Powered SustainabilityNeo4j
 
why an Opensea Clone Script might be your perfect match.pdf
why an Opensea Clone Script might be your perfect match.pdfwhy an Opensea Clone Script might be your perfect match.pdf
why an Opensea Clone Script might be your perfect match.pdfjoe51371421
 
Hand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptxHand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptxbodapatigopi8531
 
The Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdf
The Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdfThe Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdf
The Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdfkalichargn70th171
 
chapter--4-software-project-planning.ppt
chapter--4-software-project-planning.pptchapter--4-software-project-planning.ppt
chapter--4-software-project-planning.pptkotipi9215
 
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...MyIntelliSource, Inc.
 
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed DataAlluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed DataAlluxio, Inc.
 
The Evolution of Karaoke From Analog to App.pdf
The Evolution of Karaoke From Analog to App.pdfThe Evolution of Karaoke From Analog to App.pdf
The Evolution of Karaoke From Analog to App.pdfPower Karaoke
 

Recently uploaded (20)

Advancing Engineering with AI through the Next Generation of Strategic Projec...
Advancing Engineering with AI through the Next Generation of Strategic Projec...Advancing Engineering with AI through the Next Generation of Strategic Projec...
Advancing Engineering with AI through the Next Generation of Strategic Projec...
 
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASEBATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
 
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
 
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
 
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsUnveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
 
Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)
 
cybersecurity notes for mca students for learning
cybersecurity notes for mca students for learningcybersecurity notes for mca students for learning
cybersecurity notes for mca students for learning
 
Asset Management Software - Infographic
Asset Management Software - InfographicAsset Management Software - Infographic
Asset Management Software - Infographic
 
DNT_Corporate presentation know about us
DNT_Corporate presentation know about usDNT_Corporate presentation know about us
DNT_Corporate presentation know about us
 
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
 
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
 
EY_Graph Database Powered Sustainability
EY_Graph Database Powered SustainabilityEY_Graph Database Powered Sustainability
EY_Graph Database Powered Sustainability
 
why an Opensea Clone Script might be your perfect match.pdf
why an Opensea Clone Script might be your perfect match.pdfwhy an Opensea Clone Script might be your perfect match.pdf
why an Opensea Clone Script might be your perfect match.pdf
 
Hand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptxHand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptx
 
The Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdf
The Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdfThe Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdf
The Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdf
 
chapter--4-software-project-planning.ppt
chapter--4-software-project-planning.pptchapter--4-software-project-planning.ppt
chapter--4-software-project-planning.ppt
 
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
 
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed DataAlluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
 
The Evolution of Karaoke From Analog to App.pdf
The Evolution of Karaoke From Analog to App.pdfThe Evolution of Karaoke From Analog to App.pdf
The Evolution of Karaoke From Analog to App.pdf
 
Call Girls In Mukherjee Nagar 📱 9999965857 🤩 Delhi 🫦 HOT AND SEXY VVIP 🍎 SE...
Call Girls In Mukherjee Nagar 📱  9999965857  🤩 Delhi 🫦 HOT AND SEXY VVIP 🍎 SE...Call Girls In Mukherjee Nagar 📱  9999965857  🤩 Delhi 🫦 HOT AND SEXY VVIP 🍎 SE...
Call Girls In Mukherjee Nagar 📱 9999965857 🤩 Delhi 🫦 HOT AND SEXY VVIP 🍎 SE...
 

Segregated witness and bitcoin scaling debate

  • 1. Pisa Bitcoin Meetup Segregated Witness and Bitcoin Scaling Debate Diego Dal Canto Navacchio 24 Luglio 2017
  • 2. Credits • Coindesk • Cointelegraph • Bitcoin Magazine • We use coin • Bitcoin wiki
  • 3. Agenda • Bitcoin transactions • Bitcoin Improvement Proposals • Segregated witness • The scaling debate
  • 4.
  • 5.
  • 6.
  • 9. There are no bitcoins, only records of bitcoin transactions Instructions on how to unlock the input, only the owner can generate it The sender creates a new lock that only the receiver can unlock proving that he owns the private key corresponding to his public key and generating a new scriptSig
  • 10. Stack Script Description Empty. <sig> <pubKey> OP_DUP OP_HASH160 <pubKeyHash> OP_EQUALVERIFY OP_CHECKSIG scriptSig and scriptPubKey are combined. <sig> <pubKey> OP_DUP OP_HASH160 <pubKeyHash> OP_EQUALVERIFY OP_CHECKSIG Constants are added to the stack. <sig> <pubKey> <pubKey> OP_HASH160 <pubKeyHash> OP_EQUALVERIFY OP_CHECKSIG Top stack item is duplicated. <sig> <pubKey> <pubHashA> <pubKeyHash> OP_EQUALVERIFY OP_CHECKSIG Top stack item is hashed. <sig> <pubKey> <pubHashA> <pubKeyHash> OP_EQUALVERIFY OP_CHECKSIG Constant added. <sig> <pubKey> OP_CHECKSIG Equality is checked between the top two stack items. true Empty. Signature is checked for top two stack items. Transaction confirmation
  • 11. Transaction malleability • The ability of someone to change (mutate) unconfirmed transactions without making them invalid, which changes the transaction’s txid, making child transactions invalid. • Although the modifications are non-functional—so they do not change what inputs the transaction uses nor what outputs it pays—they do change the computed hash of the transaction. • Since each transaction links to previous transactions using hashes as a transaction identifier (txid), a modified transaction will not have the txid its creator expected. • This isn’t a problem for most Bitcoin transactions which are designed to be added to the block chain immediately. But it does become a problem when the output from a transaction is spent before that transaction is added to the block chain.
  • 12. Segregated witness • Signatures are not transmitted as part of the transaction • They are transmitted alongside the transaction in a separate data structure: • Nodes that wish to validate transactions can chose to do so (download and store the witness repository) • Nodes that do not wish to validate transactions can choose to do so as well (do not need to download data) • Discovered in 2015 that this could be implemented as a Soft Fork by Bitcoin Core and Blockstream developer Pieter Wuille
  • 13. Benefits of Segregated witness • Separations of signatures from transactions fixes transaction malleability • Once a transaction is included in a block, the signature is irrelevant (can save up to 75% of blockchain) • Miners will want to get transactions with witness in order to maintan consistency, nodes instead can better scale the blockchain since signatures only need to be validated when a transaction is first presented for inclusion on the blockchain. No need to carry it around by nodes that are not interested in validating the transaction further • Up until now block version and transaction version have been used, not the script language version. Segwith introduces the ability to upgrade the scripting language (script versioning) enabling new features like confidential transaction adding a fully fungible transaction layer
  • 14. Protocol upgrade, soft and hard forks In a pure distributed system no actor has the full control • Users (give value/use) • Miners (chose which coin to mine) • Developers (guide the debate) • Nodes (decide which client to run) • Exchanges (create markets) Set of rules Example: Old Blocksize limit 1 MB New Blocksize limit 0.5 MB • Old versions accept new ones • Protocol upgrade Example: Blocksize limit 1 MB New Blocksize limit 2 MB • Old versions do not accept new ones • Protocol replacement • Currency split risk
  • 15. A system designed to be hard to control
  • 16. How to upgrade a software in a fully distributed network? BIP = Bitcoin Improvement Proposal • BIP141 = The current implementation of Segregated Witness. BIP141 is activated through the activation method defined by BIP9. This means that 95% of all blocks within a two-week period need to include a piece of data: “bit 1.” This indicates that a miner is ready for the upgrade. As such, SegWit would be activated if the vast majority of miners are ready for it. • BIP148 = User Activated Soft Fork, On August 1st, anyone running Bitcoin software that implemented BIP148 will start rejecting all blocks that do not include bit 1, the SegWit signalling data. If BIP148 is not supported by a majority of miners (by hash power), Bitcoin’s blockchain could split in two. In that case, there would effectively be two types of Bitcoin, where one activated BIP148 and the other did not. This may resolve over time — or it may not • SegWit2x = Is the scaling agreement reached by a number of Bitcoin companies and over 80 percent of miners (by hash power), drafted just before the Consensus 2017 Conference. SegWit2x would only require 80 percent of support, moreover its readiness would be signaled using another piece of activation data: “bit 4” instead of “bit 1.” • BIP91 = Is a proposal by engineer James Hilliard which was specifically designed to prevent a coin-split by making SegWit2x and BIP148 compatible. Upon activation of BIP91, all BIP91 nodes will reject any blocks that do not signal support for SegWit through bit 1. As such, if a majority of miners (by hash power) run BIP91, the longest valid Bitcoin chain will consist of SegWit-signaling blocks only, and all regular BIP141 SegWit nodes will activate the protocol upgrade. Where BIP91 differs from BIP148 is that it doesn’t have a set activation date, but is instead triggered by hash power. BIP91 nodes will reject any non-SegWit signalling blocks if, and only if, 80 percent of blocks first indicate within two days that’s what they’ll do. This indication is done with bit 4. If this is done before August 1st, it’s also compatible with BIP148, since BIP148 nodes would reject non-bit 1 blocks just the same.
  • 17.
  • 18.
  • 19.
  • 20.
  • 21. How consensus is measured
  • 22. Developes The corporate takeover of bitcoin in one commit
  • 23. Users / Bitcoin Companies A P2P protocol for cheap transactions, seriously?
  • 25. Node clients Bitcoin Unlimited Overview Bitcoin Unlimited is a fork of the Bitcoin Core reference client with the intention of providing a voice to all stakeholders in the Bitcoin ecosystem. The project seeks to remove existing practical barriers to stakeholders expressing their views in these ways. Protocol Scaling Plan • BUIP001 Fixed block limit made obsolete • BU follows the blockchain with most PoW as per the original Nakamoto Consensus • Separation of the mining block size (default 1MB) from the non-mining block acceptance size (default 16MB) • Block size limits and acceptance depth individually configurable Bitcoin Core Overview Bitcoin Core (formerly Bitcoin-Qt) is the third Bitcoin client, developed by Wladimir J. van der Laan based on the original reference code by Satoshi Nakamoto. It has been bundled with bitcoind since version 0.5. Bitcoin-Qt has been rebranded to Bitcoin Core since version 0.9.0.54 Protocol Scaling Plan SegWit + Lightning Network, Schnorr signatures, MAST. Bitcoin UASF Overview Clone of Bitcoin Core for user activation of the Segwit softfork