The document discusses the concept of "Layer 2" scaling solutions for Bitcoin. It provides background on how Bitcoin has changed since its inception, including the emergence of block explorers and mining pools. It then defines Layer 2 as building additional services on top of Bitcoin to improve scalability and usability, without requiring changes to the Bitcoin protocol. Examples of Layer 2 solutions mentioned include simplified payment verification and various block explorer APIs that lightweight wallets can use to access blockchain data without running a full node. The document argues that Layer 2 does not reduce security or decentralization and allows Bitcoin to scale in a way that is transparent to users.
2. Overview
● Part 1: The history of Bitcoin scaling
○ This issue has transcended technology and has become political
● Part 2: All about “Layer 2”
○ Has already emerged
● Part 3: Layer 2 Live Demo
4. When satoshi was around... (2009 to mid 2010)
● There was no price because there were no exchanges
● There were no block explorers
● The entire network used full node wallets
● System resources for installing and running a wallet compare to other apps.
After Satoshi completely left… (late 2010)
● The first 3rd party wallet was developed
● The entire blockchain reached 1GB in size.
● The price reached $1 per BTC
● The first mining pool started
5. “The Scaling Problem”
● Bitcoin as Satoshi wrote it only works if each node keeps the entire
blockchain around for verification purposes.
● It doesn’t take an Einstein to see that this is going to eventually cause
problems.
● Proto-Blocksize debate with two camps
○ “This can never be fixed, bitcoin is stupid, all bitcoiners are idiots”
○ “This can be fixed through engineering and it really not a problem”
6. What is “Layer 2”?
● The specific term is not attributable to anyone
● 1) Build Bitcoin, 2) … 3) Profit
○ #2 is Layer 2
● All forms of Layer 2 are transparent to the wallet user
BTC
Network
Wallet
Layer 2
7. Two Layer 2 philosophies
● Minimal changes to the protocol back end
○ These people believe Satoshi got it right
○ Instead of redesigning the consensus protocol, let’s hide the blockchain away on remote
servers so users are never bothered by it
○ “Big Blockist” - Conservative - Keep it the way it is
○ “Emergent Layer 2”
● Maximal changes to the protocol back end
○ These people believe Satoshi got it wrong
○ Essentially redesigning everything about how nodes/transactions/timestamping work
○ “Small Blockist” - Liberal - Constant improvement
○ Lightning Network, etc.
8. “SPV” The first Layer 2
● The Bitcoin whitepaper, by Satoshi Nakamoto, January, 2009
○ “Simplified Payment Verification” paragraph 8 on page 5
● Satoshi foresaw a need for users to send and receive bitcoin without storing
the ever growing blockchain locally.
● Often referred to as “client only mode”
9. Why SPV is/was a crappy Layer 2
● Written in the whitepaper as a “Layer 1 feature”.
○ No mention of protocol or 3rd party wallets. No “Layer 2”
● Instead of downloading full blocks, it would only download headers
○ Still had to sync with network
● Described way of verifying transaction validity by using Merkle Roots.
○ I think Satoshi was a trained mathematician.
● Problems:
○ Written as a solution using circa-2009 bitcoin technology (solution before problem)
○ Admits in roundabout way that this scheme is vulnerable to attack.
● Back then this was a good solution, but today we can do better
11. “Layer 1” - Installations of bitcoind or alternate impl.
● ~6,000 nodes
● Each node has the
full blockchain
● Each node is
anonymous
● Validity is based on
math only
● One of these orange
dots can be either
an honest node or a
dishonest node
(Sybil Attack)
12. What is a Block Explorer?
● A Block explorer is
a full node
● Contains a web
interface for viewing
partial blockchain
data
● Also a JSON API for
building wallets on
top of
Blockchain.info
= Single Server
= HTTPS JSON API
= bitcoind full node
13. “Layer 2”
● ~35 nodes
● Each node is
connected to the
Layer 1 network
● Validity is not based
on math, but rather
on reputation
● SSL certificate
ensures against
Sybil attacks
Toshi.io
Blockr.io
BlockCypher
BlockSeer
Blockchain.info
= Single Server
= HTTPS JSON API
= bitcoind full node
14. “Layer 2”
● Lightweight wallets
connect to Layer 2
● Full Node wallets
connect to Later 1
● Since you can’t trust
anonymous peers, you
have to verify data they
give you, therefore you
need the full blockchain
● Lightweight wallets don’t
mathematically verify
anything, they instead
cross check other
Layer 2 providers
Blockr.io
BlockCypher
BlockSeer
Blockchain.info
Lightweight
walletFull node
wallet
Toshi.io
15. Which Wallet do I use?
● You are a libertarian
● You are accepting bitcoin at high volume
(exchange, casino, etc)
● You can afford to spare some computer
resources (hard drive space, RAM,
bandwidth)
● You are an online Pablo Escobar who
needs maximum privacy
● You are a hipster who like using retro
software
Full node
wallet
Lightweight
wallet
● You are a regular person
16. Verifying Layer 2 - each dialect is slightly different
Chain.So
Blockchain.info
BitpayInsight
https://blockchain.info/unspent?active=1PZ3Ps9RvCmUW1s1rHE25FeR8vtKUrhEai
17. Verifying Layer 2 - each dialect is slightly different
Chain.So
Blockchain.info
https://chain.so/api/v2/get_tx_unspent/btc/1PZ3Ps9RvCmUW1s1rHE25FeR8vtKUrhEai
BitpayInsight
18. Verifying Layer 2 - each dialect is slightly different
Chain.So
Blockchain.info
BitpayInsight
http://insight.bitpay.com/api/addr/1PZ3Ps9RvCmUW1s1rHE25FeR8vtKUrhEai/utxo?noCache=1
19. “Layer 2 Kernel”
5 different APIs,
5 times as much work to
implement
Not good :(
Lightweight
wallet
Blockchain.info
BlockCypher
BlockSeer
Toshi.io
Blockr.io
20. “Layer 2 Kernel”
moneywagon - Open source “layer 2 kernel”, or
“universal block explorer client library”
Moneywagon
Lightweight
wallet
Blockchain.info
BlockCypher
BlockSeer
Toshi.io
Blockr.io
21. Layer 2 forks
● In the case of a network
fork, some Layer 2 nodes
will be split just like the
underlying Layer 1 network
Toshi.io
(running XT)
Big blockist
Lightweight wallet
Full node wallet
(running XT)
Blockchain.info
(running XT)
BlockCypher
(running core)
BlockSeer
(running core)
Blockr.io
(running core)
Full node wallet
(running core)
Small blockist
Lightweight wallet
● Full node wallets choose
which side they are on by
the software they run.
● Lightweight wallets can choose
which side they are on by
choosing which Layer 2
services they interact with
Exchange
22. Is Layer 2 secure?
● Layer 2 is essentially the web
○ To assert Layer 2 is insecure is to argue the web is insecure.
○ DDOS protection? Same as any other website
○ Load balancing? Same as any other website
○ Privacy/Anonymity? Through Tor just like any other website.
23. Isn’t Layer 2 centralization?
If there was only one block explorer API in existence, then yes
but there are many, and it’s pretty easy to make your own Layer 2 Node.
Install Bitpay Insight on an Amazon VPS ($10/month), and register a domain
name + SSL cert.