Beruflich Dokumente
Kultur Dokumente
Bitcoin
Scott Driscoll
@scottdriscoll www.scottdriscoll.me
21.co
Overview
Currency Systems
- Metacoins, Colored coins & Sidechains
- Alternatives to Proof-of-Work
- Proof-of-Stake
- Permissioned Blockchains
- Performance & Capacity
- Privacy
- Stability (MakerDAO)
Beyond Currency
- Ethereum Decentralized Computing
- Prediction Markets (Augur)
- IoT & DAOs: Decentralized Autonomous
Organizations
- Storage (Storj & IPFS)
- Identity & Reputation
Coinmarketcap.com
$10,000,000!!!
(anyone interested?)
ScottsScamCoin
Total Units:
1,000,000
New
ScottsScamCoin
market cap
Transaction Data
CNTRPRTY...................
Multisig_1_of_3.......
1bb4872938...
44782ba27d...
927bc21287a...
Counterparty
flag detected
Buy order for 10
shares ACME,
Inc at 3 BTC
CounterParty
software scans and
interprets Bitcoin
blockchain
= car
Transaction
Output: 18ab32...
Value: 2 BTC
Initial Assignment
Transaction
Output: 1b3bJrS...
Value: 10 BTC
Output 1b3bJrS...
10 BTC =
1000 Shares ACME, Inc
Transaction
Output: 191b27...
Value: 8 BTC
800 Shares ACME, Inc
Metacoin Concerns
Security
If .0001 BTC = $1B,
security unbalanced
Lightweight Clients
Difficult to prove asset
ownership without full
copy of blockchain
SPV Proof
Initial Assignment
Transaction
Output: 1b3bJrS...
Value: 10 BTC
Output 1b3bJrS...
10 BTC =
1000 Shares ACME, Inc
= car
SPV Proof
SPV Proof
Transaction
Output: 11aa32...
Value: 8 BTC
800 Shares ACME, Inc
Blockchain
Transaction
Output: 191b27...
Value: 8 BTC
800 Shares ACME, Inc
Terminology
Metacoins: projects that build on top of Bitcoin
Security
Few miners = low
barrier to attack
Distribution
How to raise money,
fairly distribute coins?
Crowdsale or IPO
(Initial Public Offering)
Counterparty Tokens
XCP
Sidechain Blockchain
Fancy
coin
Sidechain Transaction
Input: SPV Proof of
locked Bitcoins
Sidechain Transaction
Standard In-chain transfer
Bitcoin Transaction
Input: SPV proof of
Locking on Sidechain
Fancy
coin
Sidechain Transaction
Output: Locking Script
Majority want to
attack, so
everyone attacks
attack
Majority want to
attack, so
everyone attacks
retreat
retreat
attack
Majority want to
attack, but not
everyone gets
the message
Charlie
5 Bitcoins
Invalid
(Bobs balance empty)
2nd
Bookkeepers
Alice
Alice
Alice
Alice
Alice
Alice
Alice
Votes
first Charlie first
first Charlie first
first Charlie first
first
first
first
first
Proof-of-Work Centralization
Hashrate percentage by
mining pool (Feb 2016)
Blockchain.info/pools
Proof-of-Work Cost
Mining power: 300W / terahash (1e12)
Current mining rate: 1e18 terahashes / s
Overall power: 300W/th * (1e18 th/s) =
300
Megawatts
=
7% Niagara Falls
Primecoin
Find special primes for
science
FoldingCoin
Medical problems
Gridcoin
Scientific problems
Proof-of-Stake Consensus
Bitcoin Proof-of-Work:
h(prev_block_id, transactions, none) < d?
multiple blocks at
same time unlikely,
quickly resolve
Less centralization
No specialized
hardware. No mining
pools.
Better security
Borrowing 51% of
currency more
expensive than mining
rigs
Goods shipped
Branch B
?
Branch A
Paid for with bribes
?
Branch A
Paid for with bribes
K
Preselect the miner of block
K much before block K
8ba328
Combo
-
Blockchain: anonymous
trustless
open
distributed
decentralized
database
Delegated Proof-of-Stake
delegates
New txn
Immutable history
Automated Interaction
Transparency
Provable inventory visibility
Trustless automated
interaction through Smart
Contracts, automated
contracts
Consortium of 42
financial companies
Customizable consensus
-
Corda
-
Built on decades of
research
Vastly better
performance over
Bitcoin
Existing distributed
database ideas +
blockchain ideas
(cryptography,
immutability, byzantine
attack resilience)
Possible
compromises
Decentralization,
anonymity, openness?
Tendermint
(Proof-of-Stake)
Rounds
Block valid
deposits
Final approval
validators
Ripple
Rounds
1bc, 887, 33a, d5a
Pass on transactions
agreed on by at least
887, 33a, d5a, 66a
25% of validators
Pass on transactions
agreed on by at least 887, 33a, d5a
80% of validators
Blockchain Metrics
Requirements
Performance
Private or open
Transactions / second
Anonymous
Censorship resistance
Storage
Decentralized
1 million writes / s
Terabyte data
storage thru
sharding
Add public /
private key crypto,
immutability
Built-in powerful
querying
Openness,
censorship,
Byzantine attacks?
https://www.ascribe.io/
394729
Fingerprint robust to
scaling, cropping & other
manipulations
Create fingerprints of art
Alice
5 BTC
Inputs
Txn 228
Txn 91a
Outputs
1b3827
1b993a (change?)
Exchange
2 BTC for $800 USD
KYC Know Your Customer
Alice McReal
Address: 123 Main St.
Charlie ->
Charlie
Store Purchase
5 BTC for laptop
Shipping address:
Charlie Murphy
Address: 456 Main St.
Privacy Motivation
Downside: impedes crime investigations, terrorism prevention
Business
negotiations
Knowledge is power!
Predatory pricing
Personal
Attack if competition
is low on cash
Insurers or employers
use credit against you
Long-lived data
Gov and biz 10 years
later may not be nice
Fungibility
Is every $1 = $1?
5 BTC
Inputs
Txn 228
Txn 91a
Outputs
1b3827
1b993a
Independent operation
Outputs, not transactions
Mixing outputs from
different times
Amount obfuscation
564 = 500 + 60 + 4, mix
each with other equal
outputs
Alice
Output: 1a5637...
...
Unlocking /
Spending Txn
Pub key
Private key
Output: 1a5637...
188db3
1938ba...
1z4Fe3...
1p09sd...
...
Input: ...
Signature: ...
...
Sig maker:
f(private key, txn)
Decoy
Decoy
Decoy
Decoy
Alice
Random nums
x1
x2
x3
x4
Output: 1a5637...
188db3
1938ba...
1z4Fe3...
1p09sd...
...
Decoy
Decoy
Decoy
Decoy
Stealth Addresses
5 BTC
Inputs
Txn 228
Txn 91a
Outputs
1b3827
1b993a
Stealth Addresses
Txn with Stealth
address
Output: 1a5637...
...
Output: 2783b...
Data: 9382ba3
random
Output: 18823b...
...
Output: 1z8Ye4...
...
1a5637
18823b...
1z8Ye4...
Bob addresses
Regular Bitcoin transactions with new
addresses for each transaction
+
Static Stealth
PubKey address
18372bh
Private key
27462a
Txn
Private
Key
Alice
Private colors
+
Public shared color
=
Mix private + public
Swap mixes
+
Mix with original private colors
=
Shared secret color
Stealth Addresses
18372bh
PubKey address
27462a
Private key
Shared secret
Onetime Public
key
Output: 2783b...
Data: 9382ba3
Public color
+
Shared secret
382749
sender
- No coordination
- Requires scanning
blockchain
- Can be outsourced
without full private
key
Zero Knowledge
Transaction Checker
or
Account
38fuels9
3928343
293044a
48ahk3w...
4938das...
...
Balance
8837ab
392jfkd...
392jdkf...
00392s...
Djfk323...
...
Sudoku Puzzle
Solution
H(5,6,1,8,4,7,9,2,3) = 3827
Zerocash
Hashed
Transaction
Unencrypted
Transaction
To: Bob
From: Alice
Amount: 5 BTC
Wash
To: 39283a
From: 8umd3...
Amount: 37dkw3...
Serial: 37dijek93...
Spent serial
numbers
9382
2913...
4432...
...
Zerocash Concerns
Performance
New Crypto!
Creation difficult 20
seconds on laptop
Already possible in
Bitcoin!
Gigabytes of data
needed
Trustless information
sale performed in Feb
2016 *
Verification fast
* https://bitcoincore.org/en/2016/02/26/zero-knowledge-contingent-payments-announcement/
Zerocash Concerns
Performance
Verification is fast
New Crypto
2 BTC
Monday = $800
Wed = $600!
Result:
- Price posted in USD
- Any BTC
immediately
converted to USD
Rental Agreement
- Deposit 2 BTC ($800)
- BTC drops
- Deposit now $600!
Volatility
-
Pricing difficult
Disincentivizes holding
Complicates Smart Contracts
https://dgx.io
Token = 1g gold
Auditor 1 Digital
Signature
Auditor 2 Digital
Signature
Vault in Singapore
https://tether.to/
= $1 USD
Maintaining Peg
Digix / Tether
Always willing to buy / sell at
peg point
Collateral
Real gold or USD equivalent
provably available for
exchange (or at least
according to auditors)
NuBits
https://nubits.com/
= $1 USD
https://bitshares.org/technology/
price-stable-cryptocurrencies/
https://makerdao.com/
$1 collateral
$.50 collateral
$200 = 1 BTC!
Assume Exchange Rate
$400 = 1 BTC
$1 = .0025 BTC
Goal: StableCoin = $1
.0025
Stable
coin
SmartContract
https://bitshares.org/technology/
price-stable-cryptocurrencies/
https://makerdao.com/
- Insurance for
black swan
Crashes
- Diverse
collateral via
custodians
$1.50 collateral
$1 collateral
.00375
Force close when
collateral approaches
peg
Stable
coin
SmartContract
Why Participate?
Margin Trading
Downsides
Exchange Rate
Trader
1 BTC = $1
1.5 BTC
- Bitcoin locked up
Enter contract
- Fees
Exchange rate
goes up 100%
Stable
coin
1 SC (stable coin)
1.5 BTC
1 BTC
1.5 BTC
.5 BTC & 1 SC
1.5 BTC
1 BTC = $2
SmartContract
2.0 BTC = $4
Costs
Collateral
Collateral is always
available
Arbitrage
Short and long-term
arbitrage opportunities
Voting
Betting
Blockchain technology:
enabling trustless interaction
Social networks
Entire organizations
or governments
Prediction markets
Asset tracking
Bitcoin
No loops, convenient memory,
splitting outputs, random
numbers, transaction updates
Meta- and colored-coins
untenable on light clients
New Systems
Hard to bootstrap
Massive effort to get new
system adoption, not useful
until widely used
Contracts
Programs that run on
Ethereum
Loops, unlimited data
storage, send & receive
money, talk to other
contracts
Ether
Built-in currency
Fuel / fee to run
contracts
Abbreviation: eth
Ethereum Properties
Goal: unstoppable
applications
Demo
Ethereum Demos
- Send ether
- Create a contract
Token: currency, shares, game
objects
- Use another contract
- Use Ethereum-Wallet
-
https://github.com/ethereum/mist/releases
Mist
- Full Dapp (Decentralized app)
explorer
- Coming later!
1968
20 miles
200m
Decentralized
Hopes to avoid
regulatory shutdown
that happened to
InTrade
Oracles
Provide inputs from real
world about event
outcomes.
More variance in liars,
outliers are punished
Challenges
Need liquid market
unreliable if only few
participants
Sports and politics most
popular
Used for corporate
decision making, but
sometimes disliked
SmartLocks &
other hardware
controlled by
Smart Contracts
Smartlocks dont
prevent crime better
than regular locks
All about automation
No key exchange
meeting
Automated insurance /
deposit
Decentralized airbnb
rental market
https://www.youtube.co
m/watch?v=-Ht23KXic1k
The DAO
-
Ethereum Computer
-
Decentralized,
shared storage
client
farmers
Decentralized,
shared storage
client
Challenge
SJCX
Response
farmers
48723.
micro
payments
Decentralized,
shared storage
client
farmers
Location-based: http://someserver.com/foo/bar.png
Distributed, peer to
peer file system
Content-based: ipfs/Wm832k32ddj/foo/bar.png
Hash of content
https://www.youtube.com/watch?v=HUVm
ypx9HGI
Examples
1st
Altcoin
Scott.bit 192.168.1.127
ScottsBitcoinAddy
ScottsPubKey ...
Fee market to
prevent spam
Initial key has fee to
register
Must be renewed
Centralized Control
Offline: governments
Onename
https://onename.com/
Data
Bitcoin
Blockchain
Key : Hash Registry
OP_RETURN
Name1 hash
Name2 hash
Website
Twitter
Facebook
Github
Pubkey
Bitcoin address
Private Data
Date of birth
Address
Gaming_id_1
Employer
Real person
Gaming
http://identi.fi/
Bob
2nd degree of Mary
Mary
Connection Message
Jane is in my Web-of-Trust
(signature of Janes pubkey)
Connection Message
Bob is in my Web-of-Trust
(signature of Bobs pubkey)
Rating Message
Jane is a 9/10 doctor
Rating Message
Bob is 8/10 mechanic
Marketplaces
OpenBazaar needs
ratings so people can
build trust
Oracles
Augur and many Smart
Contracts need reliable
information feeds from
real world
Voting
Need way to link to real
people.
Potential issues: could
also be used for
coercion or punishment
Summary
Summary
Decentralization Promises
- Better privacy
- Less censorship
- No 3rd party costs
- More robust systems
Not always better than Centralization
- Centralization more efficient
- Decision making & funding large groups
difficult
- Decentralized Autonomous
Organizations (DAOs) offer promise
- Thanks
Epicenter Bitcoin Podcast
Jaime Ramos