Blockchain: The Information
Technology of the Future
Melanie Swan
October 1, 2014 melanie@[Link]
[Link]
Bitcoin Meetup
Slides: [Link]
What is the Blockchain?
We should think about the blockchain as another class
of thing like the Internet – a comprehensive information
technology with tiered technical levels and multiple
classes of applications for any form of asset registry,
inventory, and exchange, including every area of
finance, economics, and money; hard assets (physical
property); and intangible assets (votes, ideas,
reputation, intention, health data, information, etc.)
– Melanie Swan, Founder, Institute for Blockchain Studies
October 1, 2014
1
Blockchain Technology
New VC investment cycle: Blockchain Tech
“The blockchain is the core innovation,”
Marc Andreessen, CoinSummit (Mar 2014)
“We want a whole sequence of companies: digital
title, digital media assets, digital stocks and bonds,
digital crowdfunding, digital insurance. If you have
online trust like the blockchain provides, you can
reinvent field after field after field.”
October 1, 2014 [Link]
2
Blockchain Technology
About Melanie Swan
Prediction Markets
Traditional Background
Quantitative Methods
New market startups:
Grouppurchase
Virtual World Valuation Blockchain Futures
October 1, 2014 [Link]
[Link] 3
Blockchain Technology
Agenda for Blockchain Futures
Blockchain Industry Status
Bitcoin Overlay Protocols (Mastercoin, Counterparty)
Next-gen Bitcoin 2.0 Platform: Ethereum
Based on information synthesized from Internet resources including
cryptocurrency expert Andreas M. Antonopoulos and Ethereum project
members (Vitalik Buterin, Gavin Wood, Stephan Tual)
October 1, 2014
4
Blockchain Technology
Blockchain Industry Status
Bitcoin
Protocol is ossifying (to be stabilized w/in 2 years for 30 years)
Harder to make any changes: 5 constituencies for consensus1
Impossible for any new [Link] to get network effect traction
BIP0032: hierarchical deterministic wallet trees, etc.
Solution 1:
Overlay Protocols (Mastercoin, Counterparty)
TREZOR
Innovation moves up-stack: ‘http/smtp to Bitcoin’s TCP/IP’ hardware wallet
Solution 2:
New Foundational Protocol (Next-gen Bitcoin 2.0 Platforms):
Turing-complete platforms like Ethereum (can run any coin)
‘A new and improved TCP/IP transport protocol’
1Miners(independent & pools), merchant processing gateways, web wallet companies (Blockchain),
October 1, 2014
exchanges (Coinbase, Bitstamp), users, hardware manufacturer s (TREZOR) 5
Blockchain Technology
Solution 1: Bitcoin Overlay Protocols
Mastercoin: financial derivatives
Colored Coins: issue your own currency on the bitcoin
network (by adding metadata to Bitcoin transaction)
Counterparty: a decentralized exchange between
[Link]
Ripple: payment, exchange, and remittance network
Direct fund transfers and foreign exchange transactions between
institutions; consensus-based ledger
BitShares: crypto-equity decentralized company stock
share exchange
Namecoin: decentralized domain name registry
Blockstream: credits (sidechain, treechain,privatechain)
October 1, 2014
6
Blockchain Technology
But still, Bitcoin Protocol shortcomings…
Applications
Bitcoin is only for currency
Functionality and security
Anonymity, fungibility, scalability
Irreversible transactions, one asset per token, no multisignature
Complete Step 3 of Satoshi Nakamoto’s original plan
1. Decentralized database, put assets into a transparent ledger,
everyone has a copy
2. Transaction system to move value between parties without
third party interaction
3. Robust scripting system; instead of just sending currency, send
contracts, smart property, anything; requires Turing
completeness, solving blockchain bloat
October 1, 2014
7
Blockchain Technology
Solution 2: Ethereum
A decentralized publishing platform featuring stateful
user-created digital contracts and a Turing-complete
contract programming language
Chain implementation & contracts with shared mining
Ether, the underlying network unit, as payment to execute
contracts as a workaround to the Halting Problem
A network for powering Ethereum-based contracts (not
exclusively for transacting monetary value)
Open-ended contracts to securely execute services including:
voting systems, domain name registries, financial exchanges,
crowdfunding platforms, company governance, self-enforcing
contracts and agreements, intellectual property, smart property,
and distributed autonomous organizations (DAOs)
October 1, 2014 [Link] 8
Blockchain Technology
What is Ethereum?
Basic infrastructure, standard, foundation, platform
Turing-complete scripting language
One-click install dev tools (mining, open transactions, wallet)
like iOS and Android apps
‘General-purpose’ cryptocurrency network
Blockchain + cryptographically-secure transactions platform
Create any custom specialized applications on top
A secure decentralized generalized transaction ledger
Next-generation cryptocurrency network
October 1, 2014 Source: Wood, Gavin. Ethereum: A Secure Decentralized Generalized Transaction Ledger: Proof of
Concept VI. [Link] 9
Blockchain Technology
$18.4m USD Ethereum Fundraising 7/2014
Initial Sale
(Sliding) 2,000 ether to 1 bitcoin or $620
60m Ether (ETH) sold ($1 USD ~ 3.25 ETH)
Vitalik Buterin, Creator
Dev offices in Berlin (expanding to ~20)
Ongoing Macroeconomic Policy
Ether has build-in increase of overall money
supply at fixed rate
40% of the amount raised in the fundraiser will
Gavin Wood, Architect
be the annual increase in money supply
Ether subunits
Finney (10-3), szabo (10-6), shannon (10-9),
babbage (10-12)
Stephan Tual, CCO
October 1, 2014 [Link] 10
Blockchain Technology
Smart Contracts: Programmable Money
Multisignature (multiparty) escrows (~Bitrated 2.0)
Financial exchanges
Savings Accounts
Domain name registries
Voting systems
Company governance
Self-enforcing contracts and agreements
Crowdfunding platforms, Prediction markets
Smart property
Intellectual property
Nationstate constitution and bill of rights
October 1, 2014
11
Blockchain Technology
Easy to Create Ethereum Contracts
October 1, 2014 [Link] 12
Blockchain Technology
Example: Smart Property
Instead of trading coin, shares, trade/buy-sell assets
Encode asset to the blockchain via unique key
Trade cars on the blockchain through a decentralized
exchange
Entire used auto market trades via blockchain
Blockchain becomes
an inventory,
tracking, and
exchange mechanism
for all hard assets
October 1, 2014
13
Blockchain Technology
Ethererum Browser ‘Mist’ Mock-up
October 1, 2014 [Link] 14
Blockchain Technology
The key benefit of Ethereum for the automated-economy is that
it is a Turing-complete VM
Ethereum Virtual Machine (EVM)
The Ethereum blockchain is…
A blockchain with a built-in programming language
The decentralized, massively replicated database in which the
current state of all accounts is stored
A consensus-based globally executed virtual machine
The Ethereum Virtual Machine (EVM) handles internal
state and computation
Large decentralized computer with millions of account objects
Each account object
Has its own internal code
Contains a 32-byte key/value database called storage
Can call or send messages to other objects
October 1, 2014 [Link]
15
Blockchain Technology
Tech Specs
Accounts stored in a Patricia tree (like a Merkle tree)
A root hash refers to the entire tree;
tree contents cannot be modified
without changing the root hash
A miner produces a new block each
minute with the latest transactions and
the root hash of the Patricia tree
representing the new state
4-tuple stored per account
[account_nonce, ether_balance, code_hash, storage_root]
account_nonce: the number of transactions sent from the account
(kept to prevent replay attacks)
ether_balance: the balance of the account
code_hash: the hash of the code if the account is a contract
storage_root: the root of another Patricia tree with the storage data
October 1, 2014 [Link]
16
Blockchain Technology
Ethereum Contract Processing
Two account object types
Contract
EOA (externally owned account)
Contract receives a message and runs the code
Ability to read/write to its own internal storage
Read the storage of the received message
Send messages to other contracts, and to itself
The contract is the code that executes the contract
Contract can interact with the world outside the EVM
EOA (externally owned account) messages the contract
Transaction is sent signed by the EOA’s private key
Advanced: SchellingCoin Universal Data Feed for derivatives
(minimal trust, two-step commitment protocol per round)
October 1, 2014 [Link]
[Link] 17
Blockchain Technology
Ethereum Contract Example
GavCoin weather bet between Bob and Alice
Automated EVM communications
Heterogeneous user security preferences
A transaction is sent, triggering forwarding contract
and EAO messaging
GavCoin is stored as
entries in the GavCoin
contract's database
The bet contract sees the
temperature and messages
the GavCoin contract to
payout (object autonomy) EAO (externally owned account)
October 1, 2014 [Link]
18
Blockchain Technology
EVM Operation / “Gas” Fees
Ethereum consensus model
Each operation executed in the EVM is simultaneously executed
by every full node
Benefit: any contract on the EVM can call any other contract at
almost zero cost
Cost: computational steps on the EVM are very expensive
Transaction fee and block operation limit
The Ethereum protocol charges a market-based fee in ether per
computational step (prevent deliberate attacks and abuse)
Floating limit on the number of operations contained in a block
Even miners who can afford to include transactions at close to
no cost are forced to charge a fee commensurate with the cost of
the transaction to the entire network
October 1, 2014 [Link]
19
Blockchain Technology
Smart Contract-DOA/DAC Progression
Smart Contract
Transaction protocol that executes the terms of a contract
Smart property: property whose ownership is controlled via the
blockchain using contracts (examples: cars, phones, houses)
Đapp (Decentralized Application)
Contract plus graphical interface for contract execution
JavaScript API ‘eth object’ interacts with Ethereum blockchain
DAO (Decentralized Autonomous Organization)
Self-enforcing smart contract (group of contracts) on a
cryptographic blockchain, multiparty complexity
(Like remittances) avoid local business jurisdictional costs
Own Ethereum address (key) and balance, send and receive
transactions, EtherScript scripts can modify their own code
October 1, 2014 [Link]
Egalitarian DAO contract explained: [Link] 20
Blockchain Technology
Decentralized Autonomous Corporations
DACs, automated markets, and tradenets
Fully-autonomous business entity
Autonomous property, example: self-owned, self-driving car
Vehicles use the tradenet to find
customers and bid for road space
Example:
[Link] (decentralized cloud storage) - Gregory Maxwell
MetaDisk: upload your data to the Storj network
DriveShare: earn money by being a part of the Storj network
Doesn’t work on bitcoin due to scripting language limitations
October 1, 2014 [Link] [Link]
[Link] 21
Blockchain Technology
Tech Specs
State Machine, Languages, and Code
Current Release
Proof of concept build - PoC5, GitHub release on July 22, 2014
with the launch of the Ether pre-sale
EVM computation via a stack-based bytecode language
Bitcoin Script, traditional assembly and Lisp
A program in EVM is a sequence of opcodes
Contract programming with high-level languages
LLL, serpent, Mutan compiles into EVM
Create contracts by sending the transaction containing the EVM
bytecode
One-click installation for everything (like mobile apps)
Wallet, Open Transactions, Ripple
October 1, 2014
22
Blockchain Technology
Classes of Ethereum Applications
Finance and Economics
BitCloud (decentralized escrow), OpenLibernet (open comms)
Debt market, futures (derivatives), savings
Voting (futarchy, Liquid Democracy)
Resource exchange: eBay, Amazon, Uber, AirBnB
Functions: authentication, validation, escrow, delivery
P2P Package Courier Service (notified as you leave location)
Real-time cost-based data center storage swapping
Loyalty, everyone’s own currency: JefCoin
Automated markets, tradenets
Economics: transactions/contracts pay-on-board network Ether
GBI (Guaranteed Basic Income) – Switzerland freicoin
October 1, 2014
23
Blockchain Technology
One use for Ethereum
Blockchain Genomics
Jurisdictional regulation prevents
individuals from having access to
their own genetic data
October 1, 2014 [Link]
[Link] 24
Blockchain Technology
[Link]: Blockchain Health
Using blockchain tech for health-related applications
1. Personal Health Record Storage
Personal health records stored and administered via blockchain
Users key-permission doctors and other parties into records
2. Health Research Commons
Aggregated personal medical records, quantified self data
commons ([Link])
3. Health Document Notary Services
Proof-of-insurance, test results, prescriptions, status, condition,
treatment, physician referrals
4. Doctor Vendor RFP Services
(Like Uber drivers) doctors and health practices bid to supply
medical services; automated bidding via tradenets
October 1, 2014 [Link]
25
Blockchain Technology
Fitbit is a demurrage (action-inciting) health currency
Demurrage Blockchain Health
Demurrage currency: built-in mechanism for
spend/action-taking
Freicoin: Switzerland GBI (Guaranteed Basic Income)
GBHA (Guaranteed Basic Health Initiative): paid out and payable
in HealthCoin; HSA (Health Savings Account) 2.0
Fitbit and smartwatch are demurrage health currencies
Health itself as a demurrage currency, a continually
auto-redistributing commodity among synapses, cells,
humans; body and brain as a DAO/DAC AI
Concept: demurrage resource-allocation + Đapp
Automatic redistribution of any commodity within a system (brain or mindfile
(potentiation, optogenetic stimulation)), body (‘health’ (oxygen, waste removal
nanobots, circulating lab-on-chips)), work team (ideas), society (liberty)
October 1, 2014
26
Blockchain Technology
[Link]: Blockchain Futures
Any venue for decentralized contracts (Đapp)
‘Bitcoin MOOCs’ (‘Kickstarter for literacy’)
Like remittances, blockchain-improved aid, microcredit,
development economics 2.0
Write Ethereum Literacy Contracts to emerging market peers
Reading, Technical, Agricultural, Vocational Literacy
New implementation of education in the blockchain
Blockchains as a public good
Wikileaks, ICANN, Wikipedia, Genomics
Uplifted to cloud from jurisdiction
October 1, 2014
27
Blockchain Technology
[Link]: Blockchain Futures
Community supercomputing time
Blockchain tech as resource allocation for science efforts
Funding markets like crypto-equity and crowdfunding for any
resource
Reputation systems (OpenBazaar), insurance
(SchellingQuake), Key recovery (wallet key protection)
Blockchain GAAP: valuation, amortization, retirement
Intangible asset encoding, tracking, and trade
Attention, intention, reputation, health, ideas
Cryptoledger, financial cryptography, consensus-based
ledger: revolutionizing concept for traditional institutions
and startups in finance and beyond
October 1, 2014
28
Blockchain Technology
Ethereum: Vitalik 9/14 Silicon Valley update
Key progress: proof of stake
Custody mining, hybrid proof-of-stake proof-of-work,
Slasher, TenderMint, dbus
Decentralized application architecture
Ethereum: account registry
Whisper: generalized P2P messaging (decentralized
Twitter)
Swarm: off-chain P2P data storage (images)
Dev priorities: fully decentralized Internet Đapps
Proof of Concept 6 (?) – consensus algorithm
Ethereum 1.0 core, optimization, security, virtual machine
UI, mobile client, DevTools, SchellingCoin (decentralized
oracle)
October 1, 2014
29
Blockchain Technology
Tech Specs
Ethereum JavaScript API: eth object
Ethereum contract execution interface is implemented as
an HTML/CSS/JS webpage
JavaScript API, eth object interacts with the Ethereum
blockchain, JavaScript API components:
[Link](from, ethervalue, to, data, gaslimit, gasprice) - sends a transaction to the desired
address from the desired address (note: from must be a private key and to must be an
address in hex form) with the desired parameters
(string).pad(n) - converts a number, encoded as a string, to binary form n bytes long
[Link] - returns the current gas price
[Link](key) - converts a private key into an address
[Link](acct, index) - returns the desired account's storage entry at the desired index
[Link] - the user's private key
[Link](acct, index, f) - calls f when the given storage entry of the given account changes
Required: Ethereum client (not regular web browser)
JavaScript API example: see source of link below
October 1, 2014 [Link]
30
Blockchain Technology
Tech Specs
Ethereum Code
Currently stable clients are available
for PoC5 (Proof of Concept #5):
AlethZero (C++)
Ethereal (Go)
pyeth (Python)
Bleeding edge PoC6 code can be
cloned from their git repositories:
[Link]
ethereum/
[Link]
[Link]
October 1, 2014 [Link] 31
Blockchain Technology
Resources
Ethereum
[Link]
[Link]
[Link]
[Link]
[Link]
[Link] (Yellow Paper)
Bitcoin
Satoshi Nakamoto’s design for the blockchain (2008)
[Link]
News
SATOSHI'S REVOLUTION: How The Creator Of Bitcoin May Have Stumbled
Onto Something Much, Much Bigger
[Link]
The Future of Bitcoin and Math-Based Digital Currencies
[Link]
October 1, 2014
32
Blockchain Technology
Image credit: M. Ghezel
Blockchain: The Information
Technology of the Future
Thank You! Questions?
Melanie Swan
October 1, 2014 melanie@[Link]
[Link]
Bitcoin Meetup
Slides: [Link]
Appendix: Bitcoin/Blockchain Background
The New Economy…
October 1, 2014 [Link]
34
Blockchain Technology
Cryptocurrency Market Cap Tracking
October 1, 2014 [Link]
35
Blockchain Technology
What is Bitcoin?
Digital currency, payments system, decentralized ledger
History: by combining BitTorrent technology (peer-to-
peer file sharing) and public key cryptography a new
form of currency was made possible
Arose as a solution to the double-spend problem
Prior to bitcoin and the blockchain concept, a centralized third
party had to issue and reconcile digital cash transactions to
prevent the digital cash from being spent multiple times (digital
cash, like an image attached to an email, can be copied infinite
times like any digital cash)
Implication: any transaction on the Web can be
decentralized and stripped of a controlling authority
October 1, 2014 [Link] [Link]
[Link] 36
Blockchain Technology
What is the blockchain?
A ledger of all transactions owned and monitored by
everyone and controlled by none
Like a giant interactive spreadsheet everyone has access to and
updates to confirm that each digital credit is unique
Literally blocks (of transactions) in a chain, a sequential
ledger of bitcoin transactions
What is a Digital Wallet? (it is not a wallet) Stores keys
Bitcoin's public ledger (the blockchain) was started on
January 3rd, 2009 at 18:15 UTC by Satoshi Nakamoto
First block is known as the genesis block
First transaction recorded in the first block was a single
transaction paying the reward of 50 new bitcoins to its creator
October 1, 2014 Source: Wood, Gavin. Ethereum: A Secure Decentralized Generalized Transaction Ledger: Proof of
Concept VI. [Link] 37
Blockchain Technology
What is the blockchain?
A concept
A transaction database
A decentralized public ledger
A technology layer protocol like TCP/IP
An information technology
An asset administration tool
Application areas
Finance and economics: payments, asset exchange
Exchange of all assets (physical and intangible)
A registry, inventory, listing of all the world’s stuff
October 1, 2014
38
Blockchain Technology
Economic Arguments for Bitcoin
Banking services market: 5 billion
individuals worldwide without
access to banking, financial, credit
services
Remittances market: $4T global
market 5-30% transaction fee,
immediate funds transfer
Payments market: 1-3% merchant
transaction fee
Successful examples indicate
demand for digital payments:
Starbucks mobile payment app
October 1, 2014
39
Blockchain Technology
What is Bitcoin Mining?
The process of adding transaction records to Bitcoin’s public
ledger of past transactions (the blockchain)
Confirms to the rest of the network that unique transactions
have taken place
Bitcoin nodes use the block chain to distinguish legitimate
Bitcoin transactions from attempts to re-spend coins that
have already been spent elsewhere
Intentionally designed to be resource-intensive so that the
number of blocks found each day by miners remains steady
Individual blocks must contain a proof of work to be
considered valid. This proof of work is verified by other
Bitcoin nodes each time they receive a block. Bitcoin uses
the hashcash proof-of-work function
October 1, 2014 [Link]
40
Blockchain Technology